写在前面
在学习完了SSM框架后,想着写个案例来巩固一下,正好之前自己写的APP需要一个后台管理系统,于是就写了一个练练手。
github地址:https://github.com/wushenjiang/TDTreeHoleWeb
效果截图
配置SSM框架
要做SSM,首先要配置SSM框架的环境。详细请见上一篇博客:https://www.cnblogs.com/wushenjiang/p/12828812.html
这里我再做进一步的解耦,将数据库配置和mybatis配置都独立出来,如下:
数据库配置文件就不上了,这里发一下mybatis的全局配置:
主要是在这里设置了对应的包,要求我们的映射文件要和类在同一级package下。
模块分工和思路
主要有三大模块:用户模块,发帖模块,回帖模块。依次讲解各个模块:
用户模块细分为查看用户和用户详情(可以查看用户发帖和回帖),具体实现思路很简单,就是把以前用servlet的东西都交给SpringMVC去做,设置一个方法和对应的注解即可。service和dao都交给Spring来管理。
发帖模块细分为查看所有帖子和帖子详情(可以看帖子下有什么回复)。
回帖模块只有查看所有回帖。
踩坑记录
1.首先就是Mybatis的设置了。一直设置不好映射文件和接口的自动映射,后来发现maven工程默认不会扫描除resources下的xml,我们要在pom.xml手动设置一下:
src/main/java
**/*.properties
**/*.xml
false
2.再来就是sql注入问题。由于要写一个模糊查询,如果用字符串拼接必然会导致sql注入问题。这里用了mysql的自带函数concat,连接字符串的函数。sql语句如下示例:
select * from post where title like concat('%',#{title},'%');
总结
经过这次开发,可以体会到SSM框架带来的诸多好处。就是初期的配置略繁琐,但配置好后写代码的速度和运行效率都大大提高了。以后会做更多的开发的