看看下面这些代码部分,是最近在学习别人的代码中的一部分,在这个项目中,没有一个*.hbm.xml配置文件,PO中的写法如下面的代码,只有在hibernate.cfg.xml文件中有类似配置映射的配置;
<mapping class="hz.aaa.bo.DicFlow"/>请教下,此类映射是如何实现的,是手动写的还是用什么工具自动生成?不会是用XDoclet这个东东吧?myeclipse能生成这种形式的映射配置么?这样的配置,如何与数据库实现映射,能否简单阐述下原理package hz.aaa.bo;
@SuppressWarnings("serial")
@Entity
@Table(name="DIC_FLOW")
@Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class DicFlow  extends BaseModel{
    // Fields         private String flowId;
     private String flowName;    // Property accessors    @Id
    @Column(name = "FLOW_ID", unique = true, nullable = false, length = 32)
    @GeneratedValue(generator = "system-uuid")
@GenericGenerator(name = "system-uuid", strategy = "uuid")
    public String getFlowId() {
        return this.flowId;
    }
    
    public void setFlowId(String flowId) {
        this.flowId = flowId;
    }    @Column(name = "FLOW_NAME")
    public String getFlowName() {
        return this.flowName;
    }
    
    public void setFlowName(String flowName) {
        this.flowName = flowName;
    }
}

解决方案 »

  1.   

    首先它是根据你的类路径即是<mapping class="hz.aaa.bo.DicFlow"/>
    加载的
    因为你配置这些个@SuppressWarnings("serial")
    @Entity
    @Table(name="DIC_FLOW")
    @Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
    符号代码(因为这些符号,有一个jar文件会识别,会加载)呵呵!
      

  2.   

    这是myEclipse自动生成的,找视图下的DataBase Explorer 与自己的数据库连接上后,双击表,逆向Hibernate就OK了,这些类都是你不用管的,直接封装了增删改查。