数据库执行脚本 if exists (select * from dbo.sysobjects where id = object_id(N’[dbo].[person]’) and OBJECTPROPERTY(id, N’IsUserTable’) = 1) drop table [dbo].[person] GO CREATE TABLE [dbo].[person] ( [id] [varchar] (30) COLLATE Chinese_PRC_CI_AS NOT NULL , [name] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL , [password] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL , [sex] [varchar] (2) COLLATE Chinese_PRC_CI_AS NULL , [email] [varchar] (30) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY] GO
1.hibernate.cfg.xml,放在classes文件夹下
<?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">
<!-- Generated by MyEclipse Hibernate Tools. --> <hibernate-configuration>
<session-factory> <property name="connection.username">sa</property> <property name="connection.url"> jdbc:microsoft:sqlserver://127.0.0.1:1433;database=sample </property> <property name="dialect"> org.hibernate.dialect.SQLServerDialect </property> <property name="myeclipse.connection.profile"> mssql_con </property> <property name="connection.password">sa</property> <property name="connection.driver_class"> com.microsoft.jdbc.sqlserver.SQLServerDriver </property>
<!-- mapping files --> <mapping resource="guozi/hibernate/demo/Person.hbm.xml" />
</session-factory>
</hibernate-configuration>
2.Person.java package guozi.hibernate.demo; //POJO类 public class Person { private String id; private String name; private String password; private String sex; private String email; public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getId() { return id; } public void setId(String 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; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } } 4。Person.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"> <!-- Mapping file autogenerated by MyEclipse - Hibernate Tools --> <hibernate-mapping> <class name="guozi.hibernate.demo.Person" table="person" schema="dbo" catalog="sample"> <id name="id" type="string"> <column name="id" length="30" /> <generator class="assigned" /> </id> <property name="name" type="string"> <column name="name" length="20" not-null="true" /> </property> <property name="password" type="string"> <column name="password" length="20" not-null="true" /> </property> <property name="sex" type="string"> <column name="sex" length="2" /> </property> <property name="email" type="string"> <column name="email" length="30" /> </property> </class> </hibernate-mapping>
5.PersonOperate.java
package guozi.hibernate.demo;
import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration;
//具体操作hibernate的操作 //增加、删除、修改,按ID查询,模糊查询、全部查询的操作 public class PersonOperate { //在hibernate中,所有的操作都是通过Session完成 private Session session=null; //在构造方法中完成实例化session对象 public PersonOperate(){ //找到hibernate配置 Configuration config=new Configuration().configure(); //从配置中取得SessionFactory SessionFactory factory=config.buildSessionFactory(); //从SessionFactory中取出一个session this.session=factory.openSession(); } //所有的操作都是通过session进行的 //向数据库中增加数据 public void insert(Person p) { //开始事务 Transaction tran=this.session.beginTransaction(); //执行程序 this.session.save(p); //提交事务 tran.commit(); }
}
6.TestPO.java
package guozi.hibernate.demo;
public class TestPO {
/** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //生成POJO类实例化对象 Person p=new Person(); p.setId("1"); p.setName("郭勇"); p.setPassword("123456"); p.setSex("男"); p.setEmail("ydsakyclguozi@hotmail.com"); //实例化PersonOperate对象 PersonOperate po=new PersonOperate(); po.insert(p); }
}
|