浅谈NetBeans下配置Hibernate连接MySQL 5
创始人
2024-04-02 06:22:12
0

NetBeans下配置Hibernate连接MySQL 5前提:

首先安装Hibernate 2.1

其次安装MySQL 5

然后安装mysql-connector-java-3.1.12-bin.jar

需要有Netbeans 5.XIDE

1 .配置Hibernate库

在Netbeans 的Tools->Library Manager中点 New Library,在Library Name中输入 hibernate 2.1

然后点OK,在ClassPath 中点 Add JAR/Folder,选择{Hibernate安装目录}\lib 添加所有的文件。

 再选择JavaDoc,点Add JAR/Folder 选择{Hibernate安装目录}\doc\api。这样可以获得doc

2 .这里配置MySQL的库

用#1同样的方法配置mysql-connector-java-3.1.12-bin.jar,只不过选择添加的是mysql-connector-java-3.1.12-bin.jar

然后再netbeans的工程视图下,右键点 library,选择添加library,把前面添加好的hibernate 2.1和 MySQL connector添加进去

3. 在MySQL中建立一个schmeate 叫test ,再建立一个table叫CUSTOMER,其中有几个属性,分别是id[bigint(20)],name[varchar],
 email[varchar],phonenumber[varchar],其中id是primer key

4. 在netbeans中建立一个Customer类。具体代码如下

  1. package jdbctest;  
  2. import java.io.Serializable;  
  3. import java.sql.Date;  
  4. import java.sql.Timestamp;  
  5. /**  
  6.  *  
  7.  * @author AlarnMartin  
  8.  */  
  9. public class Customer implements Serializable  
  10. {  
  11.       
  12.     /** Creates a new instance of Customer */  
  13.     public Customer ()  
  14.     {  
  15.     }  
  16.     /**  
  17.      * 设置OID  
  18.      * @param id OID,用来区分实例的ID  
  19.      */  
  20.     public void setId(Long id)  
  21.     {  
  22.         this.id = id;  
  23.     }  
  24.     /**  
  25.      * 获得OID,可以用customerA.getId().compar(customerB.getId())来比较两个实例是否一样  
  26.      * @return OID 用来区分是否是同一条记录  
  27.      */  
  28.     public Long getId()  
  29.     {  
  30.         return this.id;  
  31.     }  
  32.     public void setName(String name)  
  33.     {  
  34.         this.name = name;  
  35.     }  
  36.     public String getName()  
  37.     {  
  38.         return this.name;  
  39.     }  
  40.     public void setEmail(String email)  
  41.     {  
  42.         this.email = email;  
  43.     }  
  44.     public String getEmail()  
  45.     {  
  46.         return this.email;  
  47.     }  
  48.     public void setPassword(String password)  
  49.     {  
  50.         this.password = password;  
  51.     }  
  52.     public String getPassword()  
  53.     {  
  54.         return this.password;  
  55.     }  
  56.     public void setPhone(int phone)  
  57.     {  
  58.         this.phone = phone;  
  59.     }  
  60.     public int getPhone()  
  61.     {  
  62.         return this.phone;  
  63.     }  
  64.      private Long id;  
  65.     private String name;  
  66.     private String email;  
  67.     private String password;  
  68.     private int phone;  
  69.     }  

    
5 .在Netbeans 建立一个 Customer.hbm.xml文件,注意这个XML文件不能放到包内,因为前面的类已经放到了jdbctest包内了,而且由于其他原因,所以这个XML不能放到包内,具体代码如下: 

  1.  version="1.0" encoding="UTF-8"?> 
  2.     PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"   
  3.     "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">   
  4.  
  5.    name="jdbctest.Customer" table="CUSTOMERS"> 
  6.        
  7.     
  8.      name="id" column="ID" type="long"> 
  9.        class="increment"/> 
  10.     id> 
  11.      name="name"  column="NAME"  type="string" not-null="true" />    
  12.      name="email"     column="EMAIL"     type="string" not-null="true" />   
  13.      name="password"  column="PASSWORD"  type="string" not-null="true"/>   
  14.      name="phone"     column="PHONE"     type="int" />   
  15.      name="address"   column="ADDRESS"   type="string" />   
  16.       
  17.   class> 
  18.  
  19. hibernate-mapping> 

6.再建立一个hibernate.cfg.xml

具体内容如下:

  1.  version=’1.0’ encoding=’UTF-8’?> 
  2.           "-//Hibernate/Hibernate Configuration DTD 2.0//EN"  
  3.           "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd"> 
  4.  
  5.  
  6.  
  7.  
  8.      
  9.          name="connection.username">rootproperty> 
  10.          name="connection.url">jdbc:MySQL://localhost:3306/testproperty> 
  11.          name="dialect">net.sf.hibernate.dialect.MySQLDialectproperty> 
  12.          name="connection.password">bd643012property> 
  13.          name="connection.driver_class">org.gjt.mm.MySQL.Driverproperty> 
  14.    
  15.    resource="Customer.hbm.xml"/> 
  16.     session-factory> 
  17.  
  18. hibernate-configuration> 

7.再建立一个Test类进行测试

  1. package jdbctest;  
  2. import net.sf.hibernate.*;  
  3. import net.sf.hibernate.cfg.*;  
  4. import java.math.*;  
  5. public class Test {  
  6.  
  7.  /**  
  8.   * @author 鲍冠辰  
  9.   */  
  10.  public static void main(String[] args) throws Exception{  
  11.   // TODO Auto-generated method stub  
  12.   SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();   
  13.  
  14.   Customer customer = new Customer();  
  15.     customer.setId(Long.valueOf("4"));  
  16.     customer.setName("martin");  
  17.     customer.setEmail("tain198127@163.com");  
  18.     customer.setPassword("123456");  
  19.     Session session = sessionFactory.openSession();  
  20.     Transaction tx = session.beginTransaction();  
  21.     session.save(customer);  
  22.     tx.commit();  
  23.     session.close();  
  24.     sessionFactory.close();  
  25.     System.out.println("ok");  
  26.  }  
  27.  
  28. }  

执行一下吧,再看看MySQL的变化。

大家可以发现,如果更换了其他的数据库的话,只需要配置一下XML文件就可以了。这就是NetBeans下配置Hibernate连接MySQL 5的具体步骤。

【编辑推荐】

  1. 开源NetBeans 5.5集成开发环境(IDE)正式推出
  2. 新版NetBeans让PHP开发更轻松
  3. NetBeans 6.0预览版发布 Sun再引惊呼
  4. 使用NetBeans和Eclipse开发PHP应用程序
  5. 八大技术牛人点评NetBeans 6.5

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...