JS+servlet实现登录功能
login.jsp引入js文件
在zm_core里面定义处理验证的方法
<script src="js/zm_core.js" type="text/javascript"></script>
用的是zm_map里面定义的对象
<script type="text/javascript" src="js/zm_map.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script type="text/javascript" src="js/MyLogin.js"></script>
Zm_map.js里面定义方法
this.login=function(funobj,params_in)
{
//调用已经在后台定义的发送ajax的方法
var optype = "Login";
var paramsInfo = params_in;
var params = "optype="+optype+"¶msInfo="+paramsInfo;
this.sendAjaxRequest(params,funobj);
}
checkLogin.js里面用ZM_map调用它的方法
function checkLogin(){
var username = document.getElementById('username').value;
var password = document.getElementById('password').value;
if (username == '') {
alert("请输入用户名!");
}
if (password == '') {
alert('密码不能为空');
}
//组合传参
var params=username+','+password;
通过引入zm_map.js文件就可以调用它的方法。然后发送ajax请求
ZM_Map.login(login_callback,params);
}
后台处理类
Ajax请求通过层层处理到达相应的后台处理类
public class Login extends AjaxAncestor {
@Override
public String execute(HttpServletRequest request,
HttpServletResponse response, Hashtable callBackData) {
//得到相应的参数组合
String paramsInfo=request.getParameter("paramsInfo");
//分开参数配合sql语句的查询
String[] userinfo=paramsInfo.split(",");
String sql="select * from tab_userinfo where id="+userinfo[0]+" and password= "+userinfo[1] ;
DataBaseAccess dbaccess=new DataBaseAccess();
Pgis_User puser =new Pgis_User();
puser.setUsername("明明");
puser.setXm("");
puser.setZwcode("");
Pgis_Zzjg pz=new Pgis_Zzjg();
puser.setZzjg(pz);
try {
ResultSet rs=dbaccess.getRs(sql);
将结果集放到相应的集合中,然后在放入session中
while(rs.next())
{
puser.setId(rs.getString("id"));
puser.setName(rs.getString("name"));
puser.setDW_CODE(rs.getString("DW_CODE"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// TODO Auto-generated method stub
return "OK";
}
}
在回调函数里面,可以通过返回的结果,判断、然后跳页面等操作
Session的值是始终不变的
function login_callback()
{
var req = this.req;
var ready = req.readyState;
if(ready == READY_STATE_COMPLETE)
{
var str=this.req.responseText;
alert(str);
if(str=='OK')
{
window.open('index.jsp','_self');
}else{
alert("用户信息错误!");
}
返回结果到回调函数中
<%
UserInfo user=(UserInfo)session.getAttribute("userinfo");
String id = user.getId();
String name = user.getName();
String DW_CODE = user.getDW_CODE();
%>
posted on 2011-07-12 12:05 zhanglei@bokeyuan 阅读(230) 评论(0) 收藏 举报
浙公网安备 33010602011771号