个人博客中心项目总结

一、项目功能

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

二、开发环境

  开发工具: 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`)
);

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

六、项目展示

  1.代码逻辑:

后端代码逻辑

  2.注册页面:

注册页面

  3.登录页面:

登录页面

  4.首页:

首页

  5.文章详情页:

文章详情页

  6.文章发表页:

文章发表页

七、项目测试

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

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值