Struts2+Hibernate4整合

原创 2015年11月20日 15:14:14

编译环境:MyEclipse
工具:Maven
数据库:MySQL5.X

一、新建Maven Web项目

File——New——WebProject——勾选Add maven support

二、在Maven中配置依赖包

在pom.xml中添加下列代码

        <!-- 单元测试 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <!-- 数据库连接 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.0.8</version>
        </dependency>
        <!-- hibernate 配置 -->
        <dependency>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
            <version>1.6.1</version>
        </dependency>

        <dependency>
            <groupId>antlr</groupId>
            <artifactId>antlr</artifactId>
            <version>2.7.7</version>
        </dependency>

        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.2.4.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate.javax.persistence</groupId>
            <artifactId>hibernate-jpa-2.0-api</artifactId>
            <version>1.0.1.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate.common</groupId>
            <artifactId>hibernate-commons-annotations</artifactId>
            <version>4.0.1.Final</version>
        </dependency>
        <dependency>
            <groupId>org.javassist</groupId>
            <artifactId>javassist</artifactId>
            <version>3.15.0-GA</version>
        </dependency>
        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging</artifactId>
            <version>3.1.0.GA</version>
        </dependency>
        <dependency>
            <groupId>org.jboss.spec.javax.transaction</groupId>
            <artifactId>jboss-transaction-api_1.1_spec</artifactId>
            <version>1.0.1.Final</version>
        </dependency>
        <!-- hibernate 配置结束 -->

        <!-- struts2 配置 -->
        <dependency>
            <groupId>asm</groupId>
            <artifactId>asm</artifactId>
            <version>3.3</version>
        </dependency>
        <dependency>
            <groupId>asm</groupId>
            <artifactId>asm-commons</artifactId>
            <version>3.3</version>
        </dependency>
        <dependency>
            <groupId>asm</groupId>
            <artifactId>asm-tree</artifactId>
            <version>3.3</version>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.3.1</version>
        </dependency>
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.2.2</version>
        </dependency>
        <dependency>
            <groupId>ognl</groupId>
            <artifactId>ognl</artifactId>
            <version>3.0.5</version>
        </dependency>
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>2.3.4</version>
        </dependency>
        <dependency>
            <groupId>org.apache.struts.xwork</groupId>
            <artifactId>xwork-core</artifactId>
            <version>2.3.4</version>
        </dependency>
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.19</version>
        </dependency>
        <!-- struts2 配置结束 -->

三、配置struts和hibernate

在src/main/java下添加struts.xml和hibernate.cfg.xml
struts.xml配置如下,将数据库用户名、密码以及数据库的链接修改为本机所使用的

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
    <package name="default" namespace="/" extends="struts-default">
    </package>
</struts>

hibernate.cfg.xml如下

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

    <session-factory>

        <!-- 数据库用户名 -->

        <property name="connection.username">root</property>
        <!-- 数据库密码 -->

        <property name="connection.password">123456</property>
        <!--驱动程序-->

        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <!-- JDBC URL -->

        <property name="connection.url">jdbc:mysql://127.0.0.1:3306/shop</property>
        <!-- SQL方言,这边设定的是MySQL -->

        <property name="dialect">org.hibernate.dialect.MySQLDialect</property>

        <property name="show_sql">true</property>

        <property name="format_sql">true</property>

        <property name="hbm2ddl.auto">update</property>

        <property name="current_session_context_class">thread</property>
    <!--映射文件添加处-->
    </session-factory>
</hibernate-configuration>

到这里整合已经完成

三、新建实体类和hibernate映射文件

例如新建一个User类,成员变量如下,创建构造方法和get、set方法

    private int uid;
    private String username;
    private String password;

接着,在User类所在的包下,新建映射文件User.hbm.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">


<hibernate-mapping>
    <class name="entity.User" table="user">
        <id name="uid" type="int"><!-- 主键 -->
            <generator class="native" /><!-- 自动增长 -->
        </id>
        <property name="username" type="java.lang.String" />
        <property name="password" type="java.lang.String" />
    </class>
</hibernate-mapping>

再将映射文件User.hbm.xml的路径添加到hibernate.cfg.xml

        <mapping resource="entity/User.hbm.xml"/>

四、根据映射文件创建数据库表

在src/test/java下创建一个Test类

public class Test {

    @Test
    public void testSchemaExport(){
        //创建配置对象
        Configuration config = new Configuration().configure();
        //创建服务注册对象
        ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
        .applySettings(config.getProperties()).buildServiceRegistry();
        //创建SessionFactory
        SessionFactory sessionFactory = config.buildSessionFactory(serviceRegistry);
        //创建session对象
        Session session = sessionFactory.getCurrentSession();
        //创建SchemaExport对象
        SchemaExport schemaExport = new SchemaExport(config);
        schemaExport.create(true, true);
    }

}

运行junit即可生成user表

版权声明:感觉我写的还算不错的的话希望你能够动动你的鼠标和键盘为我点上一个赞或是为我奉献上一个评论,在下感激不尽!_______________________________________________________欢迎转载,希望在你转载的同时,添加原文地址,谢谢配合

使用Maven实现Struts2+Hibernate4+Spring3整合SSH框架(二):导入Spring的jar包并添加测试实现

在maven项目中添加Spring4的支持,并测试搭建。

使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境

使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境 一.新建Maven项目 1.新建一个Web Project 创建好的项目如下图所示: 2.修改默认的J...
  • fenyu8
  • fenyu8
  • 2016年11月02日 13:50
  • 1623

SSH框架搭建和整合(struts2、spring4、hibernate5)

声明:  本博文是个人通过对ssh框架的学习、理解还有一些看法而描述出来的,可能有不足之处,请大家谅解,但希望能帮助到大家!   目的:使初学者能更好的去了解SSH框架。 给以后的自己,也给别人一个参...

jbpm4整合struts2+spring2.5+hibernate3.3入门实例教程

jbpm4整合struts2+spring2.5+hibernate3.3入门实例教程,代码下载地址:http://www.zuidaima.com/share/1751866898320384.ht...

使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境

做了三年多的JavaEE开发了,在平时的JavaEE开发中,为了能够用最快的速度开发项目,一般都会选择使用Struts2,SpringMVC,Spring,Hibernate,MyBatis这些开源框...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Struts2+Hibernate4整合
举报原因:
原因补充:

(最多只允许输入30个字)