java我是初学者,登录,注册两个类,用集合的泛型存注册的数据(姓名,密码),登录的时候怎么做啊?

java我是初学者,登录,注册两个类,用集合的泛型存注册的数据(姓名,密码),登录的时候怎么做啊?,第1张

你这要做的是一个模拟登录,注册,那么首先需要1个静态的容器,也就是存数据的地方,

建议单独建一个类,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)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11963943.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存