&& password.length() > 0) {
cookieUser = new User();
cookieUser.setEmail(email);
cookieUser.setPassword(password);
// System.out.println("email=" + cookieUser.getEmail());
// System.out.println("password="
// + cookieUser.getPassword());
IUserService userService = PicoContainer.PICO
.getComponent(IUserService.class);
cookieUser = userService.validLogin(cookieUser);
if (cookieUser != null) {
// 将该user放入到session中
request.getSession().setAttribute(
CommonConstants.SESSION_USER, cookieUser);
} else {
chain.doFilter(request, response);
}
} else {
chain.doFilter(request, response);
}
} else {
chain.doFilter(request, response);
}
} else {
chain.doFilter(request, response);
}
} else {
chain.doFilter(request, response);
}
}
}
3.web.xml配置cookie登录过滤器
Xml代码
4.用户登录时
Java代码
public class LoginAction extends BaseAction {
private static final long serialVersionUID = 1L;
private String email = null;// 用户邮箱
private String password = null;// 用户密码
private boolean autoLoginStatus = false;
public boolean getAutoLoginStatus() {
return autoLoginStatus;
}
public void setAutoLoginStatus(boolean autoLoginStatus) {
this.autoLoginStatus = autoLoginStatus;
}
public void setEmail(String email) {
this.email = email;
}
public void setPassword(String password) {
this.password = password;
}
// 获取数据层示例
private IUserService userService = PicoContainer.PICO
.getComponent(IUserService.class);
@Override
public String execute() throws Exception {
try {
// 验证用户信息
String message = checkAndFilterUsersInfo();
;
User user = null;
if (message == null) {
user = new User();
user.setEmail(this.email);
user.setPassword(this.password);
user = userService.validLogin(user);
}
// 输出结果
StringBuilder msg = new StringBuilder();
msg.append("{");
if (user != null) {
super.getSession().setAttribute(CommonConstants.SESSION_USER,
user);
msg.append("msg:'success'").append(",");
msg.append("userName:'").append(user.getUserName()).append("'");
if (autoLoginStatus) {
// 根据选择状态判断是否将用户邮箱和密码信息保存在客户端浏览器
addCookieingU