Myblog02-基于ssm,springboot的改进

news2024/11/29 2:33:55

目录

一、项目概述:

应用技术:

接口实现:

数据库建表,sql脚本:

页面展示:登陆页面

项目源码:myblog01: 初版的个人博客项目-使用基本的javaWeb (gitee.com)

二、对博客系统进行测试

总结


一、项目概述:

个人博客系统是一个类似CSDN的博客分享平台,可以实现用户注册和登录,个人博客的编写、发布,个人信息的修改等操作。前端主要分为四个界面:登录页,列表页,博客详情页,写博客页面,其后端后端实现了登录,编写博客,删除博客,注销博客功能。

应用技术:

Cookie和Session会话、CSS、Servlet、MySQL、JS、HTML、基本的javaWeb,springboot,ssm,lombok,uuid,雪花算法等

接口实现:

        用户表:用户id,用户名username,密码password;一对一关系

        博客表:博客id,标题title,内容context,发布时间createtime,外键用户id,一对多关系

数据库定义:

        create database Myblog02 character set utf8mb4 collate utf8mb4_general_ci;

数据库建表,sql脚本:
drop database if exists Myblog02;
create database Myblog02 charset utf8;

use Myblog02;

create table userinfo(
uid int primary key auto_increment,
username varchar (250) not null ,
loginname varchar (250) unique not null ,
password varchar (65)not null ,
sex varchar (2) default '男',
age int default 0,
address varchar (250)default '',
qq varchar (250)default '',
email varchar (250)default '',
isadmin bit default 0,
img varchar(250) null,
git varchar(250) null,
state int default 1,
createtime datetime not null default now(),
updatetime datetime not null default now()
)default charset='utf8mb4';

 insert into userinfo(username,loginname,password,isadmin)
 values('super管理员','zdm','ba0a7f8ae4c44d84a7b4fbbd11d66d8d$1ad0e858c4a635b6627e19ea6daa02df',1);

 create table article(
    aid int primary key auto_increment,
    title varchar(250) not null,
    context longtext not null,
    createtime datetime default now(),
    updatetime datetime default now(),
    readcount int default 1,
    uid int not null,
    state int default 1 comment '1=已发布|0=未发布'
);

博客表数据库相关操作:
1. 获取所有博客列表
2. 根据博客Id获取博客详情
3. 插⼊博客
4. 删除博客
5. 根据id查询user信息
6. 根据name查询user信息
......

添加项⽬公共模块
实体层(model) => 实体类
控制器层(controller) =>控制器
服务层(service) => 服务类
持久层(mapper) => mapper
⼯具层(common) => 统⼀返回类, 统⼀异常处理类
        加密MD5
 

页面展示:登陆页面

用户名:zdm

密码:12345678 

博客登录界面:

博客列表页:

博客详情页:

写博客页:

项目源码:myblog01: 初版的个人博客项目-使用基本的javaWeb (gitee.com)

二、对博客系统进行测试

测试环境
操作系统:Windows 11 专业版

项目运行:IDEA2022.2.3、maven、JDK1.8

浏览器:Chorme、FireFox,Edge

网络:

        127.0.0.1:8080

        39.106.76.30:8080/blog_login.html

测试技术: 主要采用自动化测试以及手工测试

项目名称:Myblog

开发时间
        2023年8月--2023年9月

风险:
        项目上线风险:无风险
 


总结

使用springboot与前端技术对于博客项目的改善,可以向着社群方向,分布式方向继续改善

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1286335.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深入分析爬虫中time.sleep和Request的并发影响

背景介绍 在编写Python爬虫程序时,我们经常会遇到需要控制爬取速度以及处理并发请求的情况。本文将深入探讨Python爬虫中使用time.sleep()和请求对象时可能出现的并发影响,并提供解决方案。 time.sleep()介绍 首先,让我们来了解一下time.s…

【发布小程序配置服务器域名,不配置发布之后访问就会报错request:fail url not in domain list】

小程序在本地开发的时候大家通常会在微信开发者工具中设置“不校验合法域名、web-view (业务域名)、TLS 版本以及HTTPS证书”,久而久之可能会忘掉这个操作,然后打包直接上线发布,结果发现访问会报错request:fail url not in domain list&…

CETN03 - The Evolution of Computers

文章目录 I. IntroductionII. First Modern Digital Computer: ENIAC (1946)III. First Generation ComputerIV. Second Generation ComputerV. Third Generation ComputerVI. Fourth Generation ComputerVII. ConclusionI. 引言II. 第一台现代数字计算机:ENIAC&…

自定义 el-select 和 el-input 样式

