日期:2014-05-17  浏览次数:20713 次

Java SSH 框架下开发,遇到两大问题。
本人用SSH框架开发一个网站。遇到两个问题。
1.我的网头部跟底部还有右边的内容。大部分都是相同的。在JSP里面已经提取出来
(例如:<%@ include file="bottom.jsp" %>)。在Action里面要如何把相同的内容提取出来。

2.我有两个登录界面。一个是前台用户登录,一个是后台管理员登录,该如何做才能验证用户是否登录。

public class ValidateFilter extends HttpServlet implements Filter {

       public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOExceptionServletException {
// TODO Auto-generated method stub
HttpServletRequest request = (HttpServletRequest)arg0;
HttpServletResponse response = (HttpServletResponse)arg1;
//验证用户是否登录
if(null == request.getSession().getAttribute("sysUser")){
response.sendRedirect("/web/web/account/login.jsp");
}
if(null == request.getSession().getAttribute("sysAdmin")){
response.sendRedirect("/web/backstage/login.jsp");
}


arg2.doFilter(arg0, arg1);
}

注释掉的是后台的验证。

web.xml下的内容
  <filter-mapping>
    <filter-name>ValidateFilter</filter-name>
    <url-pattern>/web/user/*</url-pattern>
    <url-pattern>/backstage/admin/*</url-pattern>
    
  </filter-mapping>

只有一个的情况下是正常转到登录界面的,两个一起就不行了。
Java SSH 面向对象 框架 登录

------解决方案--------------------
sysUser和sysAdmin,不管你登录那个应该有一个为空吧,你调试一下看看。你写两个过滤器还好。
------解决方案--------------------


等你搞完这个可以试下用security来控制权限,不再是自己手动控制,那个重用度太低了,,来我博客看那个置顶文章
------解决方案--------------------
如果 头部和 脚部 访问数据量不大的话 一次加载后 放在缓存里面 后面每次访问 直接在缓存读取···吧··
------解决方案--------------------
修改了头部或底部的数据 可以 直接修改缓存的 缓存管理jar 网上多的是 像 ehcache 或memcache 都行···