简单的SSH-Hibernate配置 - 极悦
首页 课程 师资 教程 报名

简单的SSH-Hibernate配置

  • 2022-05-05 09:47:26
  • 612次 极悦

作为SSH开发框架的ORM部分,感觉这个ORM相对于之前使用的一些ORMapping框架来说配置起来比较麻烦。

1.引入Jar包

        <!-- 指定Map.hbm.xml的位置-->
          <mapping resource="net/blogjava/nokiaguy/models/Map.hbm.xml"/>  

一开始只是很基础的引入了hibernat的jar包。后来在调试的时候发现很多jar包丢失了,引入了一个批处理。

2.创建实体类和实体类_数据库对应的xml文件。

比如表结构如下:

那么创建如下实体类:

[java] view plaincopy
<span style="font-size:12px;">package net.blogjava.nokiaguy .models;  
公共类 MapEntity {  
    私有 int id;  
    私有字符串关键字;  
    私有字符串值;  
    public int getId() {  
        返回 id;  
    }  
    public void setId(int id) {  
        this.id = id;  
    }  
    公共字符串 getKeyword() {  
        返回关键字;  
    }  
    公共无效 setKeyword(字符串关键字) {  
        this.keyword = 关键字;  
    }  
    public String getValue() {  
        返回值;  
    }  
    public void setValue(String value) {  
        this.value = value;  
    }          
}  
</span>  

并为此实体类创建一个 xml 映射文件:

[html] view plaincopy
<span style="font-size:12px;"><?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="net.blogjava.nokiaguy.models.MapEntity" table="t_map">  
            <! --将id属性注入自增类型-->  
            <id name="id" column="id" type="int">  
                <generator class="increment"/>  
            </id>  
            <property name="keyword" column="keyword"/>  
            <property name=" value" column="value"/>  
        </class>  
    </hibernate-mapping></span>  

后跟核心配置文件:hibernate.cfg.xml:

[html] view plaincopy
<?xml version="1.0" encoding ="UTF-8"?>  
<!--表示解析XML文件的DTD文档的位置。DTD是Document Type Definition的缩写,是文档类型的定义。XML 解析器使用 DTD 文档来检查 XML 文件的合法性。hibernate.sourceforge.net/hibernate-configuration-3.0dtd可以在Hibernate3.1.3软件包的src\org\hibernate目录下找到 --> 
<!DOCTYPE hibernate-configuration PUBLIC  
          "-//Hibernate/Hibernate Configuration DTD 3.0 //EN"  
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">              
<!-- 表示下面的配置是为session-factory配置的,SessionFactory是Hibernate中的一个类,这个类主要负责保存HIbernate的配置信息,以及Session的操作 -->  
<hibernate -configuration>  
<!--配置数据库驱动,Hibernate连接数据库时需要使用数据库驱动-->  
    <session -factory>  
         <!--设置数据库的连接url:jdbc:mysql:// localhost/**,  
        <property name="connection.url">  
            jdbc:mysql://localhost/testhibernate  
        </property>            
        <!--hibernate.dialect 只是Hibernate使用的数据库方言,就是使用Hibernate来连接那种类型的数据库服务器。-->  
        <property name="dialect">  
            org.hibernate.dialect.MySQLDialect  
        </property>            
        <property name="connection.username">root</property>  
        <property name="connection.password"></property >  
        <!-- 显示hibernate产生的SQL语句-->  
        <property name="show_sql">true</property>  
        <property name="connection.driver_class">  
    </the session-Factory>  
</Hibernate-Configuration >  

里面主要是配置连接的一些需要的参数和实体class_table的配置文件的位置。

3.通过hibernate in action

[java] view plaincopy 调用操作数据库
public String execute()  
        throws Exception  
    {  
        Configuration configuration=new Configuration();  
        会话工厂会话工厂;  
        configuration.configure("/hibernate.cfg.xml");  
        sessionFactory=配置 .buildSessionFactory();  
       //启动一个会话  
        Session session=sessionFactory.openSession();  
        交易transaction=session.beginTransaction();  
       //开始  
        交易 transaction.begin();  
        MapEntity mapEntity1=new MapEntity();  
        mapEntity1.setKeyword("ihu");  
        mapEntity1.setValue("bc...");  
        地图实体地图实体2 =新地图实体();  
        mapEntity2.setKeyword("iou");  
        mapEntity2.setValue("bc...");  
        持久化两个对象 session.save(mapEntity1);  
        session.save(mapEntity2);  
       //提交事务  
        transaction.commit();  
        session.close();  
        结果="保存成功";  
        返回“成功”;  
    }  

以上就是关于“简单的SSH-Hibernate配置”介绍,大家如果想了解更多相关知识,不妨来关注一下极悦的Hibernate视频教程,里面有更丰富的知识等着大家去学习,希望对大家能够有所帮助哦。

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交