国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

開(kāi)發(fā)框架hibernate3.0開(kāi)發(fā)實(shí)例

2019-11-18 14:28:40
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  建議是有一點(diǎn)點(diǎn)是一點(diǎn)點(diǎn)基礎(chǔ)的人又沒(méi)有hibernate基礎(chǔ)和經(jīng)驗(yàn)的人比較適合(所謂一點(diǎn)點(diǎn)基礎(chǔ)是最起碼不要我介紹一些配置文件的什么的.).注重我用的JDBC驅(qū)動(dòng)com.inet.tds.TdsDriver
  
  大家一起努力學(xué)習(xí)吧.
  
  建立PO對(duì)象
  
  建PO對(duì)象Customer、Order以及它們的hibernate配置文件
  
  /*
  * Created on 2005-10-12
  *
  * TODO To change the template for this generated file go to
  * Window - PReferences - java - Code Style - Code Templates
  */
  package testdemo;
  
  import java.util.HashSet;
  import java.util.Set;
  
  /**
  * @author liuzj
  *
  * TODO To change the template for this generated type comment go to Window -
  * Preferences - Java - Code Style - Code Templates
  */
  
  public class Customer {
  private int id;
  
  private String username;
  
  private String passWord;
  
  private Set orders = new HashSet();
  
  public Customer() {
  }
  
  public Customer(String username, String password, Set orders) {
  this.username = username;
  this.password = password;
  
  this.orders = orders;
  
  }
  
  public int getId() {
  return id;
  }
  
  public String getPassword() {
  return password;
  }
  
  public String getUsername() {
  return username;
  }
  
  public Set getOrders() {
  return orders;
  }
  
  public void setId(int id) {
  this.id = id;
  }
  
  public void setPassword(String password) {
  this.password = password;
  }
  
  public void setUsername(String username) {
  this.username = username;
  }
  
  public void setOrders(Set orders) {
  this.orders = orders;
  }
  
  }
  
  <?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="testdemo.Customer" table="CUSTOMER" dynamic-insert="true" dynamic-update="true">
  <id name="id" column="ID">
  <generator class="increment" />
  </id>
  <property name="username" column="USERNAME" />
  <property name="password" column="PASSWORD" />
  
  <set
  name="orders"
  inverse="true"
  cascade="save-update"
  >
  <key column="CUSTOMER_ID" />
  <one-to-many class="testdemo.Order" />
  </set>
  
  </class>
  </hibernate-mapping>
  
  /*
  * Created on 2005-10-13
  *
  * TODO To change the template for this generated file go to
  * Window - Preferences - Java - Code Style - Code Templates
  */
  package testdemo;
  
  /**
  * @author liuzj
  *
  * TODO To change the template for this generated type comment go to
  * Window - Preferences - Java - Code Style - Code Templates
  */
  
  import java.io.Serializable;
  public class Order implements Serializable {
  
  private Long id;
  private String orderNumber;
  private double price;
  private Customer customer;
  
  public Order() {
  }
  public Order(String orderNumber,double price,Customer customer) {
  this.orderNumber=orderNumber;
  this.price=price;
  this.customer=customer;
  }
  public Long getId() {
  return this.id;
  }
  
  public void setId(Long id) {
  this.id = id;
  }
  
  public String getOrderNumber() {
  return this.orderNumber;
  }
  
  public void setOrderNumber(String orderNumber) {
  this.orderNumber = orderNumber;
  }
  
  public Customer getCustomer() {
  return this.customer;
  }
  
  public void setCustomer(Customer customer) {
  this.customer = customer;
  }
  
  public double getPrice(){
  return this.price;
  }
  private void setPrice( double price ){
  this.price = price;
  }
  }
  
  <?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 package="testdemo">
  
  <class name="Order" table="ORDERS">
  
  <id name="id">
  <generator class="increment"/>
  </id>
  
  <property name="orderNumber" column="ORDER_NUMBER"/>
  <property name="price" />
  
  <many-to-one
  name="customer"
  column="CUSTOMER_ID"
  class="Customer"
  not-null="true"
  />
  
  </class>
  </hibernate-mapping>
  
  上面的PO已經(jīng)建立完成,下面是一個(gè)測(cè)試類
  
  /*
  * Created on 2005-10-12
  *
  * TODO To change the template for this generated file go to
  * Window - Preferences - Java - Code Style - Code Templates
  */
  package testdemo;
  
  import java.util.HashSet;
  
  import org.hibernate.session;
  import org.hibernate.SessionFactory;
  import org.hibernate.Transaction;
  import org.hibernate.cfg.Configuration;
  
  import testdemo.Customer;
  
  /**
  * @author liuzj
  *
  * TODO To change the template for this generated type comment go to Window -
  * Preferences - Java - Code Style - Code Templates
  */
  
  public class Test {
  
  SessionFactory sessionFactory = new Configuration().configure().addClass(
  testdemo.Customer.class).addClass(Order.class).buildSessionFactory();
  Session session = sessionFactory.openSession();
  public void saveCustomer(Customer customer) throws Exception {
  
  Transaction tx = null;
  try {
  tx = session.beginTransaction();
  session.save(customer);
  
  tx.commit();
  
  } catch (Exception e) {
  if (tx != null) {
  tx.rollback();
  }
  throw e;
  } finally {
  session.close();
  }
  }
  
  public void testmethod()throws Exception
  {
  Customer customer=new Customer("lzhengj","001",new HashSet());
  Order order1=new Order("Order",1000,customer);
  Order order2=new Order("Order",2000,customer);
  customer.getOrders().add(order1);
  customer.getOrders().add(order2);
  this.saveCustomer(customer);
  
  }
  
  public static void main(String[] args) {
  
  try{
  new Test().testmethod();
  
  }catch(Exception e)
  {
  System.out.println("this is the testmethod throw exception.....");
  e.printStackTrace();
  }
  
  }
  }
  
  ok,下面是一個(gè)hibernate的配置hibernate.cfg.xml(位于應(yīng)用目錄下面)
  
  <!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="hibernate.connection.url">
  jdbc:inetdae:localhost:1433?charset=gbk&database=hibernate_test
  </property>
  <property name="hibernate.connection.driver_class">
  com.inet.tds.TdsDriver
  </property>
  <property name="hibernate.connection.username">
  sa
  </property>
  <property name="hibernate.connection.password">
  aa
  </property>
  <property name="hibernate.dialect">
  org.hibernate.dialect.SQLServerDialect
  </property>
  <property name="show_sql">
  true
  &

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 霸州市| 杭锦旗| 英山县| 油尖旺区| 罗甸县| 高雄市| 绥德县| 怀仁县| 子长县| 通江县| 即墨市| 涟水县| 左云县| 阿坝县| 民丰县| 静安区| 蓬安县| 新巴尔虎右旗| 东港市| 嵊泗县| 涞源县| 克山县| 东山县| 泸溪县| 高碑店市| 泉州市| 百色市| 蒙自县| 嘉兴市| 页游| 灵武市| 府谷县| 建阳市| 金秀| 长宁区| 兰州市| 庆云县| 若尔盖县| 平定县| 松桃| 鄂托克前旗|