速動(dòng)畫(huà)教程第十五集

?

本集為第十二集Struts+Spring+Hibernate練習(xí)(完整) 續(xù)集

?

下載地址:http://sonic.peakle.net/download/sonic015.rar

?

將增加以下部份內(nèi)容

?

注冊(cè)新用戶(hù),用戶(hù)瀏覽、刪除用戶(hù)

?

現(xiàn)在導(dǎo)入原工程

?

打開(kāi) UserDAO.java 文件,增加以下方法,此方法為增加用戶(hù)

public interface UserDAO {

??? public abstract boolean isValidUser(String username, String password);

??? public abstract boolean addUser(User user);

}

?

打開(kāi) UserDAOImp.java 文件,添加接口方法的實(shí)現(xiàn),并為方法編寫(xiě)以下內(nèi)容:

??? public boolean addUser(User user) {

??????? try {

??????????? this.getHibernateTemplate().save(user);

??????? } catch (Exception e) {

??????????? System.out.println(e.getMessage());

??????????? return false;

??????? }

??????? return true;

??? }

?

?

按下Ctrl + N使用向?qū)?chuàng)建 add.jsp AddForm(動(dòng)態(tài))AddAction.java文件這是注冊(cè)新用戶(hù)的Action

?

修改配置內(nèi)容如下

<action

????? attribute="addForm"

????? input="/add.jsp"

????? name="addForm"

????? path="/add"

????? scope="request"

????? validate="true"

????? type="org.springframework.web.struts.DelegatingActionProxy" />

?

第一句實(shí)現(xiàn)了必須對(duì)提交的數(shù)據(jù)進(jìn)行驗(yàn)證

第二句實(shí)現(xiàn)了和spring集成

?

修改 AddAction.java 文件,內(nèi)容如下:

?

??? 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();

??????? }

??? }

?

關(guān)于在Action中使用 User 對(duì)像我在這里沒(méi)有使用 IoC 方式進(jìn)行管理這不好希望大家在正式應(yīng)用中使用。

?

spring配置文件applicationContext.xml中加入以下內(nèi)容

?????? <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>