速动画教程第十五集
本集为第十二集Struts+Spring+Hibernate练习(完整) 的 续集
下载地址:http://sonic.peakle.net/download/sonic015.rar
将增加以下部份内容
注册新用户,用户浏览、删除用户
现在导入原工程
打开 UserDAO.java 文件,增加以下方法,此方法为增加用户
public interface UserDAO {
public abstract boolean isValidUser(String username, String password);
public abstract boolean addUser(User user);
}
打开 UserDAOImp.java 文件,添加接口方法的实现,并为方法编写以下内容:
public boolean addUser(User user) {
try {
this.getHibernateTemplate().save(user);
} catch (Exception e) {
System.out.println(e.getMessage());
return false;
}
return true;
}
按下Ctrl + N,使用向导创建 add.jsp 、AddForm(动态)、AddAction.java文件,这是注册新用户的Action
修改配置内容如下:
<action
attribute="addForm"
input="/add.jsp"
name="addForm"
path="/add"
scope="request"
validate="true"
type="org.springframework.web.struts.DelegatingActionProxy" />
第一句实现了必须对提交的数据进行验证
第二句实现了和spring集成
修改 AddAction.java 文件,内容如下:
private UserDAO userDAO;
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
DynaActionForm addForm = (DynaActionForm) form;
User user=new User();
user.setUsername(addForm.getString("username"));
user.setPassword(addForm.getString("password"));
addForm.set("password", null);
if (userDAO.addUser(user)) {
return mapping.findForward("indexGo");
} else {
return mapping.getInputForward();
}
}
关于在Action中使用 User 对像,我在这里没有使用 IoC 方式进行管理,这不好,希望大家在正式应用中使用。
在spring配置文件(applicationContext.xml)中加入以下内容:
<bean name="/add" class="com.test.struts.action.AddAction" singleton="false">
<property name="userDAO">
<ref bean="userDAOProxy" />
</property>
</bean>
修改index.jsp文件
<html>
<head>
<title>Struts+Spring+Hibernate</title>
</head>
<body>