在JAVA WEB中,怎么控制访问JSP的权限呢,也就是所需要登陆了才能访问,否则跳到指定的页面。如果用session判断的话,不会是在每张页面上都要判断吧,那如果有很多页面的话就不现实了。请问那么大多数项目中是怎么控制这种权限的呢?
解决方案 »
- 学java的搞云计算难不难
- ssh中关于建库的问题
- frame中能使用<%@include%>命令吗?
- 求算法
- 内存不能为“read” 的问题请高手帮助
- 我在Action中用setXXX()设置了Form里一个属性的值,怎么在jsp页面中取得这个值呢?我用<bean:write name="",property="">得不到值
- 一个验证用户登录的javabean代码的问题?????
- 本人要用struts写个新闻管理系统,请各位推荐一下那里有源码?
- jsp中怎样备份oracle数据库
- 网站前段时间好好的,今天突然报错,麻烦各位帮忙看看。
- 应用连接不上本机的sql2005?
- oracle 建立个数据库
也就是所需要登陆了才能访问
这两个可不是一个东西。1:如果你要控制jsp的访问权限,那么哪些url才是可以访问的呢。[一般来说会定义在db中作为模块的属性] 在filter中得到请求路径,查看是否有权限访问,有则,没有。就跳转到相关提示页面2: 如果是只有登陆了才能访问,那就更简单了。直接访问session来进行判断。同样是用filter
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;public class FileLogins implements Filter { public void destroy() {
// TODO Auto-generated method stub } public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest httpreq = (HttpServletRequest) request;
HttpServletResponse httpresp = (HttpServletResponse) response;
//String path = ((HttpServletRequest) request).getServletPath();
int n1 = httpreq.getServletPath().indexOf("index.jsp");
if (n1 != -1)
chain.doFilter(request, response);
else {
HttpSession session = httpreq.getSession();
String username = (String) session.getAttribute("username");
if (username == null)
httpresp.sendRedirect("/FileLogin/index.jsp");
else
chain.doFilter(request, response);
} } public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub }}