给自己的学习做一个标记,以便更好的前进。
<hibernate-configuration>
<session-factory>
<!--local connection properties-->
<property name="hibernate.connection.url">
jdbc:microsoft:sqlserver://127.0.01:1433;databaseName=数据库的名字
</property> 配置数据库路径 我这里写得是本机的服务器
<property name="hibernate.connection.dirver_class">
com.microsoft.jdbc.sqlserver.SQLServerDriver
</property>配置数据库驱动 这里我写的是sqlserver 2005的连接词
<property name="hibernate.connection.username">用户名</property>
<property name="hibernate.connection.password">密码</property>
<property name="dialect">
org.hibernate.dialect.SQLServerDialect
</property>方言设置 hibernate有很多报错都是方言问题,但大多数和这个并没有关系,是连接数据库的问题。比如说我就碰到过这样一个问题,费了我不少时间。sql server2000与2005并存的联结不到2005的数据库,只能连结2k的,端口1433被2k占用,用hibernate连接的时候就汇报方言错误。其实,方言是可选项。
<property name="hibernate.show.sql">true</property>配置是否在控制端输出sql语句
<property name="hibernate.transaction.factory_class">
<mapping resourse="xxx.hbm.xml"/>填写你的表的xml配置文件
</session-factory>
</hibernate-configuration>
<hibernate-mapping package="表的映射类包的存放位置">
<class
name="类名"
table="表名" 如果碰到表名正好是sql server保留关键字的话需要加[]来声明,之后的hql就不用了像sql那样加[]了
>
<meta attribute="sync-Dao">false</meta>
<id
name="类中变量名"
type="类型"
column="表中列名"
>
<generator class="native"/>
</id>
<property
name="类中的变量名"
column="表中列名"
type="类型"
not-null="非空设置" ture or false
/>属性设置
<set name="" inverse="true' casecade="sace-update">
<key column=""/>
<one-to-many class=""/>
</set>
</class>
xxx.hbm.xml文件注意事项:
Hibernate默认表名与指定类同名;
<class>元素包含唯一的<id>子元素,至少一个<property>子元素;
<set>元素
invese属性:控制权交由对方控制 when true
casecade属性:用来设定级联操作关联对象权限
<key>为待映射类对应表的外键
<one to many>为待映射类的名称
这里只是简单的作介绍给一些想学hibernate的人一条方便之路,给大家分享一些我碰到过的问题,希望对大家的学习有帮助。代码都是手打的,可能会有一点小错误,请原谅