<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/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:///test_hibernate</property> <property name="connection.username">root</property> <property name="connection.password">pass</property> <property name="hbm2ddl.auto">update</property> <!-- hbm2ddl.auto设置为create运行会删除老的表,创建新的表结构;置为update,防止因为创建新的表删除了输入的数据 --> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!-- Hibernate根据你选择的“dialect方言”,针对每种数据库,作调整,如生成不同的SQL语句等 --> <property name="show_sql">true</property><!-- 运行时打印sql语句 --> <mapping resource="cn/itcast/hibernate/domain/User.hbm.xml"/> </session-factory> </hibernate-configuration> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="cn.itcast.hibernate.domain"> <class name="User" table="User"><!-- table可以不写,默认为缺省User与java类名一致。 --> <id name="id" column="id"><!-- id表示主键 name是对应java类的属性 ;column是对应数据库表中的列名,这里可以不写(为默认值)--> <generator class="native" /><!-- generator是hibernate内置主键生成器 native是其中的一种--> </id> <property name="name" column="name"/><!-- property表示的是属性,java类中对应的属性 --> <property name="brithday" column="brithday"/><!-- column是对应数据库表中的列名,这里可以不写(为默认name的值) --> </class> </hibernate-mapping> <!-- 映射中若使用的数据库是Oracle数据库,则class 中默认与name属性值相同的User是Oracle中的关键字 ,解决办法:1.改为其他2.table中用反引号区别,table="`user`"-->
Hibernate配置文件hibernate.cfg.xml、类与表间的关系映射文件Student.hbm.xml的书写和属性注解
最新推荐文章于 2021-11-02 10:34:08 发布