运用SSH实现登录,记录下来给自己以后复习(开发工具Myeclipse+Oracle+tomcat)
1、新建一个web工程SSH_Login
2、按照Struts2+Spring+Hibernate顺序添加
2.1 添加Structs2(右键->MyEclipse->Add Struts Capabilities)
点击next
选择加入的包,点击Finish,加入Struts成功
2.2 添加Spring(右键->MyEclipse->Add Spring Capabilities)
这需要导入5个包,点击Finish,加入Spring成功
2.2 添加Hibernate
在添加Hibernate之前,需要配置数据库连接
点击MyEclipse Database Explorer,新建一个数据库连接
点击Finish完成配置
转到MyEclipse Java Enterprise,右键->MyEclipse->Add HibernateCapabilities
点击Next
点击Next
点击Next,选择刚刚配置的数据库连接
点击Next,把勾去掉
点击Finish,Hibernate的添加就完成了.
把项目部署在tomcat上, 去lib目录下删除冲突包
antlr-2.7.2.jar和cglib-2.2.jar
然后把lib目录复制到项目的WEB-INF目录下,把原来的lib目录覆盖掉,再移除下面的包(这步是为了项目开发时看起来更简洁)
SSH的搭建就完成了.可以run一下tomcat,Console里不报错就没问题.
3、把数据库里的表通过Hibernate映射到Java文件中
找到TUSER表(在数据库里建好的(列有id、name、password)),右键选择Hibernate Reverse Engineering
点击Next,再点Next,到这修改相应属性
由于数据库中ID的类型为number,所以需要转换
点击Finish完成
4、完成后台业务
在src下新建包以及类
在自动生成的UserDAO里添加查询用户是否存在的方法
/**
* 查询是否存在该用户
* @param name
* @param password
* @return
*/
public User login(String name,String password) {
String queryString = "from User where name='"+name+"' and password='"+password+"'";
List list = getHibernateTemplate().find(queryString);
Iterator it = list.iterator();
User user = null;
while(it.hasNext()){
user = (User) it.next();
}
return user;
}
在接口UserService中定义方法
public boolean findUser(String name,String password);
在实现类中实现方法
private UserDAO userDAO;
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
public boolean findUser(String name, String password) {
if(null!=userDAO.login(name, password)){
return true;
}else{
return false;
}
}