- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3大框架注解方式
3大框架注解方式JPA Hibernate 注解发布日期:12-02-21 02:25 文章来源:互联网JPA注解1、@Entity(name=EntityName)必须,name为可选,对应数据库中一的个表2、@Table(name=,catalog=,schema=)可选,通常和@Entity配合使用,只能标注在实体的class定义处,表示实体对应的数据库表的信息name:可选,表示表的名称.默认地,表名和实体名称一致,只有在不一致的情况下才需要指定表名catalog:可选,表示Catalog名称,默认为Catalog().schema:可选,表示Schema名称,默认为Schema().3、@id必须@id定义了映射到数据库表的主键的属性,一个实体只能有一个属性被映射为主键.置于getXxxx()前.4、@GeneratedValue(strategy=GenerationType,generator=)可选strategy:表示主键生成策略,有AUTO,INDENTITY,SEQUENCE?和?TABLE 4种,分别表示让ORM框架自动选择,根据数据库的Identity字段生成,根据数据库表的Sequence字段生成,以有根据一个额外的表生成主键,默认为AUTOgenerator:表示主键生成器的名称,这个属性通常和ORM框架相关,例如,Hibernate可以指定uuid等主键生成方式.示例:????@Id????@GeneratedValues(strategy=StrategyType.SEQUENCE)????publicint getPk() {???????returnpk;????}5、@Basic(fetch=FetchType,optional=true)可选@Basic表示一个简单的属性到数据库表的字段的映射,对于没有任何标注的getXxxx()方法,默认即为@Basicfetch:?表示该属性的读取策略,有EAGER和LAZY两种,分别表示主支抓取和延迟加载,默认为EAGER.optional:表示该属性是否允许为null,默认为true示例:????@Basic(optional=false)????publicString getAddress() {???????returnaddress;????}6、@Column可选@Column描述了数据库表中该字段的详细定义,这对于根据JPA注解生成数据库表结构的工具非常有作用.name:表示数据库表中该字段的名称,默认情形属性名称一致nullable:表示该字段是否允许为null,默认为trueunique:表示该字段是否是唯一标识,默认为falselength:表示该字段的大小,仅对String类型的字段有效insertable:表示在ORM框架执行插入操作时,该字段是否应出现INSETRT语句中,默认为trueupdateable:表示在ORM框架执行更新操作时,该字段是否应该出现在UPDATE语句中,默认为true.对于一经创建就不可以更改的字段,该属性非常有用,如对于birthday字段.columnDefinition:表示该字段在数据库中的实际类型.通常ORM框架可以根据属性类型自动判断数据库中字段的类型,但是对于Date类型仍无法确定数据库中字段类型究竟是DATE,TIME还是TIMESTAMP.此外,String的默认映射类型为VARCHAR,如果要将String类型映射到特定数据库的BLOB或TEXT字段类型,该属性非常有用.示例:????@Column(name=BIRTH,nullable=false,columnDefinition=DATE)????publicString getBithday() {???????returnbirthday;????}7、@Transient可选@Transient表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性.如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient,否则,ORM框架默认其注解为@Basic示例:????//根据birth计算出age属性????@Transient????publicint getAge() {???????returngetYear(new Date()) - getYear(birth);????}8、@ManyToOne(fetch=FetchType,cascade=CascadeType)可选@ManyToOne表示一个多对一的映射,该注解标注的属性通常是数据库表的外键optional:是否允许该字段为null,该属性应该根据数据库表的外键约束来确定,默认为truefetch:表示抓取策略,默认为Fe
您可能关注的文档
最近下载
- CNAS认可实验室质量手册及程序文件模版及表格.docx
- 第四章(3) 软镜聚合物、硅水凝胶、制造工艺.pdf VIP
- 标准图集-07FK02-防空地下室通风设备安装.pdf VIP
- 消除艾滋病梅毒和乙肝母婴传播培训总结.docx VIP
- 二年级数学口算天天练.docx VIP
- 2025年西安铁路职业技术学院单招考试文化素质数学考试历年机考真题集含完整答案详解【考点梳理】.docx VIP
- 第四章(2) 软镜参数设计.pdf VIP
- 民航专业工程施工工期标准.pdf VIP
- 全国高中生物理竞赛课件11:天体运动种种.pptx VIP
- 2024年6月全国大学英语CET六级真题和答案解析(第一套) .pdf VIP
原创力文档


文档评论(0)