问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

跳过登陆页面直接访问该jsp文件了,这样不好,请问大家如何避免这种问题...

发布网友 发布时间:2024-10-03 04:17

我来回答

5个回答

热心网友 时间:2024-10-03 09:47

用session。 一般用户登陆信息都存在session中。
我给2中解决方式
(1)如果需要登陆验证才能访问的页面少的话可以通过include文件方式。
把下面代码保存文件名字为checksession.jsp
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<%
if(session.getAttribute("userinfo")==null){
//用户没有登陆
response.sendRedirect("/login.jsp");
}
%>
//把需要登陆才能访问的页面中包含这个文件。
(2)如果需要登陆验证的页面多的话建议采用filter.
package com.filter;
import java.io.IOException;
import javax.servlet.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;
/*
*TestFilter 在web.xml中配置说明
*
*<filter>
* <filter-name>TestFilter</filter-name>
* <filter-class>com.filter.TestFilter</filter-class>
* </filter>
*配置需要经过login.jsp登陆过才能访问的区域
*目前配置方式仅仅是在用户访问product.jsp的时候才走过滤器,可以配置/*,/user/*等。
* <filter-mapping>
* <filter-name>TestFilter</filter-name>
* <url-pattern>/product.jsp</url-pattern>
* </filter-mapping>
* 韩卫召
*/
public class TestFilter implements Filter {

public void destroy() {
//过滤器销毁,一般是释放资源
}
/**
* 韩卫召
* 某些url需要登陆才能访问(session验证过滤器)
*/
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
HttpServletRequest request=(HttpServletRequest)arg0;
HttpServletResponse response=(HttpServletResponse)arg1;
HttpSession session=request.getSession();
//userinfo,需要通过login.jsp 登陆后向session中写入用户信息,标示用户已经登陆
if(session.getAttribute("userinfo")==null){
String errors = "请先登陆,再访问此服务!";
request.setAttribute("errors", errors);
request.getRequestDispatcher("/login.jsp").forward(request, response);
}else{
arg2.doFilter(request, response);
}
}
public void init(FilterConfig arg0) throws ServletException {
//初始化操作,读取web.xml中过滤器配置的初始化参数,满足你提的要求不用此方法
}
}

热心网友 时间:2024-10-03 09:49

验证COOKIE 空或不存在 跳到登陆页面

热心网友 时间:2024-10-03 09:44

在所有需要登录才能看到的页面中加入验证

验证方法:用户登陆成功后在session中保存一个变量(例如username),用来保存用户的信息,然后在每个页面通过request.getAttribute方法获取这个参数,然后判断是否为空(null),不为空则合法可以访问,如果为空,则自动跳转到登陆页面
可以把验证的部分单独写一个jsp文件,然后在需要验证的文件中include,这样子比较方便修改,可以减少很多麻烦

热心网友 时间:2024-10-03 09:45

增加过滤器,当请求一个URL的时候先经过过滤器过滤,判断权限

热心网友 时间:2024-10-03 09:51

增加权限控制机制,在成功登录后将权限信息存放到Session中,每访问一个地址(登录页面除外),都验证下权限。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
体育运动员谁最有钱? 曲轴箱通风管漏气 有什么现象 曲轴箱强制通风管漏气? 曲轴箱(曲轴箱通风管坏了有什么影响) 100分求CS PING的问题 枇杷有什么作用与功效与作用 枇杷的功效和作用 三星手机大全5660三星手机大全所有型号图片 三星s5660能用动感地带152号段的卡上wlan吗? 我的三星S5660插移动卡就会显示只能进行紧急呼叫,用联通卡没问题,把卡... ...怎样点击 退出登录,就在 本页 把session值清空了啊?(jsp页面)_百 ... 江西到凤凰古城旅游攻略,江西秋天旅游推荐 淄博张店哪个初中最好?学校对初中生是实行划片招生吗? 淄博七中现在有多少个教学班? 淄博七中现在有哪些荣誉和教学成果? 关于Session.Abandon的问题? session对象是怎么消失的? asp 清楚session问题 ...年在哪举办?A.1920,比利时安特卫普 B.1924,法国夏蒙尼 C.1932... ...专政是在哪一年 [ ] A、1933年 B、1929年 C、1934年 D、1932... XQB30-1932A电脑板失灵怎么会事? 求助电脑总是出现“0x00a1932e”指令引用“0x000000"内存。该内存不能... 苹果笔记本电脑a1932参数有哪些 ...用了布地奈德福莫特罗粉吸入剂又没事了。我在 jsp中怎么一次性清除session 中的所有属性 布地奈德粉吸入剂长期吸可以吗 ...死人的腿上?有人说是阿魏,有人说血灵芝?!它到是什么??价_百度... ...去山上玩采到一株灵芝,问了一个专家说这是血灵芝,市场价是200万一公... ...上的礼仪小姐 要做什么准备 有什么要求 求有经验的前辈解答_百度知 ... ...招聘礼仪小姐的兼职 我身高175 没有接受过什么训练 想要半工半读... ...web登录界面,login.jsp里面进行登录,loginservlet进行登录处理,然后... jap论坛中【退出】的代码是什么!! ...成功!但是在次界面在登录,始终登录不成功?求 ...要具体点的代码,我用session做了,但总是不好用!!谢谢!!!_百度... jsp 的超链接问题,请jsp高手指导指导吧 每抽⒈支湮 对身体有多大的危害? 吸二手烟会障碍学佛人吗 ...用浏览器打开却提示session会话错误,是因为什么?求大神帮忙在线等... JSP程序中session语句出错,session.setAttribute("userid",ID);这... 蛋白质遇浓硝酸变黄需要加热吗? 在杭州的朋友,可以推荐个好玩的地方和美食,最好能有图片或视频?_百度... 杭州的朋友们 你们那天气怎么样呢? 杭州的朋友平时都是去哪里参加户外旅游的~ 请教杭州的朋友~ 从火车站怎么坐车到钱江经济开发区?打车大概多少钱~谢 ... 有没有熟悉杭州的朋友?杭州有哪些好吃好玩的地方还有特产?越详细越好... 为什么jsp中使用session.getAttribute()出错 ...想知道营口长途客运站在哪里?从营口到盘锦的客车多吗?多少_百度知 ... 四川到大庆乘火车 从黑龙江省大庆市银浪火车站坐到辽宁省营口市鲅鱼圈区火车票卧铺多少钱... "相"字开头的成语