hibernate毗连mysql的例子
当前位置:以往代写 > JAVA 教程 >hibernate毗连mysql的例子
2019-06-14

hibernate毗连mysql的例子

hibernate毗连mysql的例子

副标题#e#

本日用了一下java的数据库耐久化-业务的hibernate框架。下面给出hibernate 毗连mysql数据库示例

建表布局如下

mysql> desc test;
+———-+————–+——+—–+———+—————-+
| Field    | Type         | Null | Key | Default | Extra          |
+———-+————–+——+—–+———+—————-+
| id       | int(11)      | NO   | PRI | NULL    | auto_increment |
| username | varchar(100) | NO   |     | NULL    |                |
+———-+————–+——+—–+———+—————-+
2 rows in set (0.00 sec)

mysql>

hibernate设置文件 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="show_sql">true</property>  
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>  
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>  
<property name="connection.url">jdbc:mysql://192.168.25.152/test</property>  
<property name="connection.username">这里写用户名</property>  
<property name="connection.password">暗码</property>  
<mapping resource="user.hbm.xml" />  
</session-factory>  
</hibernate-configuration>

表映射 user.hbm.xml

<?xml version='1.0' encoding='UTF-8'?>  
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">  
<hibernate-mapping>  
<class name="com.TestDb" table="test">  
    <id name="id" column="id">  
        <generator class="increment" />  
    </id>  
    <property name="username" column="username"  />  
</class>  
</hibernate-mapping>

表映射类

package com;  
      
/** 
* Created by IntelliJ IDEA. 
* User: Administrator 
* Date: 2006-2-6 
* Time: 22:10:05 
* To change this template use File | Settings | File Templates. 
*/
public class TestDb {  
private String username;  
private Long id;  
      
public Long getId() {  
return id;  
}  
      
public void setId(Long id) {  
this.id = id;  
}  
      
public String getUsername() {  
return username;  
}  
      
public void setUsername(String myname) {  
this.username = myname;  
}  
}


#p#副标题#e#

测试类

package com;  
      
      
import java.util.List;  
      
import org.hibernate.Query;  
import org.hibernate.Session;  
import org.hibernate.SessionFactory;  
import org.hibernate.Transaction;  
import org.hibernate.cfg.Configuration;  
      
public class test {  
          
    //遍历  
    public static void all()  
    {  
        Query q = session.createQuery("select c.id,c.username from TestDb as c");  
              
        List l = q.list();  
        for(int i=0;i<l.size();i++)  
        {  
            //TestDb user = (TestDb)l.get(i);  
            //System.out.println(user.getUsername());  
      
              Object[] row = (Object[])l.get(i);;  
              Long id = (Long)row[0];  
              String name = (String)row[1];    
              System.out.println(id+" "+name);  
        }  
    }  
          
    //读取  
    public static void load()  
    {  
        TestDb obj = (TestDb) session.load(TestDb.class, new Long(2));  
        System.out.println(obj.getUsername());  
    }  
          
    //更新  
    public static void update()  
    {  
        TestDb obj = (TestDb) session.load(TestDb.class, new Long(2));  
        obj.setUsername("cg");  
    }  
          
    //插入  
    public static void insert()  
    {  
        TestDb user = new TestDb();  
        user.setUsername("sb");  
      
        session.save(user);  
    }  
          
    static SessionFactory sessionFactory;  
    static Session session ;  
    static Transaction tx ;  
          
    private static void init()  
    {  
        sessionFactory = new Configuration().configure().buildSessionFactory();  
        session = sessionFactory.openSession();  
        tx = session.beginTransaction();  
    }  
          
    private static void close()  
    {  
        tx.commit();  
        session.close();  
        sessionFactory.close();  
    }  
          
    public static void main(String[] args)   
    {  
        init();  
        update();  
        close();  
    }  
}

文件布局

hibernate毗邻mysql的例子

    关键字:

在线提交作业