建议单独建一个类,Data
里边一个静态变量
public static HashMap<String,User>users = new HashMap<String,User>()//Key为用户的名称,不能重复,User为用户对象,里边可以添加你需要模拟的属性
思路:
注册的时候,首先根据用户输入的用户名在users里去找有没有重复的Key,users.containsKey()这个方法可以做到,如果有则不能用此用户名注册,否则可以继续填写资料,填写按成后,实例化一个User,将这个User的 userName作为key ,User作为value插入users这个map中,
登录的时候也是根据用户名去users中去找key,然后在匹配密码
// 定义接口 public interface SyUsersService {/***新增用户*/
public void addSyUser(SyUsers syUsers)
/***根据用户名得到用的注册信息***/
public SyLeaguer isRightPasswordProtect(SyLeaguer syLeaguer)
/***更新用户的密码***/
public void updateSyUserPassword(SyUsers syUsers)
/***用户登录验证***/
public boolean checkSyUserLogin(SyUsers syUsers)
/**
* 更新用户状态 * @param loginName 登录名 * @param state 状态号 0/1
* @return 是否更新成功 true/flase
*/
public boolean updateSyUserState(String loginName,Integer state)
/**
* 分页查询用户信息
* @param pageNo 页号
* @param pageSize 页面大小
* @param hqlQueryRule 查询规则
* @return Page 分页查询对象
*/
public Page querySyUserPage(int pageNo,int pageSize,HqlQueryRule hqlQueryRule)
/**
* 更新用户密码
* @param loginName 登录名 * @param oldPassword 旧的密码
* @param newPassword 新的密码
*/
public void updateSyUserPassword(String loginName,String oldPassword,String newPassword)
/**
* 根据查询规则查询用户
* @see HqlQueryRule
* @param hqlQueryRule 查询规则
* @return 结果集列表 */
public List querySyUser(HqlQueryRule hqlQueryRule)
/**
* 根据登录名获取用户信息 * @param loginName
* @return
*/
public SyUsers getSyUserByLoginName(String loginName)
/**
* 根据登录名获取用户信息
* @param loginName
* @return
*/
public boolean isRepeatUser(String loginName)
/**
* 更新用户
* @param loginName
* @return
*/
public void updateSyUsers(SyUsers syUsers)
}
// 实现接口 public class SyUsersServiceImp extends
org.springframework.orm.hibernate3.support.HibernateDaoSupport
implements SyUsersService {
protected static final Log logger = LogFactory.getLog(SyUsersServiceImp.class)public SyUsersServiceImp() {}
/***用户注册添加用户***/
public void addSyUser(SyUsers syUsers) {
this.getHibernateTemplate().save(syUsers)
Set babySet=syUsers.getSyLeaguer().getSyLeaguerBabies()
if(babySet!=null&&babySet.size()>0){
SyLeaguerBaby baby=(SyLeaguerBaby)babySet.iterator().next()
this.getHibernateTemplate().save(baby)
}
}
/***用户登录***/
public boolean checkSyUserLogin(SyUsers syUsers){
String querySQL = "FROM SyUsers WHERE loginName=:username and loginPassword=:password and state=:state and isEmp=:isemp"
Query query = this.getSession().createQuery(querySQL)
query.setString("username", syUsers.getLoginName())
query.setString("password", syUsers.getLoginPassword())
query.setInteger("state", 1)
query.setInteger("isemp", 0)
List list = (List)query.list()
return list.size()>0?true:false
}
/***密码找回得到注册密保信息***/
public SyLeaguer isRightPasswordProtect(SyLeaguer syLeaguer){
String querySQL = "FROM SyLeaguer WHERE loginName=:loginname"
Query query = this.getSession().createQuery(querySQL)
query.setString("loginname", syLeaguer.getLoginName())
return (SyLeaguer)query.uniqueResult()
}
public void updateSyUserPassword(String loginName,String newPassword){
} public Page querySyUserPage(int pageNo, int pageSize,
HqlQueryRule hqlQueryRule) {
// TODO Auto-generated method stub
// Criteria c=this.getSession().createCriteria(SyUsers.class)
// for(int i=0restrictList!=null&&i<restrictList.size()i++){
// c=c.add((Criterion) restrictList.get(i))
// }
// for(int i=0orderList!=null&&i<orderList.size()i++){
// c=c.addOrder((Order) orderList.get(i))
// }
// c.setFirstResult((int)page.getStart())
// c.setMaxResults(page.getPageSize())
// List resultList=c.list()
//HqlQueryRule hqr=new HqlQueryRule()
//hqr.addEqual("id", new Integer(1234))
Page p = new Page()
Page page = null
String queryPageHQL = "select new map( su.loginName as loginName, su.loginPassword as loginPassword,su.isEmp as isEmp) from SY_RES su where 1=1"
String countHQL = "select count(*) from SyUsers where 1=1 "// 总记录数
queryPageHQL=queryPageHQL+hqlQueryRule.getHql()
Query query = this.getSession().createQuery(queryPageHQL)
List list = query.list()
PageTool pt=new PageTool(page)
page=pt.getHQLQueryPage(this.getSession(), queryPageHQL,countHQL, null)
return page
} public boolean updateSyUserState(String loginName, Integer state) {
// TODO Auto-generated method stub
return false
} public List querySyUser(HqlQueryRule hqlQueryRule) {
// TODO Auto-generated method stub
return null
} public void updateSyUserPassword(String loginName, String oldPassword,
String newPassword) {
// TODO Auto-generated method stub
} public SyUsers getSyUserByLoginName(String loginName) {
return (SyUsers)this.getSession().get(SyUsers.class, loginName)
}
/***用户名是否重复***/
public boolean isRepeatUser(String loginName){
String querySQL = "FROM SyUsers WHERE loginName=:username"
Query query = this.getSession().createQuery(querySQL)
query.setString("username", loginName)
List list = (List)query.list()
return list.size()>0?true:false
}
public void updateSyUserPassword(SyUsers syUsers){
this.getSession().update(syUsers)
}
public void updateSyUsers(SyUsers syUsers){
this.getSession().update(syUsers)
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)