1. 程式人生 > >Hibernate(鏈接數據庫方便得多)!

Hibernate(鏈接數據庫方便得多)!

技術分享 generator alt upd () mit nec control dtd

首先讓我們看一下配置文件,我這裏先是用struts搞得controller,不明白struts的可以去百度一下這裏就不講解了:

技術分享

之後我們需要做一個hibernate的配置文件內容如下(這裏鏈接的是mysql的數據庫):

<?xml version=‘1.0‘ encoding=‘utf-8‘ ?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost:3306/庫名</property>
<property name="connection.username">用戶名</property>
<property name="connection.password">密碼</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<mapping resource="mapping/JueAction.hbm.xml"></mapping>
<mapping resource="mapping/Quan.hbm.xml"></mapping>
<mapping resource="mapping/User.hbm.xml"></mapping>
</session-factory>
</hibernate-configuration>
等到hibernate這個配置文件寫好我們還需要寫好每個類的配置文件,用處是整理類之間的關系:
<?xml version=‘1.0‘?>
<!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="com.linyi.bean.(你的類名)" table="(你數據庫中的表名)">
     //類中與表中的對應的字段
<id name="id" column="id">
      //設置這個字段為主鍵
<generator class="native" />
</id>
<property name="name" column="name" />
      //下面是表中與外表的關系,比如一對一,一對多,多對一,多對多(這裏就不詳細介紹是什麽了,不明白的可以去問度娘)
      //我這裏寫的是多對多的關系
<set name="用來找關系的字段名" table="中間關系表的表名" cascade="save-update">
<key column="關系表中用來維護關系的字段名"></key>
<many-to-many column="關系表中維護另一個表關系的字段名" class="com.linyi.bean.(這個字段關聯的表)" lazy="false"></many-to-many>
</set>
</class>
</hibernate-mapping>
這些配置文件要根據你的類寫出來,需要多少就寫多少,配置好之後我們就可以運用hibernate了,接下來讓我們看一下查詢數據是有多便利:
//這裏只是一個測試public class Test1 {
    //寫出你需要調用的方法
public List<類名> test1(){
    //這一段直接考過去就是,雖說有些方法 已經過時了,可還是蠻好用的,不要問我為什麽用過時的方法,因為我是菜鳥,別的不會。。
Configuration con = new Configuration().configure();
SessionFactory sessionFactory = con.buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
    //在這裏我們就可以使用hql的語句來進行查詢了,看起來是不是簡單又刺激呢?
     //這是一個條件查詢,如果你不需要條件,where之後你就不需要哦!
String hql = "from com.linyi.bean.(註意這裏使用類名就可以哦) where name = :name";
Query query = session.createQuery(hql);
    //這裏是用來給語句中的某個變量賦值,可以自己寫,也可以從別的類傳過來哦!
query.setParameter("name","admin1");
    //我們可以的到這個類的list集合哦!
List<類名> 變量名 = query.list();
transaction.commit();
session.close();
     return 變量名;
}
}
這裏需要註意導包
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
這些是hibernate需要用到的包,可以自己去官網下載
這樣的一套下來是不是很簡單呢,這裏只給大家展示了普通的查詢,還有其他的刪除,修改,添加之類的大家也可以去
hibernate官網上去尋找哦!很簡單的,方便了好多有木有?

Hibernate(鏈接數據庫方便得多)!