userDAO
userDAOImp
loginForm
LoginAction
暂时放这些吧
package com.ssh.dao.impl;
import java.util.List;
import com.ssh.entity.Users;
public interface UserDAO {
public abstract boolean isValidUser(String username, String password);
// property constants
public static final String USERNAME = "username";
public static final String PASSWORD = "password";
public Users findOne(Integer id);
public void save(Users user);
public void delete(Users persistentInstance);
public Users findById(java.lang.Integer id);
public List findByExample(Users instance);
public List findByProperty(String propertyName, Object value);
public List findByUsername(Object username);
public List findByPassword(Object password);
public Users merge(Users detachedInstance);
//public void attachDirty(Users instance);
// public void attachClean(Users instance)
}
userDAOImp
package com.ssh.dao.impl;
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hibernate.LockMode;
import org.springframework.context.ApplicationContext;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.ssh.entity.Users;
/**
* Data access object (DAO) for domain model class Users.
* @see com.ssh.entity.Users
* @author MyEclipse - Hibernate Tools
*/
public class UsersDAOImp extends HibernateDaoSupport implements UserDAO {
private UserDAO userDAO;
private static final Log log = LogFactory.getLog(UsersDAOImp.class);
protected void initDao() {
//do nothing
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#save(com.ssh.entity.Users)
*/
public void save(Users transientInstance) {
log.debug("saving Users instance");
try {
getHibernateTemplate().save(transientInstance);
log.debug("save successful");
} catch (RuntimeException re) {
log.error("save failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#delete(com.ssh.entity.Users)
*/
public void delete(Users persistentInstance) {
log.debug("deleting Users instance");
try {
getHibernateTemplate().delete(persistentInstance);
log.debug("delete successful");
} catch (RuntimeException re) {
log.error("delete failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#findById(java.lang.Integer)
*/
public Users findById( java.lang.Integer id) {
log.debug("getting Users instance with id: " + id);
try {
Users instance = (Users) getHibernateTemplate()
.get("com.ssh.entity.Users", id);
return instance;
} catch (RuntimeException re) {
log.error("get failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#findByExample(com.ssh.entity.Users)
*/
public List findByExample(Users instance) {
log.debug("finding Users instance by example");
try {
List results = getHibernateTemplate().findByExample(instance);
log.debug("find by example successful, result size: " + results.size());
return results;
} catch (RuntimeException re) {
log.error("find by example failed", re);
throw re;
}
}
private static String hql = "from com.ssh.entity.Users u where u.username=? and password=?";
public boolean isValidUser(String username, String password) {
String[] userlist=new String[2];
userlist[0]=username;
userlist[1]=password;
// List userList = this.getHibernateTemplate().find(hql, (Object)username);
this.getHibernateTemplate();
List userList = this.getHibernateTemplate().find(hql,userlist);
if (userList.size() > 0) {
return true;
}
return false;
}
//查询
public Users findOne(Integer id){
String queryString="from com.ssh.entity.Users as u where u.id=?";
List userList= getHibernateTemplate().find(queryString,id);
Users user=(Users)userList.get(0);
return user;
}
//保存方法
public void insert(Users user) {
this.getHibernateTemplate().save(user);
}
//删除方法
public void delete(Object obj){
this.getHibernateTemplate().delete(obj);
}
//查询方法
public List findUser(){
String queryString="from com.ssh.entity.Users u";
return getHibernateTemplate().find(queryString);
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#findByProperty(java.lang.String, java.lang.Object)
*/
public List findByProperty(String propertyName, Object value) {
log.debug("finding Users instance with property: " + propertyName
+ ", value: " + value);
try {
String queryString = "from Users as model where model."
+ propertyName + "= ?";
return getHibernateTemplate().find(queryString, value);
} catch (RuntimeException re) {
log.error("find by property name failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#findByUsername(java.lang.Object)
*/
public List findByUsername(Object username) {
return findByProperty(USERNAME, username);
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#findByPassword(java.lang.Object)
*/
public List findByPassword(Object password) {
return findByProperty(PASSWORD, password);
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#merge(com.ssh.entity.Users)
*/
public Users merge(Users detachedInstance) {
log.debug("merging Users instance");
try {
Users result = (Users) getHibernateTemplate()
.merge(detachedInstance);
log.debug("merge successful");
return result;
} catch (RuntimeException re) {
log.error("merge failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#attachDirty(com.ssh.entity.Users)
*/
public void attachDirty(Users instance) {
log.debug("attaching dirty Users instance");
try {
getHibernateTemplate().saveOrUpdate(instance);
log.debug("attach successful");
} catch (RuntimeException re) {
log.error("attach failed", re);
throw re;
}
}
/* (non-Javadoc)
* @see com.ssh.dao.impl.aa#attachClean(com.ssh.entity.Users)
*/
public void attachClean(Users instance) {
log.debug("attaching clean Users instance");
try {
getHibernateTemplate().lock(instance, LockMode.NONE);
log.debug("attach successful");
} catch (RuntimeException re) {
log.error("attach failed", re);
throw re;
}
}
// public static UserDAO getFromApplicationContext(ApplicationContext ctx) {
// return (UserDAO) ctx.getBean("UsersDAOImp");
// }
}
loginForm
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.ssh.form;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
/**
* MyEclipse Struts
* Creation date: 11-20-2007
*
* XDoclet definition:
* @struts.form name="loginForm"
*/
public class LoginForm extends ActionForm {
/*
* Generated fields
*/
/**
*
*/
private static final long serialVersionUID = 2559544931121457135L;
/** username property */
private String username;
/** userpwd property */
private String password;
/*
* Generated Methods
*/
/**
* Method validate
* @param mapping
* @param request
* @return ActionErrors
*/
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
// TODO Auto-generated method stub
return null;
}
/**
* Method reset
* @param mapping
* @param request
* 清空输入数据
*/
public void reset(ActionMapping mapping, HttpServletRequest request) {
// TODO Auto-generated method stub
username=null;
password=null;
}
/**
* Returns the username.
* @return String
*/
public String getUsername() {
return username;
}
/**
* Set the username.
* @param username The username to set
*/
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
/**
* Returns the userpwd.
* @return String
*/
}
LoginAction
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.ssh.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.ssh.dao.impl.UsersDAOImp;
import com.ssh.entity.Users;
import com.ssh.form.LoginForm;
/**
* MyEclipse Struts
* Creation date: 11-20-2007
*
* XDoclet definition:
* @struts.action path="/login" name="loginForm" input="login.jsp" scope="request" validate="true"
*/
public class LoginAction extends Action {
/*
* action与daoImp类之间是依赖注入
* daoImp与SessionFactory类之间是依赖注入
*/
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
private UsersDAOImp dao;
public UsersDAOImp getDao() {
return dao;
}
public void setDao(UsersDAOImp dao) {
this.dao = dao;
}
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
LoginForm loginForm = (LoginForm) form;
Users user=new Users();
user.setUsername(loginForm.getUsername());
user.setPassword(loginForm.getPassword());
UsersDAOImp dao=this.getDao();
System.out.println(loginForm.getUsername());
if(dao.isValidUser(loginForm.getUsername(), loginForm.getPassword())){
return mapping.findForward("right");
}
return mapping.findForward("wrong");
}
}
暂时放这些吧