当前位置:   article > 正文

个人博客中心项目总结

博客中心

一、项目功能

  该项目主要的功能有用户注册,登录,发表文章,查看文章,注销功能。用户登录后可进入首页,首页展示了用户相关信息,以及文章列表。此时可以进入文章详情页查看文章。登录后,还可以进入文章编辑页发表文章。

二、开发环境

  开发工具: IDEA社区版2021.2.2,jdk1.8
  数据库:MySQL Workbench 8.0 CE

三、所用技术

  Servlet,JDBC,Thymeleaf模板技术,Maven+git进行项目管理,密码采用加盐法Hash保存

四、设计思路

  1.登录/注册功能:

前端:用form表达进行提交相关信息,采用GET方法(静态资源)
  ·注册:用户名,昵称,头像地址,git地址,密码
  ·登录:用户名,密码

后端:验证资源,采用POST方法(动态资源)
  从form表单中读取信息,建立User对象,调用对应的方法去访问数据库,如果能数据库中有,能取到,就返回User对象(登录要验证密码是否正确),否则返回null。
  注册成功视为登录成功,User对象的话就保存在HttpSession中
  null的话就重新登录/注册,响应体类型为text/html格式,直接通过a标签跳转。

  2.首页/文章列表页:

  需要经过用户认证后才可以使用。通过从数据库中读取数据,使用模板技术展现用户信息以及文章列表。

  3.文章详情页:

  需要经过用户认证后才可以使用。通过首页进行跳转,从数据库中读取数据生成文章对象,用模板技术展现用户信息以及正文内容。

  4.文章发表页:

  表单页(需要认证->动态,GET):只是认证用户是否登录,用模板,将左上角图片替换
  保存博客(需要认证->动态,POST):验证用户是否登录,然后将文章保存在数据库中,并重定向到文章详情页。

  5.注销:

  将HttpSession中的当前用户删除,注销后重定向到登录页面。

五、数据库设计

建立表语句:

CREATE TABLE `users` (
  `uid` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(60) NOT NULL,
  `nickname` varchar(60) NOT NULL,
  `password` varchar(60) NOT NULL,
  `avatar` varchar(200) NOT NULL COMMENT '头像链接',
  `git` varchar(200) DEFAULT NULL COMMENT 'gitee 或者 gitbub 地址',
  PRIMARY KEY (`uid`),
  UNIQUE KEY `username_UNIQUE` (`username`)
);


CREATE TABLE `articles` (
  `aid` int(11) NOT NULL AUTO_INCREMENT,
  `uid` int(11) NOT NULL,
  `title` varchar(50) NOT NULL,
  `type` varchar(20) NOT NULL,
  `content` text NOT NULL,
  `published_at` date NOT NULL,
  PRIMARY KEY (`aid`)
);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

用户表中主要是用户的基本信息,当用户注册时,若用户名重复会让用户重新注册。
文章表中有对应的文章id,文章用户(uid),标题,类型,正文,发布时间。

六、项目展示

  1.代码逻辑:

后端代码逻辑

  2.注册页面:

注册页面

  3.登录页面:

登录页面

  4.首页:

首页

  5.文章详情页:

文章详情页

  6.文章发表页:

文章发表页

七、项目测试

关于该项目的测试:https://blog.csdn.net/weixin_43991724/article/details/122969317

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/42471
推荐阅读
相关标签
  

闽ICP备14008679号