文章目录 需求分析el-select 样式el-input 样式el-table 样式 需求 自定义 选择框的下拉框的样式和输入框 分析 el-select 样式 .select_box{// 默认placeholder:deep .el-input__inner::placeholder {font-size: 14px;font-weight: 500;color: #3E534F;}// 默认框状态样式更…

C++ 12.5作业

以下是一个简单的比喻,将多态概念与生活中的实际情况相联系: 比喻:动物园的讲解员和动物表演 想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有一位讲解员&…

库函数qsort的使用及利用冒泡排序模拟实现qsort

文章目录 🚀前言🚀void*类型指针🚀库函数qsort的使用🚀利用冒泡排序实现库函数qsort() 🚀前言 今天阿辉将为大家介绍库函数qsort的使用,还包括利用冒泡排序模拟实现qsort以及void*类型的指针,关…

云祺副本容灾机制讲解

副本,顾名思义就是一份数据的拷贝。 在系统中,将数据的目的分为了三种:备份、副本和归档。 其中备份数据,通常是存放在备份系统本地,或数据中心本地;副本数据通过是存放在异地的备份系统中,或…

【C语言】【堆排序实现TOPK问题】写一个堆排序,并且在一百万个数中找出最大的前K个

1.堆排序的实现: 如果要升序输出,则实现大堆 如果要降序输出,则实现小堆 逻辑:(升序输出) 将堆顶的元素和最后一个元素交换位置,此时左子树和右子树分别仍是大堆的顺序,交换位置后…

车企数据治理实践案例,实现数据生产、消费的闭环链路 | 数字化标杆

随着业务飞速发展,某汽车制造企业业务系统数量、复杂度和数据量都在呈几何级数的上涨,这就对于企业IT能力和IT架构模式的要求越来越高。加之企业大力发展数字化营销、新能源车等业务,希望通过持续优化客户体验,创造可持续发展的数…

leetcode:统计感冒序列的数目【数学题:组合数含逆元模版】

1. 题目截图 2.题目分析 需要把其分为多个段进行填充 长为k的段,从两端往中间填充的方案数有2 ** (k - 1)种 组合数就是选哪几个数填哪几个段即可 3.组合数含逆元模版 MOD 1_000_000_007 MX 100_000# 组合数模板 fac [0] * MX fac[0] 1 for i in range(1, MX…

一个完整的转录组分析流程

本期的教程代码(部分) #!/bin/bash # # 使用fastq-dump解压sra数据 # 本数据集为双端数据 # 解压格式为fq.gz for i in SRR6929571 SRR6929572 SRR6929573 SRR6929574 SRR6929577 SRR6929578; do pfastq-dump --split-files --threads 20 --gzip -s 00_…

综合指南:如何创建有效的知识地图?

知识地图是知识管理中的重要工具,使企业能够有效地利用其资产。它促进了解决问题、新人整合和组织学习。此外,它还提高了生产力,实现了数据驱动的决策,并优化了流程。通过捕获和组织有价值的知识资产,它确保了专业知识…

如何通过nvm安装多版本nodejs?如果nodejs安装成功,但npm安装失败怎么办?

我们在开发项目的时候,最开始,是只有一个老的项目,老项目单独安装了node版本4.4.7,后来有了新项目,由于有两个项目,但是一个需要老一些版本的node,一个需要新版本的node,因此需要在两…

签名应用APP分发平台的微服务化部署是什么?其有哪些优势?

在信息技术的世界里,软件开发和部署的模式不断演进。从单体架构到服务化,再到今日备受瞩目的微服务架构。微服务化部署作为一种新兴的软件架构风格,正被越来越多的企业采用。它使得应用可以被分解成一套相互独立的最小服务单元。而“分发平台…

数据结构与算法编程题39

数组A[]中有 n 个整数,没有次序,数组从下标1开始存储,请写出顺序查找任一元素k的算法 ,若查找成功,则返回元素在数组中的位置;若查找不成功,则返回 0。 /*数组A[]中有 n 个整数,没有…

Citrix 退出中国市场!华为云以三大优势继续称霸桌面云江湖

文 | 智能相对论 作者 | 沈浪 又一家美国科技企业败走中国市场! 前不久,美国虚拟化巨头思杰系统(Citrix System)公司发布公告,“已决定停止在中国市场(包括香港地区和澳门地区)的所有新的商业…

JS小技巧,如何去重对象数组?

关于数组对象去重的业务场景,想必大家都遇到过类似的需求吧,这对这样的需求你是怎么做的呢。下面我就先和大家分享下如果是基于对象的1个属性是怎么去重实现的。 方法一:使用 .filter() 和 .findIndex() 相结合的方法 使用 Array.prototype.…

友菜友饭携手分众传媒,打造私厨到家生活新风尚

友菜友饭携手分众传媒 11月29日,友菜友饭与分众传媒签署战略合作协议,在全国重点城市全面引爆品牌力,携手打造全国领先的互联网数字化私厨平台,为中国5亿城市家庭解锁私厨到家服务新体验。 友菜友饭是全国领先的私厨到家平台&…

uniapp到底用什么ui框架最合适-关于uni-app的ui库、ui框架、ui组件

文章目录 直接看答案关于uni-app的ui库、ui框架、ui组件组件的概念扩展组件的选择uni ui如何使用uni ui 综上,官方对组件的使用建议是:附录:其他全端兼容ui库参考文章: 直接看答案 如果想自己纯手写,直接用内置组件。…

客户案例:SMC2威胁感知升级,保障金融行业邮件安全

客户背景 某基金公司是一家在业界享有广泛声誉的综合型资产管理公司,总部位于广州,在北京、上海、香港等地区均设有公司,业务范围遍布全球,凭借其卓越的投资业绩和专业的基金管理服务,赢得了广大投资者的高度认可。 该…