关闭

Hibernate 的基本配置

176人阅读 评论(0) 收藏 举报
分类:

一:所需基本jar包:

 hibernate3.jar                   这个是hibernate最主要的jar包

 cglib-2.2.jar   高效的代码生成工具, Hibernate用它在运行时扩展 Java类和实现 Java 接口

antlr-2.7.6.jar                    语言转换工,Hibernate利用它实现 HQL 到 SQL的转换

commons-collection-3.1.jar       Apache 的工具集,用来增强Java对集合的处理能力

dom4j-1.6.1.jar                            dom4j XML 解析器

javassist-3.12.0.GA.jar                 用于对Java字节码(. class )文件进行操作,功能强大

jta-1.1.jar                                     标准的 JAVA 事务处理接口

hibernate-jpa-2.0-api-1.0.0.Final.jar  使用注解需要的jar

slf4j-api-l.5.8.jar

slf4j-log4j12-1.5.8.jar  

log4j-1.2.15.jar      最后三个包长生日志信息

 

二: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>

        <!-- Database connection settings -->
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.url">jdbc:mysql://localhost/hibernate</property>
        <property name="connection.username">root</property>
        <property name="connection.password">root</property>

        <!-- JDBC connection pool (use the built-in) -->
        <property name="connection.pool_size">1</property>

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

        <!-- Enable Hibernate's automatic session context management -->
        <!-- <property name="current_session_context_class">thread</property> -->

        <!-- Disable the second-level cache  -->
        <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>

        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">true</property>

        <!-- Drop and re-create the database schema on startup -->
      <!--   <property name="hbm2ddl.auto">update</property>-->

        <mapping resource="com/bjsxt/hibernate/Student.hbm.xml"/>
     <mapping class="com.bjsxt.hibernate.Teacher"/>
    </session-factory>

</hibernate-configuration>

三:实体类

package com.bjsxt.hibernate;

public class Student {
 private int id;
 private String name;
 private int age;
 
 
 public int getId() {
  return id;
 }
 public void setId(int id) {
  this.id = id;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public int getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }

 


 类students的 Student.hbm.xml
 <?xml version="1.0"?>
<!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.bjsxt.hibernate.Student">
  <id name="id" />
  <property name="name" />
  <property name="age" />
    </class>
</hibernate-mapping>

 

 

//annotation的使用对于teacher实体

package com.bjsxt.hibernate;

import javax.persistence.Entity;
import javax.persistence.Id;

@Entity
public class Teacher {
 private int id;
 private String name;
 private String title;
 
 @Id
 public int getId() {
  return id;
 }
 public void setId(int id) {
  this.id = id;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public String getTitle() {
  return title;
 }
 public void setTitle(String title) {
  this.title = title;
 }
}

//测试

public class MyTest{

@Test

public  void studentTest() {
  Student s = new Student();
  s.setId(1);
  s.setName("zhangsan");
  s.setAge(8);
  
  Configuration cfg = new Configuration();
  SessionFactory sf= cfg.configure().buildSessionFactory();
  Session session = sf.openSession();
  session.beginTransaction();
  session.save(s);
  session.getTransaction().commit();
  session.close();
  
 }

  @Test

public  void teacherTest {
  Teacher t = new Teacher();
  t.setId(1);
  t.setName("t1");
  t.setTitle("middle");
  
  SessionFactory sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
  Session session = sessionFactory.openSession();
  session.beginTransaction();
  session.save(t);
  session.getTransaction().commit();
  session.close();
  sessionFactory.close();
 }

}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:15072次
    • 积分:663
    • 等级:
    • 排名:千里之外
    • 原创:52篇
    • 转载:10篇
    • 译文:0篇
    • 评论:0条
    文章分类