一、开发社区首页
二、从DAO组件开始,开发数据访问层
1.在comment数据库下创建表discuss_post(帖子表)
content:帖子内容,比较多,因此设置为文本类型
type:0表示普通帖子,1表示置顶帖子
status:0表示帖子为正常帖子,1表示帖子为精华帖子,2表示帖子被拉黑
create_time:帖子发布时间0
comment_count:帖子的评论数量
score:按照帖子的热度,给帖子排名
2.在entity包下创建实体类DiscussPost来封装discuss_post(帖子表)的数据
3.在dao包下开发数据访问组件DiscussPostMapper(通常一张表对应一个Mapper接口)
@Mapper
4.在资源文件的mapper包下创建Mapper映射器discusspost-mapper.xml
5.在test包下的MapperTests测试类中测试DiscussPostMapper中的方法
三、然后开发service层,创建业务层组件
1.在service包下创建DiscussPostService类
加@service注解
需要注入数据访问组件DiscussPostMapper
2.实体类DiscussPost返回给页面的是帖子和用户名称,实体类DiscussPost有关联外键userId,可以根据DiscussPost中的userId查找到username,在service包下创建UserService类来完成。
四、开发Controller层,创建表现层组件
1.引入静态页面css,img,js,放到static包下
引入动态页面index.html首页,以及site包下的其它页面,以及mail包邮件模板,放到templates包下
2.创建表现层组件,在controller包下创建HomeController类
加@Controller注解
注入DiscussPostService组件,注入UserService组件
3.处理templates包下的index.html模板
(搜索所有文件ctrl+shift+n)
(1)指定模板引擎thymeleaf
(2)所有的相对路径的资源都用thymeleaf来寻找
(3)尾部不用动,都一样,头部暂时不处理
(4)修改内容,标签暂时不管,弹出框和提示框也先不需要处理
(5)需要处理帖子列表,将静态改为动态,留下一个li,进行循环动态处理。
以li为模板,对数据进行遍历输出。
4.启动服务,打开浏览器访问首页index
目前只显示前10条数据
5.在entity包下创建一个page类,封装分页相关的信息
可以利用该对象,让服务端接收页面传入的信息
6.将page作为参数传递给访问首页的方法getIndexPage
7.修改社区首页index.html的分页标签
8.重新启动服务,打开浏览器访问首页index