Login.java
package customers;
import java.sql.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
import java.io.*;
public class Login extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
//处理HTTP的Get动作
{String Name=request.getParameter("name");
String Password=request.getParameter("password");
//读取请求中所包含的参数
HttpSession session=request.getSession(true);
//定义一个session,如果尚未建立session,此处会创建一个新的session;
如果session已建立,此处会取得这个session
int i;
char[] Temp=Password.toCharArray();
for (i=0;i<Password.length();i++) Temp[i]=(char)(Temp[i]+i+1);
Password=Password.copyValueOf(Temp);
//此处是因为我们的用户口令采取了一种简单的加密方法,可以删除
customers.DBconn DBconn1= new customers.DBconn();
ResultSet RS = DBconn1.executeQuery ("select * from x_yyxtyh where
id_swgzry='"+Name+"' and yyxtyhkl='"+Password+"'");
//执行一个SQL语句以验证用户ID及口令是否输入正确
try{
if (RS.next())
{oneUser thisUser=new oneUser();
String idSwgzry=RS.getString("id_swgzry");
String idSwjg=RS.getString("id_swjg");
String nameSwgzry=RS.getString("name_swgzry");
String sfks=RS.getString("sfks");
//接受结果集中用户相关信息
String position=new String("0");
java.util.Date dateTimenow=new java.util.Date();
long longDateTimeNow=(long)dateTimenow.getTime();
thisUser.setOneUser(idSwgzry,nameSwgzry,
longDateTimeNow,position,idSwjg,sfks);
session.putValue("thisUser",thisUser);
//将thisUser对象(当前用户)绑定到session中,标识为thisUser
ServletContext application=getServletContext();
userList theUserList;
if (application.getAttribute("userlist")==null)
theUserList=new userList();
else theUserList=(userList)application.getAttribute("userlist");
//定义application,如果application中不存在一个名为userlist的对象
(在线用户列表),
将创建这个对象;如果已存在,获取这个对象
theUserList.addUserList(idSwgzry,nameSwgzry,
longDateTimeNow,position,idSwjg,sfks);
application.setAttribute("userlist",theUserList);
//添加当前用户到在线用户列表中
getServletConfig().getServletContext()
.getRequestDispatcher("/jsp/chatroom.jsp")
.forward(request,response);
//登录成功,转向到/jsp/chatroom.jsp
}
else
getServletConfig().getServletContext()
.getRequestDispatcher("/jsp/login.jsp")
.forward(request,response);
//登录失败,返回到/jsp/login.jsp
RS.close();}
catch(SQLException ex)
{System.err.println("aq.executeQuery:"+ex.getMessage());
}
}
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
//处理HTTP的Post动作
{
doGet(request, response);
}
}
如果您对本文有任何疑问或者建议,请到讨论区发表您的意见:
>>
论坛入口 <<
上一篇:Java2下Applet数字签名具体实现方法
下一篇:JSP专题:第六部分:用JSP实现聊天室-2
【文章评论】
【收藏本文】
【推荐好友】
【打印本文】
【我要投稿】 【论坛讨论】
更多相关文章
|
|