private UserDAO userDao ;
// 保存用户
public void saveUser(User user){
userDao .createUser(user);
}
// 修改用户
public void updateUser(User user){
userDao .updateUser(user);
}
// 修改用户
public void deleteUser(User user){
userDao .deleteUser(user);
}
// 查询用户
public User queryUser(String username){
return userDao .queryUser(username);
}
// 依赖注入
public UserDAO getUserDao() {
return userDao ;
}
public void setUserDao(UserDAO userDao) {
this . userDao = userDao;
} }
# re: Spring+Struts+Hibernate(一个实现用户注册的简单示例)2007-08-21 11:01 | javapon
@杨爱友
Spring与Struts的结合是通过Spring的DelegatingActionProxy类,并在Struts的配置文件(步骤八)中注册Spring的ContextLoaderPlugIn插件,并且动作映射的type属性为org.springframework.web.struts.DelegatingActionProxy而不是实际的类的名称,并在Spring的配置文件中(步骤九)定义和Struts配置文件中动作映射对应的Bean.像在(步骤八)中定义< action path = \在(步骤九)中定义< bean name = \
Spring与Hibernate的结合是通过IoC把Hibernate纳入Spring来进行管理,这在Spring的配置文件(步骤九)中可以看得出来,并由Hibernate来完成相应得数据库操作,只要是在面向对象设计和关系数据库间建立桥梁. 回复 更多评论
# 请问,我这两句会报错,是什么原因呢?[未登录]2007-08-30 11:33 | yuan
getRegedit().saveUser((User)form);
request.setAttribute( \ 报错:
cannot cast from ActionForm to User
回复 更多评论
# re: Spring+Struts+Hibernate(一个实现用户注册的简单示例)2007-08-30 18:33 | 杨爱友
@yuan
不能直接从form转换成user对象,要new一个 user对象,然后把form里的数据set到user对象里再进行保存 回复 更多评论
# re: Spring+Struts+Hibernate(一个实现用户注册的简单示例)2007-09-02 12:15 | javapon
@yuan
更好得解决方法是编写个VO,来为业务逻辑成和持久层间数据的交互 回复 更多评论
# re: Spring+Struts+Hibernate(一个实现用户注册的简单示例)[未登录]2007-09-11 09:40 | aaron
在 com.gc.action 包下编写控制器 RegeditAction.java
getRegedit().saveUser((User)form);
request.setAttribute( \
这两句我的也报错:
cannot cast from ActionForm to User 为什么楼主的不报错??
< form-beans >
< form-bean name = \
form-beans >
说明这个User就是一个VO对象啊
回复 更多评论
# re: Spring+Struts+Hibernate(一个实现用户注册的简单示例)[未登录]2007-09-11 21:29 | javapon
com.gc.form包下再编写个ActionForm UserForm.java里面有3个属性和对应的get/set方法 把com.gc.vo包下的User.java当作真正的交换数据的VO 配置文件修该一下 < form-beans >
< form-bean name = \ form-beans >
..........................................
com.gc.action 包下控制器 RegeditAction.java 需修改
//getRegedit().saveUser((User)form); //request.setAttribute( \
先new 一个User对象,然后把UserForm里的数据get出来,set到User里面,然后再保存
UserForm userForm=(UserForm)form; User user=new User();
user.setUsername(userForm.getUsername()); ................................ ............................. ...........................
getRegedit().saveUser(user);
......
SSH整合实例(1)
网上虽然有很多SSH整合的小例子,但很多程序都出现了不是这样,就是那样的错误。自己总结了一下,终于做出的Struts+Spring+Hibernate整合的小例子,也是最基础的SSH实例,虽然是小例子,但什么程序都是从基础的做起。如果你弄明白了这个小实例,相信你的SSH整合框架技术也会提高很多。
在做本例前,需要熟悉对Struts,Hibernate的反向工程等的基本操作。
开发工具:MyEclipse+MySQL+Tomcat
说明:本实例是简单注册程序(只有两个属性)
数据库脚本:user.sql
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) DEFAULT NULL,
`password` varchar(255) DEFAULT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
开发步骤:
一.项目搭建
1建立Web项目
选择: Java EE 5.5
2添加Struts支持(项目右键àMyEclipse Struts Capabilities ?)
选择:
1)Struts specification: Struts 1.3
2)Base package for 那位classes:edu.syict.struts
3添加Spring支持(项目右键àMyEclipse Spring Capabilities ?)
选择:
1) Spring version:Spring 2.0
2) Select the libraries to add the buildpath:
Spring 2.0 AOP Libraries
Spring 2.0 Core Libraries
Spring 2.0 Persistence Core Libraries
Spring 2.0 Persistence JDBC Libraries
Spring 2.0 Web Libraries
3) JAR Library Installation:
Copy checked Library contents to project folder (TLDs always copied)
Next
4) Spring配置文件选择目录Folder:WebRoot/WEB-INF
Finish
4 添加Hibernate支持(项目右键àMyEclipse Hibernate Capabilities ?)
选择:
1)Hibernate Specification:Hibernate3.1