多语言展示
当前在线:145今日阅读:167今日分享:16

SSH2完美整合流程

教程流程是重点,应熟练掌握。本教程做简单的账号注册演示,所用工具:Myeclipse-6.5、Struts-2.2.3、Hibernate-3.2、Spring-2.0、MySql。
工具/原料

Myeclipse-6.5、Struts-2.2.3、Hibernate-3.2、Spring-2.0、MySql

步骤/方法
1

一、利用工具快速搭建环境

2

1、新建一个名为ssh2的Web项目

3

2、把STRUTS2的依赖JAR包添加到项目工程中。用WinRar解压Struts-2.2.3\apps\struts2- blank.war,把Struts-2.2.3\apps\struts2-blank\WEB-INF\lib下面的所有JAR包添加到WEB工程的 lib目录下。

5

4、添加Spring的依赖库。选中刚创建的项目,右键》具体操作如图所示 按下面的选择,不要急着下一步。 下面的选择之后,然后下一步。 Folder一定要写成 WebRoot/WEB-INF,否则容易找不到 不用它创建,然后点完成。

6

1、在 com.lingdus.bean 包下创建 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;  } }

7

5、在 com.lingdus.service 下创建一个 UserService.java 文件 package com.lingdus.service; import com.lingdus.bean.Users; public interface UserService {  public void doRegister(Users user); }

8

9、在 src 目录下创建一个 struts.xml 文件,内容如下         ok.jsp  error.jsp     

9

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               

  账号:   
  密码:   
   
   

10

5、因为需要连接数据库,因此我们还需要数据库的依赖JAR包。去下载commons-dbcp-1.4.jar、commons-pool- 1.5.6.jar、mysql-connector-java-5.0.8-bin.jar,并添加进去。由于Struts与Spring整合了,所以 不要漏添加 struts2-spring-plugin-2.2.3.jar 文件,它位于 Struts-2.2.3\lib 目录下。

11

3、在 com.lingdus.dao 下创建一个 UserDAO.java 文件 package com.lingdus.dao; import com.lingdus.bean.Users; public interface UserDAO {  public void doRegister(Users user); }

12

7、在 com.lingdus.action 下创建一个 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;  } }

13

11、创建 ssh2 数据库 Users 表,字段id(int,仅设置主键)、username(varchar(255))、password(varchar(255))

14

二、编写代码实现功能,处理常见异常

15

2、在 com.lingdus.bean 包下创建一个 Users.xml 文件                  

16

4、在 com.lingdus.dao.impl 下创建一个 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);  } }

17

6、在 com.lingdus.service.impl 下创建一个 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);  } }

18

8、在 WebRoot\WEB-INF\applicationContext.xml 中替换成以下内容        com.microsoft.sqlserver.jdbc.SQLServerDriver      jdbc:sqlserver://localhost:1433;databaseName=ssh2      sa      sql2008              com/lingdus/bean/Users.xml            org.hibernate.dialect.SQLServerDialect    false                         

19

10、在 WebRoot\WEB-INF\web.xml 中替换成以下内容      index.jsp      ssh2    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter        ssh2  /*        org.springframework.web.context.ContextLoaderListener     

20

12、删除lib目录下的 asm-2.2.3.jar、asm-3.1.jar 文件。

21

14、搭建 Tomcat 并启动,看样子问题不大,教程就此结束。 2011-12-19 15:56:14 org.apache.catalina.core.AprLifecycleListener init 信息: The APR based Apache Tomcat Native library which allows optimal  performance in production environments was not found on the  java.library.path: D:\MyEclipse 6.5\bin;D:\java  resource\apache-tomcat-6.0.33\bin 2011-12-19 15:56:14 org.apache.coyote.http11.Http11Protocol init 信息: Initializing Coyote HTTP/1.1 on http-8080 2011-12-19 15:56:14 org.apache.catalina.startup.Catalina load 信息: Initialization processed in 1123 ms 2011-12-19 15:56:14 org.apache.catalina.core.StandardService start 信息: Starting service Catalina 2011-12-19 15:56:14 org.apache.catalina.core.StandardEngine start 信息: Starting Servlet Engine: Apache Tomcat/6.0.33 2011-12-19 15:56:15 org.apache.catalina.startup.HostConfig deployDescriptor 信息: Deploying configuration descriptor host-manager.xml 2011-12-19 15:56:15 org.apache.catalina.startup.HostConfig deployDescriptor 信息: Deploying configuration descriptor manager.xml 2011-12-19 15:56:15 org.apache.catalina.startup.HostConfig deployDirectory 信息: Deploying web application directory docs 2011-12-19 15:56:15 org.apache.catalina.startup.HostConfig deployDirectory 信息: Deploying web application directory examples 2011-12-19 15:56:15 org.apache.catalina.core.ApplicationContext log 信息: ContextListener: contextInitialized() 2011-12-19 15:56:15 org.apache.catalina.core.ApplicationContext log 信息: SessionListener: contextInitialized() 2011-12-19 15:56:16 org.apache.catalina.startup.HostConfig deployDirectory 信息: Deploying web application directory ROOT 2011-12-19 15:56:16 org.apache.catalina.startup.HostConfig deployDirectory 信息: Deploying web application directory ssh2 log4j:WARN No appenders could be found for logger (org.springframework.util.ClassUtils). log4j:WARN Please initialize the log4j system properly. 2011-12-19 15:56:17 org.apache.catalina.core.ApplicationContext log 信息: Initializing Spring root WebApplicationContext 2011-12-19 15:56:27 org.apache.coyote.http11.Http11Protocol start 信息: Starting Coyote HTTP/1.1 on http-8080 2011-12-19 15:56:28 org.apache.jk.common.ChannelSocket init 信息: JK: ajp13 listening on /0.0.0.0:8009 2011-12-19 15:56:28 org.apache.jk.server.JkMain start 信息: Jk running ID=0 time=0/47 config=null 2011-12-19 15:56:28 org.apache.catalina.startup.Catalina start 信息: Server startup in 13407 ms

注意事项

初次搭建,应严格按照以上步骤操作。

推荐信息