现在的位置: 首页 > 综合 > 正文

学习Hibernate

2013年07月28日 ⁄ 综合 ⁄ 共 2703字 ⁄ 字号 评论关闭

项目结构

 

News.java和NewsTest.java是另一个小项目,不用理会。

 

1、建立UserName.java类

package com.cfc.hibernate;

public class UserName {

	private int id;
	private String name;
	private String password;

	public int getId() {
		return this.id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return this.name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPassword() {
		return this.password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
}

2、建立UserName.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="com.cfc.hibernate">
	
	
	<class name="UserName">
		<id name="id">
			<generator class="native"></generator>
		</id>
		<property name="name" />
		<property name="password" />
	</class>
	
	
	
</hibernate-mapping>

3、建立:hibernate.cfc.xml

<!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="hibernate.connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>  
            <!-- 数据库名称地址 -->  
            <property name="hibernate.connection.url">jdbc:jtds:sqlserver://localhost:1433;DatabaseName=hibernatedemo01</property>  
            <!-- 数据库用户名 -->  
            <property name="hibernate.connection.username">sa</property>  
            <!-- 数据库密码 -->  
            <property name="hibernate.connection.password">1234</property>  
            <!-- 配置数据库适配器.可以直接使用相关数据库的相关特点-->  
            <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>  
            
            <!-- 根据需要自动创建数据表 -->  
            <property name="hibernate.hbm2ddl.auto">update</property>
            
            <!-- 打印sql语句到控制台 --> 
            <property name="hibernate.show_sql">true</property>  
            <!-- 对打印的Sql语句进行格式化 -->  
            <property name="hibernate.format_sql">true</property>  
              
             
            <!-- 对资源进行映射 -->  
            <mapping resource="com/cfc/hibernate/UserName.hbm.xml"/>  
        </session-factory>  
    </hibernate-configuration>  

4、测试类:Test.java

package com.cfc.hibernate.demo;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

import com.cfc.hibernate.UserName;

public class Test {

	public static void main(String[] args){
		try{
			Configuration conf=new Configuration().configure();
			
			SessionFactory sf=conf.buildSessionFactory();
			
			Session sess=sf.openSession();
			Transaction tx=sess.beginTransaction();
			UserName user=new UserName();
			user.setName("ss");
			user.setPassword("22");
			sess.save(user);
			tx.commit();
			sess.close();
			System.out.print("end");
		}catch(Exception e){
			e.printStackTrace();
		}
		
	}
}

结果是:

 

总结:

1、之前的UserName.java曾用User.java。因为之前建立过,后又删了。出现了问题(总说:Caused by: java.sql.SQLException: 在关键字 'User' 附近有语法错误,后在网上查到相关资料,换名就行了)。

2、原先使用的是驱动是微软的。但出现了问题,上网找一些资料。说是微软提供的驱动有bug。于是改了用了jtds-1.2.2.jar。问题解决

hibernate相关的包已经上传。不是完整版。http://download.csdn.net/detail/caikule/5112687

抱歉!评论已关闭.