使用Hibernate Annotations
这篇post承接上一篇,用来说明如何使用注解替代映射xml文件。使用注解会很方便,减少了元数据的行数,并且注解是类型安全的。如果注解就是你想从JPA中获得的唯一东西——即用注解取代XML,那么只需要进行如下改动:
主要的变动如下:
1.需要另外导入的包
hibernate/lib/jpa/
hibernate/lib/jpa-metamodel-generator/
里面的两个jar文件,用来支持注解映射
2.删掉映射xml文件,即Message.hbm.xml文件
3.使用注解映射Message类
package test.domainwithannotation; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; @Entity public class Message { @Id @GeneratedValue @Column(name="MESSAGE_ID") private Long id; @Column(name="MESSAGE_TEXT") private String text; @ManyToOne(cascade=CascadeType.ALL) @JoinColumn(name="NEXT_MESSAGE_ID") private Message nextMessage; public Message(){ } public Message(String text){ this.text = text; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getText() { return text; } public void setText(String text) { this.text = text; } public Message getNextMessage() { return nextMessage; } public void setNextMessage(Message nextMessage) { this.nextMessage = nextMessage; } }
4.更改hibernate.cfg.xml文件中
将<mapping resource="test/domain/Message.hbm.xml" />
改为<mapping class="hello.Message" />
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。