简单的使用hibernate插入数据的例子

数据库创建脚本:

 

  1. drop table person  
  2.   
  3. create table person(  
  4.     id          varchar(32)         not null primary key,  
  5.     name        varchar(20)         not null,  
  6.     password    varchar(20)         not null,  
  7.     sex         varchar(20)         ,  
  8.     email       varchar(30)           
  9. )  



 

Person类

 

  1. package org.lz.hibernate;  
  2.   
  3. public class Person { //POJO类  
  4.     private String id;  
  5.     private String name;  
  6.     private String password;  
  7.     private String sex;  
  8.     private String email;  
  9.       
  10.     public String getId() {  
  11.         return id;  
  12.     }  
  13.     public void setId(String id) {  
  14.         this.id = id;  
  15.     }  
  16.     public String getName() {  
  17.         return name;  
  18.     }  
  19.     public void setName(String name) {  
  20.         this.name = name;  
  21.     }  
  22.     public String getPassword() {  
  23.         return password;  
  24.     }  
  25.     public void setPassword(String password) {  
  26.         this.password = password;  
  27.     }  
  28.     public String getSex() {  
  29.         return sex;  
  30.     }  
  31.     public void setSex(String sex) {  
  32.         this.sex = sex;  
  33.     }  
  34.     public String getEmail() {  
  35.         return email;  
  36.     }  
  37.     public void setEmail(String email) {  
  38.         this.email = email;  
  39.     }  
  40.   
  41. }  

 

 

PersonOperator类:

 

  1. package org.lz.hibernate;  
  2.   
  3. import org.hibernate.Session;  
  4. import org.hibernate.SessionFactory;  
  5. import org.hibernate.Transaction;  
  6. import org.hibernate.cfg.Configuration;  
  7.   
  8. public class PersonOperator {  
  9.     private Session session = null;  
  10.     public PersonOperator() {  
  11.         Configuration config = new Configuration();  
  12.         SessionFactory factory = config.configure().buildSessionFactory();  
  13.         this.session = factory.openSession();  
  14.     }  
  15.     // 所有的操作都是通过session来完成的  
  16.     public void PersonInsert(Person p) {  
  17.         Transaction tran = this.session.beginTransaction();//开始事物  
  18.         this.session.save(p);//执行  
  19.         tran.commit();//提交  
  20.     }  
  21. }  

 

 

测试方法:

 

  1. package org.lz.hibernate;  
  2.   
  3. public class TestPO {  
  4.   
  5.       
  6.     public static void main(String[] args) {  
  7.           
  8.         Person p = new Person();  
  9.         p.setId("1");  
  10.         p.setName("root");  
  11.         p.setPassword("123456");  
  12.         p.setSex("男");  
  13.         p.setEmail("163@163.com");  
  14.           
  15.         //通过实例化的Person对象插入数据  
  16.         PersonOperator po = new PersonOperator();  
  17.         po.PersonInsert(p);  
  18.   
  19.     }  
  20.   
  21. }  


配置文件:

 

person.hbm.xml:

 

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"  
  3. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">  
  4. <!--  
  5.     Mapping file autogenerated by MyEclipse Persistence Tools 
  6. -->  
  7. <hibernate-mapping>  
  8.     <class name="org.lz.hibernate.Person" table="PERSON" schema="SCOTT">  
  9.         <id name="id" type="java.lang.String">  
  10.             <column name="ID" length="32" />  
  11.             <generator class="assigned" />  
  12.         </id>  
  13.         <property name="name" type="java.lang.String">  
  14.             <column name="NAME" length="20" not-null="true" />  
  15.         </property>  
  16.         <property name="password" type="java.lang.String">  
  17.             <column name="PASSWORD" length="20" not-null="true" />  
  18.         </property>  
  19.         <property name="sex" type="java.lang.String">  
  20.             <column name="SEX" length="20" />  
  21.         </property>  
  22.         <property name="email" type="java.lang.String">  
  23.             <column name="EMAIL" length="30" />  
  24.         </property>  
  25.     </class>  
  26. </hibernate-mapping>  


hibernate.cfg.xml:

 

 

  1. <?xml version='1.0' encoding='UTF-8'?>  
  2. <!DOCTYPE hibernate-configuration PUBLIC  
  3.           "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  
  4.           "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">  
  5.   
  6. <!-- Generated by MyEclipse Hibernate Tools.                   -->  
  7. <hibernate-configuration>  
  8.   
  9. <session-factory>  
  10.     <property name="dialect">  
  11.         org.hibernate.dialect.Oracle9Dialect  
  12.     </property>  
  13.     <property name="connection.url">  
  14.         jdbc:oracle:thin:@127.0.0.1:1521:ORCL  
  15.     </property>  
  16.     <property name="connection.username">scott</property>  
  17.     <property name="connection.password">tiger</property>  
  18.     <property name="connection.driver_class">  
  19.         oracle.jdbc.driver.OracleDriver  
  20.     </property>  
  21.     <property name="myeclipse.connection.profile">  
  22.         OracleDriver  
  23.     </property>  
  24.     <property name="show_sql">true</property>  
  25.     <mapping resource="org/lz/hibernate/Person.hbm.xml" />  
  26.   
  27. </session-factory>  
  28.   
  29. </hibernate-configuration>  
posted on 2015-01-22 15:16  我是齐欢  阅读(1552)  评论(0编辑  收藏  举报