1. 安装好maven后,输入mvn archetype:create -DgroupId=com.ryan -DartifactId=ASystem -DarchetypeArtifactId=maven-archetype-webapp
2. 修改pom.xml(见附件)
3. 运行 mvn eclipse:eclipse, 生成Eclipse项目。然后用Eclipse导入。
4. 下面是项目结构,缺的自己补。
5. web配置
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
- <display-name>AccountSystem</display-name>
- <!-- 加载Spring的配置文件 -->
- <context-param>
- <param-name>contextConfigLocation</param-name>
- <param-value>classpath:applicationContext.xml</param-value>
- </context-param>
- <!-- 加载spring的监听器 -->
- <listener>
- <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
- </listener>
- <!-- struts2的配置 -->
- <filter>
- <filter-name>struts2</filter-name>
- <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>struts2</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
6. applicationContext.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- 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-3.2.xsd">
- <!-- 定义数据源 ,使用c3p0数据源实现 -->
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
- destroy-method="close">
- <property name="driverClass" value="com.mysql.jdbc.Driver"></property>
- <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/AccountSystem"></property>
- <property name="user" value="root"></property>
- <property name="password" value="123456"></property>
- </bean>
- <!-- Hibernate sessionFactory创建 -->
- <bean id="sessionFactory"
- class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
- <property name="dataSource" ref="dataSource"></property>
- <!-- Hibernate属性 -->
- <property name="hibernateProperties">
- <props>
- <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
- <prop key="hibernate.format_sql">true</prop>
- <prop key="hibernate.hbm2ddl.auto">create</prop>
- </props>
- </property>
- <!-- 映射文件 -->
- <property name="mappingResources">
- <list>
- <value>hbm/User.hbm.xml</value>
- </list>
- </property>
- </bean>
- <bean id="userDao" class="com.ryan.dao.impl.UserDAOImpl"
- scope="singleton">
- <property name="sessionFactory" ref="sessionFactory"></property>
- </bean>
- <bean id="registerAction" class="com.ryan.actions.RegisterAction"
- scope="prototype">
- <property name="ud" ref="userDao"></property>
- </bean>
- </beans>
7. struts.xml
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
- "http://struts.apache.org/dtds/struts-2.3.dtd">
- <struts>
- <constant name="devMode" value="true"></constant>
- <constant name="struts.objectFactory" value="spring"></constant>
- <package name="default" namespace="/" extends="struts-default">
- <action name="register" class="registerAction">
- <result name="success">/success.jsp</result>
- </action>
- </package>
- </struts>
8. User.hbm.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE hibernate-mapping PUBLIC
- "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
- <hibernate-mapping>
- <class name="com.ryan.entity.User" table="user">
- <id name="id" column="id">
- <generator class="native"></generator>
- </id>
- <property name="name"></property>
- <property name="password"></property>
- </class>
- </hibernate-mapping>
9. RegisterAction.java
- package com.ryan.actions;
- import com.opensymphony.xwork2.ActionSupport;
- import com.ryan.entity.User;
- import com.ryan.interfaces.IUserDAO;
- public class RegisterAction extends ActionSupport {
- /**
- *
- */
- private static final long serialVersionUID = -4351790236150377092L;
- private String name;
- private String password;
- private IUserDAO ud;
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- public IUserDAO getUd() {
- return ud;
- }
- public void setUd(IUserDAO ud) {
- this.ud = ud;
- }
- @Override
- public String execute() throws Exception {
- User user = new User();
- user.setName(name);
- user.setPassword(password);
- ud.addUser(user);
- return SUCCESS;
- }
- }
10. UserDAOImpl.java
- package com.ryan.dao.impl;
- import org.hibernate.SessionFactory;
- import org.springframework.orm.hibernate3.HibernateTemplate;
- import com.ryan.entity.User;
- import com.ryan.interfaces.IUserDAO;
- public class UserDAOImpl implements IUserDAO {
- private HibernateTemplate ht = null;
- private SessionFactory sessionFactory;
- public void setSessionFactory(SessionFactory sessionFactory) {
- this.sessionFactory = sessionFactory;
- }
- public SessionFactory getSessionFactory() {
- return sessionFactory;
- }
- public HibernateTemplate getHibernateTemplate() {
- if (ht == null) {
- ht = new HibernateTemplate(sessionFactory);
- }
- return ht;
- }
- public Long addUser(User user) {
- return (Long) getHibernateTemplate().save(user);
- }
- }
11. User.java
- package com.ryan.entity;
- public class User {
- private Long id;
- private String name;
- private String password;
- public User() {
- super();
- }
- public User(Long id, String uname, String upass) {
- super();
- this.id = id;
- this.name = uname;
- this.password = upass;
- }
- public Long getId() {
- return id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getPassword() {
- return password;
- }
- public void setPassword(String password) {
- this.password = password;
- }
- }
12. IUserDAO
- package com.ryan.interfaces;
- import com.ryan.entity.User;
- public interface IUserDAO {
- public Long addUser(User user);
- }
13. index.jsp
14. success.jsp