Myeclipse-6.5、Struts-2.2.3、Hibernate-3.2、Spring-2.0、MySql
一、利用工具快速搭建环境
1、新建一个名为ssh2的Web项目
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目录下。
4、添加Spring的依赖库。选中刚创建的项目,右键》具体操作如图所示 按下面的选择,不要急着下一步。 下面的选择之后,然后下一步。 Folder一定要写成 WebRoot/WEB-INF,否则容易找不到 不用它创建,然后点完成。
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; } }
5、在 com.lingdus.service 下创建一个 UserService.java 文件 package com.lingdus.service; import com.lingdus.bean.Users; public interface UserService { public void doRegister(Users user); }
9、在 src 目录下创建一个 struts.xml 文件,内容如下
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 + '/'; %>
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 目录下。
3、在 com.lingdus.dao 下创建一个 UserDAO.java 文件 package com.lingdus.dao; import com.lingdus.bean.Users; public interface UserDAO { public void doRegister(Users user); }
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; } }
11、创建 ssh2 数据库 Users 表,字段id(int,仅设置主键)、username(varchar(255))、password(varchar(255))
二、编写代码实现功能,处理常见异常
2、在 com.lingdus.bean 包下创建一个 Users.xml 文件
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); } }
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); } }
8、在 WebRoot\WEB-INF\applicationContext.xml 中替换成以下内容
10、在 WebRoot\WEB-INF\web.xml 中替换成以下内容
12、删除lib目录下的 asm-2.2.3.jar、asm-3.1.jar 文件。
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
初次搭建,应严格按照以上步骤操作。