log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-5p %d [%F,%L] - %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=F:\\SSH.log
#log4j.appender.file.MaxFileSize=100000KB
#log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p %d [%F,%L] - %m%n
下面是類(lèi)文件
package com.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import com.service.LoginService;
import com.vo.LoginVO;
public class LoginAction extends DispatchAction {
private Log logger = LogFactory.getLog(LoginAction.class);
private LoginService loginService;
public void setLoginService(LoginService loginService) {
this.loginService = loginService;
}
public ActionForward login(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) {
try {
LoginVO loginVO = (LoginVO) form;
String username = loginVO.getUsername();
String password = loginVO.getPassword();
System.out.println(username+password);
if(loginService.validate(username, password)) {
return mapping.findForward("index");
}
return mapping.findForward("error");
} catch (Exception e) {
logger.error(e);
return mapping.findForward("error");
}
}
public ActionForward save(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) {
try {
LoginVO loginVO = (LoginVO) form;
loginService.saveUser(loginVO);
return mapping.findForward("index");
} catch (Exception e) {
logger.error(e);
return mapping.findForward("error");
}
}
}
package com.dao;
import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.po.LoginPO;
public class LoginDao extends HibernateDaoSupport {
@SuppressWarnings("unchecked")
public String getPassword(String username) {
String hql = "from LoginPO l where l.username=?";
List list = getSession().createQuery(hql).setString(0,username).list();
if(list!=null && list.size()>0) {
LoginPO loginPO = (LoginPO) list.get(0);
return loginPO.getPassword();
}
return null;
}
public void save(LoginPO loginPO) {
getSession().save(loginPO);
}
}
package com.po;
import java.io.Serializable;
public class LoginPO implements Serializable {
private static final long serialVersionUID = 1L;
private Integer id = null;
private String username = null;
private String password = null;
public Integer getId() {
return id;
}
public String getPassword() {
return password;
}
public String getUsername() {
return username;
}
public void setId(Integer id) {
this.id = id;
}
public void setPassword(String password) {
this.password = password;
}
public void setUsername(String username) {
this.username = username;
}
}
package com.service;
import com.dao.LoginDao;
import com.po.LoginPO;
import com.vo.LoginVO;
public class LoginService {
private LoginDao loginDao;
public void setLoginDao(LoginDao loginDao) {
this.loginDao = loginDao;
}
public boolean validate(String username,String password) {
String pass = loginDao.getPassword(username);
if(pass!=null) {
if(pass.equals(password)) {
return true;
}
}
return false;
}
public void saveUser(LoginVO loginVO) {
LoginPO loginPO = new LoginPO();
loginPO.setUsername(loginVO.getUsername());
loginPO.setPassword(loginVO.getPassword());
System.out.println(loginVO.getUsername()+"-"+loginVO.getPassword()+":save succeed...");
loginDao.save(loginPO);
//故意制造異常,測(cè)試事務(wù)。
//loginDao.save(null);
}
}
package com.vo;
import org.apache.struts.action.ActionForm;
public class LoginVO extends ActionForm {
private static final long serialVersionUID = 1L;
private String username = null;
private String password = null;
public String getPassword() {
return password;
}
public String getUsername() {
return username;
}
public void setPassword(String password) {
this.password = password;
}
public void setUsername(String username) {
this.username = username;
}
}