SSM强化学习:从零到部署
本次是一次对SSM高级整合的练手,主要加强基本使用SSM做增删改查操作。项目内容是对员工数据的增删改查,其中删除有批量删除和单个删除。
在项目开始之前先建两张表分别为员工表Employee和部门表dept:
一、基础环境的搭建
1、创建一个maven工程
2、引入项目依赖的jar包
二、引入bootstrap前端框架
为了快速搭建前端页面,使用了bootstrap框架。在WEB-INF下新建一个static文件夹存放bootstrap和js。
三、编写SSM整合的关键配置文件
1、首先是web.xml
需要注意的是使用rest风格uri时需要添加一个拦截PUT的拦截器,具体实现看HttpPutFormContentFilter这个类。
2、spring核心配置文件
该文件需放在resource下
主要是对事务和mybatis整合的配置,其中:
只是用来批量生成数据的sqlseesion。在整合完成且逆向生成文件后,测试其实现方式如下:
3、配置mybatis文件
文件位置与spring配置文件位置一致
4、SpringMVC文件的配置
该文件放在WEB_IN目录下
以上就是对SSM的一个初步整合,要对员工数据进行增删改查还得需要使用mybatis的逆向工程生成对应的bean以 及mapper。
四、mybatis的逆向工程
可去mybatis官网看下相关文档,根据需要配置。
运行配置文件,官方提供了java文件运行和maven运行两种方式,这里采用java方式,在test包下新建一个类,点开Running MyBatis Generator选项,选择java运行模版如下:
右键运行就会生成对于javabean和xml等文件。
五、用传统的方式做一个简单的查询
具体实现过程:
1、访问index.jsp页面
项目运行进入首页
2、index.jsp页面发送出查询员工列表请求
在inde.jsp页面做一个跳转:
3、EmployeeController来接受请求,查出员工数据
简单写一个控制器:
因为要做分页处理,还得引入PageHelper相关依赖,并进行配置。依赖
并在mybatis配置文件做一个配置。(已配置)
4、来到list.jsp页面进行展示
在WEB_INF下新建一个views文件再里面建一个list.jsp文件:
5、pageHelper分页插件完成分页查询功能
六、利用ajax来请求数据渲染前端页面
前面使用传统的渲染页面,不但效率差,还对服务器性能有影响,并且这种方式只能在浏览器实现,终端耦合高,而使用ajax来请求数据的话就相对来说没有以上的缺点或者影响更小。主要实现过程如下(以查询员工为例):
•1、index.jsp页面直接发送ajax请求进行员工分页数据的查询
2、服务器将查出的数据,以json字符串的形式返回给浏览器
要服务器能json的方式返回数据,还要引入json包
java实现:
3、浏览器收到js字符串。可以使用js对json进行解析,使用js通过 dom增删改改变页面。
进而实现了实现客户端的无关性。
七、数据校验
在添加员工和修改员工时为了更好的交互体验和防止数据臃肿,必须对提交数据进行校验。
1、前端校验
利用正则表达式对提交数据校验,方法如下:
2、后端校验
当有人改了前端判断依据时,前端校验规则就会失效,此时就需要后端对数据重复校验。引入校验依赖
并在SpringMVC配置文件做好相关配置。在Employee.java对相关需要校验的字段进行注解校验:
在控制器中写一个校验接口:
其对应的service实现类中的方法:
如果在数据库对数据再加一层校验的话就更加完整了。比如非null判断和字符串个数及字符串格式的判断
八、生成war包部署Tomcat
完成项目后,就是部署项目项目。操作如下:
成功后就会看到war包:
复杂粘贴到tomcat的webapp目录下启动,就会生成对应的目录。
打开目录会发现maven已经把所有需要的依赖都打包好了。
然后也可以访问到该服务器,此时已经不是镜像服务器了,而是实际服务器了。
九、总结
本次学习过程让我觉得对Spring实现原理的理解非常重要,SSM最让新手畏惧就是其繁琐的配置,在本次学习过程出现错误最多都是跟配置文件配置有关,且如果对SSM它的实现过程没有一个比较清晰的理解的话,即使出现错误也不能找出原因。做数据处理的时候也经常出错,这个原因是因为对jquery还不够熟悉,因此接下来对juquery和javascript的学习也是尤为重要。
领取专属 10元无门槛券
私享最新 技术干货