修改hibernate.cfg.xml
<?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>
<!--
配置SessionFactory
SessionFactory用于创建Session对象
Session对象就是hibernate中操作数据库的核心对象
创建SessionFactory必须的三个部分
第一部分:
连接数据库的信息
第二部分:
hibernate的可选配置
第三部分:
映射文件的位置
-->
<session-factory>
<!-- 第一部分:连接数据库的信息 -->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate?characterEncoding=UTF-8 </property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">123456</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<!-- 可选配置 -->
<!-- 显示sql语句 -->
<property name="hibernate.show_sql">true</property>
<!-- 格式化输出sql语句 -->
<property name="hibernate.format_sql">true</property>
<!-- 采用哪种方式生成DDL语句
update:表示检查实体类的映射配置和数据库的表结构是否一致,如果不一致,更新表结构
-->
<property name="hibernate.hbm2ddl.auto">update</property>
<!-- 把session和线程绑定,从而实现一个线程只有一个session -->
<property name="hibernate.current_session_context_class">thread</property>
<!-- 映射配置文件的位置 -->
<!-- <mapping resource="entity/Customer.hbm.xml" />-->
<!-- 现在不再映射配置文件,而是直接映射实体类 -->
<mapping class="entity.Customer" />
</session-factory>
</hibernate-configuration>
看这里
在实体类中加上注解
加上注解之后就不用写Customer.hbm.xml文件了
@Entity//表明该类是实体类,导入javax.persistence.Entity;
@Table(name="Customer")//建立实体类与表的关系
public class Customer {
@Id//表明当前字段是主键
@Column(name="custid")//表明对应数据库字段是custid
@GeneratedValue(strategy=GenerationType.IDENTITY)//strategy:使用JPA提供的主键生成策略
private int custid;
@Column(name="custName")
private String custName;
@Column(name="custSource")
private String custSource;
@Column(name="custIndustry")
private String custIndustry;
@Column(name="custLevel")
private String custLevel;
@Column(name="custAddress")
private String custAddress;
@Column(name="custPhone")
private String custPhone;
public Customer(int custid, String custName) {
super();
this.custid = custid;
this.custName = custName;
}
public Customer() {
super();
}
public int getCustid() {
return custid;
}
public void setCustid(int custid) {
this.custid = custid;
}
public String getCustName() {
return custName;
}
public void setCustName(String custName) {
this.custName = custName;
}
public String getCustSource() {
return custSource;
}
public void setCustSource(String custSource) {
this.custSource = custSource;
}
public String getCustIndustry() {
return custIndustry;
}
public void setCustIndustry(String custIndustry) {
this.custIndustry = custIndustry;
}
public String getCustLevel() {
return custLevel;
}
public void setCustLevel(String custLevel) {
this.custLevel = custLevel;
}
public String getCustAddress() {
return custAddress;
}
public void setCustAddress(String custAddress) {
this.custAddress = custAddress;
}
public String getCustPhone() {
return custPhone;
}
public void setCustPhone(String custPhone) {
this.custPhone = custPhone;
}
@Override
public String toString() {
return "Customer [custid=" + custid + ", custName=" + custName
+ ", custSource=" + custSource + ", custIndustry="
+ custIndustry + ", custLevel=" + custLevel + ", custAddress="
+ custAddress + ", custPhone=" + custPhone + "]";
}