Hibernate学习之路(8) Hibernate注解

修改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 + "]";
    }

猜你喜欢

转载自blog.csdn.net/qecode/article/details/80946134