SSM框架搭建流程
(1)新建maven项目,启动自动导入jar包
(2)导入jar包,修改pom.xml文件,自动导入需要的jar包
(3)目录设置,在main文件下新建java和resources目录,右键Java设置为Sources Root,右键resources设置为Resources Root
(4)框架搭建,在Java文件下新建实体层、持久层、服务层、控制器层,分别进行简单实现
(5)配置文件修改,
添加applicationContext.xml文件配置数据库、扫描实体层和持久层、配置事物管理;
添加db.properties文件声明数据库的驱动、URL以及账号、密码;
添加log4j.properties控制日志信息输出;
添加spring-mvc.xml文件来扫描控制层位置,配置映射处理和适配器,设置视图的解析器;
修改web.xml文件,配置加载类路径的配置文件,配置监听器,解决中文乱码,配置前端控制器
(6)编写mapper文件,与持久层对应,实现具体的数据库交互
(7)导入前端界面
(8)进行持久层、服务层和控制器层的具体实现
(9)部署到Tomcat
(10)运行调试
登陆功能的实现
持久层新增函数
UserInfo login(UserInfo userInfo);
对应mapper文件实现
<select id="login" parameterType="com.zhongruan.bean.UserInfo" resultType="com.zhongruan.bean.UserInfo">
select * from userinfo where
username = #{username} and
password = #{password}
</select>
服务层的接口与具体实现
public boolean login(String username, String password) {
UserInfo loginInfo = new UserInfo(1, username, password);
UserInfo userInfo = userInfoDao.login(loginInfo);
if(userInfo == null){
return false;
}else{
return true;
}
}
控制器对应的实现
@RequestMapping("/login.do")
public ModelAndView login(String username, String password){
boolean flag = userInfoService.login(username, password);
ModelAndView mv = new ModelAndView();
if(flag){
mv.setViewName("main");
}else{
mv.setViewName("../failer");
}
return mv;
}
监听器&过滤器
监听器:
用于监听事件,当指定Java对象的方法调用或属性改变,监听器某个方法将被执行。
在Servlet规范中定义了多种类型的监听器,它们用于监听的事件源分别为ServletContext,HttpSession和ServletRequest这三个域对象。
Servlet规范针对三个对象的操作,又把监听器划分为三种类型:
(1)监听三个域对象创建和销毁的事件监听器
(2)监听域对象中属性的增加和删除的事件监听器
(3)监听绑定到HttpSession域中的对象状态的事件监听器
过滤器:
用于在用户访问某个目标资源之前,对访问的请求和响应进行拦截,进而可以实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能。
Servlet API中提供了一个Filter接口,Filter接口中有一个doFilter方法,当开发人员编写好Filter,并配置对Web资源进行拦截后,web服务器每次在调用web资源的service方法之前,都会调用filter的doFilter方法。
Spring Security
Spring Security是一个轻量级的安全框架,它确保基于Spring的应用程序提供身份验证和授权支持。它与Spring MVC有很好地集成,并配备了流行的安全算法实现。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反转Inversion of Control ,DI:Dependency Injection 依赖注入)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。Spring Security对Web安全性的支持大量地依赖于Servlet过滤器。这些过滤器拦截进入请求,并且在应用程序处理该请求之前进行某些安全处理。
java中 boolean 和 Boolean的区别
Boolean 类将基本类型为 boolean 的值包装在一个对象中。一个 Boolean 类的对象只包含一个类型为 boolean 的字段。此外,此类还为 boolean 和 String 的相互转换提供了很多方法,并提供了处理 boolean 时非常有用的其他一些常用方法。
boolean属于基本数据类型。