教程流程是重點(diǎn),應(yīng)熟練掌握。本教程做簡單的賬號注冊演示,所用工具:Myeclipse-6.5、Struts-2.2.3、 Hibernate-3.2、Spring-2.0、MySql,本教程出自北大青鳥成都錦江校區(qū)(原文鏈接 http://www.scbdqn.com/course/netjava/3172.html),轉(zhuǎn)載請注明原處,謝謝。
一、利用工具快速搭建環(huán)境
1、新建一個名為ssh2的Web項目

2、把STRUTS2的依賴JAR包添加到項目工程中。用WinRar解壓Struts-2.2.3appsstruts2- blank.war,把Struts-2.2.3appsstruts2-blankWEB-INFlib下面的所有JAR包添加到WEB工程的 lib目錄下。
3、添加Hibernate的依賴庫。選中剛創(chuàng)建的項目,右鍵》具體操作如圖所示

需要注意的地方已經(jīng)勾選出來了,之后點(diǎn)下一步。

這里選擇否,待會我們手工來編寫。

這個不需要創(chuàng)建,因此不勾選。之后點(diǎn)完成。

4、添加Spring的依賴庫。選中剛創(chuàng)建的項目,右鍵》具體操作如圖所示

按下面的選擇,不要急著下一步。

下面的選擇之后,然后下一步。

Folder一定要寫成 WebRoot/WEB-INF,否則容易找不到

不用它創(chuàng)建,然后點(diǎn)完成。

5、因為需要連接數(shù)據(jù)庫,因此我們還需要數(shù)據(jù)庫的依賴JAR包。去下載commons-dbcp-1.4.jar、commons-pool- 1.5.6.jar、mysql-connector-java-5.0.8-bin.jar,并添加進(jìn)去。由于Struts與Spring整合了,所以 不要漏添加 struts2-spring-plugin-2.2.3.jar 文件,它位于 Struts-2.2.3lib 目錄下。
二、編寫代碼實(shí)現(xiàn)功能,處理常見異常
1、在 com.lingdus.bean 包下創(chuàng)建 Users.java 類
package com.lingdus.bean; import java.io.Serializable; public class Users implements Serializable { private int id; private String username; private String password; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }2、在 com.lingdus.bean 包下創(chuàng)建一個 Users.xml 文件
“http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd”》
3、在 com.lingdus.dao 下創(chuàng)建一個 UserDAO.java 文件
package com.lingdus.dao; import com.lingdus.bean.Users; public interface UserDAO { public void doRegister(Users user); }4、在 com.lingdus.dao.impl 下創(chuàng)建一個 UserDAOImpl.java 文件
package com.lingdus.dao.impl; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.lingdus.bean.Users; import com.lingdus.dao.UserDAO; public class UserDAOImpl extends HibernateDaoSupport implements UserDAO { public void doRegister(Users user) { this.getHibernateTemplate().save(user); } }5、在 com.lingdus.service 下創(chuàng)建一個 UserService.java 文件
package com.lingdus.service; import com.lingdus.bean.Users; public interface UserService { public void doRegister(Users user); }6、在 com.lingdus.service.impl 下創(chuàng)建一個 UserServiceImpl.java 文件
package com.lingdus.service.impl; import com.lingdus.bean.Users; import com.lingdus.dao.UserDAO; import com.lingdus.service.UserService; public class UserServiceImpl implements UserService { private UserDAO userDAO; public UserDAO getUserDAO() { return userDAO; } public void setUserDAO(UserDAO userDAO) { this.userDAO = userDAO; } public void doRegister(Users user) { this.userDAO.doRegister(user); } }7、在 com.lingdus.action 下創(chuàng)建一個 UserRegisterAction.java 文件
package com.lingdus.action; import java.util.Map; import org.apache.struts2.ServletActionContext; import com.lingdus.bean.Users; import com.lingdus.service.UserService; import com.opensymphony.xwork2.ActionSupport; public class UserRegisterAction extends ActionSupport { private UserService service; private Users user; public UserService getService() { return service; } public void setService(UserService service) { this.service = service; } public Users getUser() { return user; } public void setUser(Users user) { this.user = user; } @Override public String execute() throws Exception { this.service.doRegister(this.user); if (0 == this.user.getId()) { return ERROR; } return SUCCESS; } }8、在 WebRootWEB-INFapplicationContext.xml 中替換成以下內(nèi)容
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=“http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd”》
class=“org.apache.commons.dbcp.BasicDataSource”
destroy-method=“close”》
com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc:sqlserver://localhost:1433;databaseName=ssh2
sa
sql2008
class=“org.springframework.orm.hibernate3.LocalSessionFactoryBean”》
com/lingdus/bean/Users.xml
org.hibernate.dialect.SQLServerDialect
false
class=“com.lingdus.service.impl.UserServiceImpl”》
class=“com.lingdus.action.UserRegisterAction”》
9、在 src 目錄下創(chuàng)建一個 struts.xml 文件,內(nèi)容如下
“-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN”
“http://struts.apache.org/dtds/struts-2.1.7.dtd”》
ok.jsp
error.jsp
10、在 WebRootWEB-INFweb.xml 中替換成以下內(nèi)容
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=“http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd”》
index.jsp
ssh2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
ssh2
/*
org.springframework.web.context.ContextLoaderListener
11、創(chuàng)建 ssh2 數(shù)據(jù)庫 Users 表,字段id(int,僅設(shè)置主鍵)、username(varchar(255))、password(varchar(255))
12、刪除lib目錄下的 asm-2.2.3.jar、asm-3.1.jar 文件。
13、編寫 index.jsp 文件,具體如下
<%@ page language=“java” import=“java.util.*” pageEncoding=“UTF-8”%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + “://”
+ request.getServerName() + “:” + request.getServerPort()
+ path + “/”;
%>
My JSP ‘index.jsp’ starting page
賬號:
密碼:
14、搭建 Tomcat 并啟動,看樣子問題不大,教程就此結(jié)束。
本教程轉(zhuǎn)自北大青鳥成都錦江校區(qū),原文鏈接http://www.scbdqn.com/course/netjava/3172.html
新聞熱點(diǎn)
疑難解答
圖片精選