1.本博客项目主要使用Spring、SpringMVC、Mybatis等框架技术,数据库使用SQL Service 10g
项目参见
2.基本按照技术介绍中的步骤复制粘贴即可,需要一下注意事项:
1.创建项目后报错,只需要在web-app的WEB-INF下面创建一个web.xml即可。
搭建好基本架构之后,就可以开始进行详细的编写。
项目参见
1.加入布局文件后,如果报错,则是因为没有对静态资源配置,可以通过添加项目路径来引用。
<!--字体图标样式-->
<link href="¥{pageContext.request.contextPath}/static/javaex/pc/css/icomoon.css" rel="stylesheet" />
¥{pageContext.request.contextPath}表示的是项目路径
2.post解决乱码——web.xml
<!-- 字符过滤,防止post请求乱码 -->
<filter>
<filter-name>SpringCharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SpringCharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3.拦截器
首先配置拦截器
<!--拦截器 -->
<mvc:interceptors>
<!--多个拦截器,顺序执行 -->
<!-- 登陆认证拦截器 -->
<mvc:interceptor>
<mvc:mapping path="/**"/>
<bean class="cn.javaex.ssm.interceptor.QingInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
拦截器对登陆直接放行,对其他操作需要检查session,session没有数据的话跳到登陆页面。
//1.获取请求地址
String url = request.getRequestURL() ;
//2.对特殊地址直接放行
if (url.indexOf("login")>= 0 ) {
return true ;
}
//3.判断session,session存在的话,登陆后台
HttpSession session = request.getSession() ;
UserInfo userInfo = (UserInfo)session.getAttribute("userInfo") ;
if(userInfo != null){
//确认身份,放行
return true ;
}
//如果执行到这里,表示用户需要身份验证,跳转到登录界面
request.getRequestDispatcher("/WEB-INF/page/admin/login.jsp").forward(request,respone) ;
return false ;
4.退出
第一步:销毁session
第二步:返回登陆页面
//销毁session
session.invalidate() ;
return "admin/login" ;
5.