hibernate怎么連接mysql數(shù)據(jù)庫(kù)?
發(fā)表時(shí)間:2023-07-23 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]教大家如何把hibernate連接mysql數(shù)據(jù)庫(kù),只要大家跟著我下面的步驟走,就絕對(duì)沒(méi)有問(wèn)題的。代碼都是可以直接用到或者復(fù)制的。1.首先,我們把hibernate最基本的數(shù)據(jù)庫(kù)連接,使用mysql...
教大家如何把hibernate連接mysql數(shù)據(jù)庫(kù),只要大家跟著我下面的步驟走,就絕對(duì)沒(méi)有問(wèn)題的。代碼都是可以直接用到或者復(fù)制的。
1.首先,我們把hibernate最基本的數(shù)據(jù)庫(kù)連接,使用mysql。 見一個(gè)java工程,見一個(gè)包名為book, 在book的包下加一個(gè)java類Book.java,其代碼如下:
package book; public class Book { private Integer id; private String name; private String writer;
public Integer get hibernate
最基本的數(shù)據(jù)庫(kù)連接,使用mysql。 見一個(gè)java工程,見一個(gè)包名為“book”
2.然后在在book的包下加一個(gè)java類Book.java,其代碼如下:
package book;
public class Book
{
private Integer id;
private String name;
private String writer;
public Integer getId()
{
return id;
}
public void setId(Integer id)
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getWriter()
{
return writer;
}
public void setWriter(String writer)
{
this.writer = writer;
}
}
3.然后在book包下建一個(gè)book.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">
<hibernate-mapping package="book" default-lazy="false">
<class name="Book">
<id name="id">
<generator class="increment"/>
</id>
<property name="name" ></property>
<property name="writer" ></property>
</class>
</hibernate-mapping>
4.這個(gè)事與數(shù)據(jù)庫(kù)里面的字段名形成映射關(guān)系,自己在mysql建立book表時(shí)與之對(duì)應(yīng),id是自增長(zhǎng)的, 然后在工程的根目錄下建一個(gè)hibernate.cfg.xml.其代碼如下:
<?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">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/mydb</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
<!-- <property name="hbm2ddl.auto">${hibernate.hbm2ddl.auto}</property>-->
<!-- <property name="current_session_context_class">thread</property>-->
<mapping resource="book/Book.hbm.xml" />
</session-factory>
</hibernate-configuration>
5.這是連接mysql數(shù)據(jù)庫(kù)的,用戶名和密碼改為你mysql數(shù)據(jù)庫(kù)的
<property name="show_sql">true</property>這是在后臺(tái)打印sql語(yǔ)句
<mapping resource="book/Book.hbm.xml" />這是找到映射文件。
6.然后些個(gè)測(cè)試類:代碼如下:
package test;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import book.Book;
public class MainTest {
/**
* @param args
*/
public static void main(String[] args) {
try {
Configuration cfg=new Configuration()。configure();
SessionFactory sf=cfg.buildSessionFactory();
Session session = sf.openSession();
Transaction ts=session.beginTransaction();
Book b=new Book();
b.setName("hibernate");
b.setWriter("div");
session.save(b);
// Book b=(Book) session.get(Book.class,1);
// if(b!=null){
// b.setName("xujun");
// System.out.println("書名為:"+b.getName());
// System.out.println("作者為:"+b.getWriter());
// session.delete(b); // } ts.commit();
session.close(); sf.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
7.mysql表的字段如下:
8.把數(shù)據(jù)庫(kù)建好后就可以測(cè)試。對(duì)了,關(guān)鍵的還沒(méi)有說(shuō),還得把a(bǔ)ntlr.jar,cglib.jar,asm.jar,asm-attrs.jar,commons-colletions.jar,commons-logging.jar,ehcache.jar, jta.jar,dom4.jar,log4.jar,hibernate3.jar引入到lib目錄下
以上就是hibernate如何連接mysql數(shù)據(jù)庫(kù)?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。