?
我的環境是:eclipse 、mysql數據庫。
?
一:先創建一個普通的java項目。
?
步驟:File→new→Project 。如果直接看不到Project 就選擇Other →General→Project
在project name處輸入項目名字。其他選項根據需要填寫。
?
二:導入hibernate需要的包。
?
?????所需要的包:<!--StartFragment -->
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <!-- sessionFactory --> <session-factory> <!--配置數據庫驅動類 --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <!--數據庫連接的url ,最后要跟數據庫的名稱--> <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/school</property> <!--數據庫賬號 --> <property name="hibernate.connection.username">root</property> <!--數據庫密碼 --> <property name="hibernate.connection.password">root</property> <!--數據庫方言--> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!--<property name="hibernate.hbm2ddl.auto">create</property>--> <property name="hibernate.show_sql">true</property> <!-- 映射實體類配置文件 --> <mapping resource="com/coney/school/model/Teacher.hbm.xml"/> </session-factory> </hibernate-configuration>?
這句。現在注釋掉就可以正常添加了。不會覆蓋原來的數據。
public class Teacher { private Long tid; private String tname; private String tpwd; private String tclass; private String tschool; // 此處省略掉 get...set...方法 }?在建這個實體類的時候也出過一個問題,就是命名不對。
<?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 package="com.coney.school.model"> <!-- 實體類包 --> <class name="Teacher" table="teacher"> <!-- name對應實體類名稱, table 對應數據庫表名 --> <!-- ID name 對應實體類字段,column 數據庫表字段--> <id name="tid" type="java.lang.Long" ><!--type :java類型--> <column name="tid" ><!--column 數據庫表字段 not-null:不為空 ,length:長度,default:默認值--> <comment>表ID</comment><!-- 注釋 --> </column> <generator class="increment"/> <!--序列生成器, 字段增長 --> </id> <!--其他字段基本上一樣,name 實體類字段,column 數據庫表字段,length 長度,not-null 不為空 --> <property name="tname" column="tName" length="20" not-null="true"></property> <property name="tpwd" column="tPwd" length="20" not-null="true"></property> <property name="tclass" column="tClass" length="20" not-null="true"></property> <property name="tschool" column="tSchool" length="20" not-null="true"></property> </class> </hibernate-mapping>?
package com.coney.school.test; import org.hibernate.*; import org.hibernate.cfg.Configuration; import com.coney.school.model.Teacher; public class TestConn { public static void main(String[] args){ Configuration config = new Configuration().configure("hibernate.cfg.xml"); //調用hibernate配置文件,讀取配置文件信息。 SessionFactory sf = config.buildSessionFactory(); //讀完之后,再用這個對象來生成一個SessionFactory Session session = sf.openSession(); Transaction tx = session.beginTransaction(); tx.begin(); //有了SessionFactory就可以開Session了,可以用事務提交了. Teacher m = new Teacher(); m.setTname("小小"); m.setTpwd("xx"); m.setTclass("小班"); m.setTschool("翠花幼兒園"); session.save(m); tx.commit(); //提交 } }?

更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
