如何让用户一定要通过登陆才能访问该页,直接通过url访问提示出错信息?

otstar 2001-07-27 09:40:40
有什么好的思路吗?

...全文
86 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
misty_f 2001-07-27
你们做过URL的加密吗?
回复
otstar 2001-07-27
有没有用javabean技术的方法?
回复
nicolas 2001-07-27
将登录jsp的用户名与密码提交给一个servlet,该servlet初始化session变量:
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
import java.util.*;
import java.lang.*;

public class Loginservlet extends HttpServlet
{
public void doPost(HttpServletRequest req,
HttpServletResponse resp)
throws ServletException,java.io.IOException
{
//declare local variable
PrintWriter out;
String strUserName,strPWD;
String strDBDriver,strURL;
String strSQL,strTemp;
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
HttpSession session;

session=req.getSession();
out = resp.getWriter();

//get parameters
strUserName=req.getParameter("username");
strPWD=req.getParameter("password");

//set database connection parameter value
String strDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
String strURL="jdbc:odbc:wygl";

if(strUserName!=null || strUserName.compareTo("")!=0){
//resp.sendRedirect("/wygl/jsp/relogin.jsp");
//}else{

//instance session variable:
session.putValue("login_name","");
session.putValue("logined","false");
//connect database
try{
Class.forName(strDBDriver);
}catch(java.lang.ClassNotFoundException e){
System.err.println("error:"+e.getMessage());
}

try{
conn=DriverManager.getConnection(strURL);
stmt=conn.createStatement();
}catch(SQLException e){
System.out.println("error:"+e.getMessage());
}


strSQL="select * from sys_user where login_name='"+strUserName+"' and user_pwd='"+strPWD+"'";
try{
rs=stmt.executeQuery(strSQL);
if(rs.next()){
session.putValue("login_name",strUserName);

session.putValue("logined","true");

strTemp=rs.getString("user_name");
session.putValue("user_name",strTemp);


}catch(SQLException e){
System.err.println("error:"+e.getMessage());
}

//close database connection
try{
rs.close();
stmt.close();
conn.close();
}catch(Exception e){
System.err.println("close():"+e.getMessage());
}
}else{
resp.sendRedirect("/wygl/jsp/errorindex.jsp");
}
}
}

在后面每调用一个jsp文件,就可以include一个验证文件,该验证文件其实就是取logined
session变量值,如果值为'false',则就把它sendRedirect向一个提示有登录失败的页面。
回复
haodou 2001-07-27
在login.jsp登陆成功后
session.putValue("login","ok");

在其他页
if(!((String)session.getValue("login")).equals("ok"))
response.sendRedirect("login.jsp");//将用户带到登陆页
回复
otstar 2001-07-27
具体通过什么技术啊?
回复
microrain 2001-07-27
每一个页都加一个权限验证就行了
回复
kangaroo 2001-07-27
对啊,我也想知道怎样做URL的加密?
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2001-07-27 09:40
社区公告
暂无公告