登录为例
Action的写法
public String login(){
HttpServletRequest request = ServletActionContext.getRequest();
String ztel=usualStrMethod.checkRequestStr(request, "ztel");
String zpass=usualStrMethod.checkRequestStr(request, "zpass");
String[] ss=lvActionService.loginImpl(ztel, usualStrMethod.encryptMD5(zpass),request.getRemoteAddr());
if(ss[0].equals("")){//ss[]
request.setAttribute("message","登陆失败,用户名或密码错误! 账号是手机号请检查");
return "logout2";
}else{
HttpSession session=request.getSession();
session.setAttribute("registrant_zid", ss[0]);
session.setAttribute("registrant_zname", ss[1]);
return "login2";
}
}
actionImpl的写法
//报名人员登录
@Override
/*获取账号密码和真实ip*/
public String[] loginImpl(String ztel, String encryptMD5, String remoteAddr) {
// TODO Auto-generated method stub
String[] ss={"",""};
try{
String sql = "SELECT zid, zname FROM `tb_registrant` WHERE ztel='"+ztel+"' AND zpass='"+encryptMD5+"'";
List<String[]> list = connData.findResult(sql, 2);
if(list.size()>0){
ss[0] = list.get(0)[0];
ss[1] = list.get(0)[1];
}
}catch(Exception e){
e.printStackTrace();
}
return ss;
}
前端 js的写法
var tr ="<%=session.getAttribute("registrant_zid")%>";
var zid = tr;
if(zid.length==0||zid=="null"){
showMsgBox("信息提示","登录已经失效,请去重新登陆!即将跳转到登录界面");
setTimeout(function(){window.location.href="${pageContext.request.contextPath }/bigdate/login.jsp"},2000) //定时器
}
本文详细介绍了使用Struts2框架实现登录模块的过程,包括Action的编写、service层的实现及前端JS验证逻辑。展示了如何处理用户登录请求,进行密码加密、数据库查询以及会话管理。

被折叠的 条评论
为什么被折叠?



