idea 配置Hibernate:
在这里插入图片描述
注意:每个表需要设主键,不然掭的pojo类会报错
然后导入数据库驱动:
pom.xml
//MySql 驱动
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
//Oracle驱动
<dependency>
<groupId>cn.easyproject</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.2.0</version>
</dependency>
如果生成的mapping.xml文件,又没在resource文件里,需要在pom.xml添加:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
然后在hibernate.cfg.xml文件里添加用户名和密码:
<!-- mysql账户名 -->
<property name="connection.username">root</property>
<!-- mysql密码 -->
<property name="connection.password">root</property>
<!-- 数据库方言 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- 显示sql语句 -->
<property name="show_sql">true</property>
<!-- Oracle 账户名 -->
<property name="connection.username">c##zeng</property>
<!-- Oracle l密码 -->
<property name="connection.password">123456</property>
有外键关系的pojo属性生成的关联对象需要在get方法上把@JoinColumn注解加上:,insertable=false,updatable=false
@ManyToOne
@JoinColumn(name = "SGRADE", referencedColumnName = "GID",insertable=false,updatable=false)
public Grade getGradeBySgrade() {
return gradeBySgrade;
}
也可以在新键数据库连接的时候不要有外键关系的字段: