Spring整合JPA时,为实体类添加@Entity注解时提示The type MultipartEntity is deprecated
这个情况是由于导入错了Entity包所导致的。
按住Alt+T时,会有两个关于@Entity的提示 org.hibernate.annotations.Entity 和 javax.persistence.Entity,我们应该使用javax.persistence.Entity。此时就不会出现过时的提示。
@org.hibernate.annotations.Entity 和 @javax.persistence.Entity 的区别:
JPA的Entity类和Hibernate的Entity类都符合Java对象的POJO模型,具体定义如下:
1) JPA 2.1规范的Entity类
Entity类必须被明确声明,这可以通过@javax.persistence.Entity标注或者XML配置文件。
Entity类必须是top-level的类。
为了支持运行时动态代理实现的延迟加载,Entity类必须定义一个public或protected的无参数的构造函数,还可以有其他构造函数。
为了支持运行时动态代理实现的延迟加载,Entity类不能是final的,其中的方法或实例变量都不能是final的。
如果Entity类的对象可能会被远程调用,则Entity类还必须实现java.io.Serializable接口。
Entity类可以是抽象类。Entity类可以继承非Entity类和Entity类,而非Entity类也可以继承Entity类。
Enum或接口不能被声明为Entity。
Entity类的持久化状态是通过Entity类的实例变量表示的。实例变量只能通过Entity类中的方法访问。
2) Hibernate的Entity类基本与JPA 2.1规范的Entity类类似,只有如下区别
Entity类必须定义一个非private(即可以是public、protected或默认)的无参数的构造函数,还可以有其他构造函数。
Entity类不必是top-level的类。
Entity类不必是final的,其中的方法或实例变量也不必是final的。但如果是final的,则无法利用代理的延迟加载功能。
Entity类的实例变量可以被Entity类之外的其他方法访问
Always import @javax.persistence.Entity
@org.hibernate.annotations.Entity是@javax.persistence.Entity的一个补充,但不是后者的替代品
如果想使用@org.hibernate.annotations.Entity所包含的特殊的功能的话,需要在添加@javax.persistence.Entity的基础上增加注释,如下:
//optimisticLock 乐观锁
@Entity
@org.hibernate.annotations.Entity(optimisticLock=OptimisticLockType.ALL)
public class MyEntity implements Serializable {
...
}
Hibernate5-Entity
Spring整合JPA时,为实体类添加@Entity注解时提示The type MultipartEntity is deprecated的更多相关文章
- Spring Data JPA 多个实体类表联合视图查询
Spring Data JPA 查询数据库时,如果两个表有关联,那么就设个外键,在查询的时候用Specification创建Join 查询便可.但是只支持左连接,不支持右连接,虽说左右连接反过来就能实 ...
- 使用jpa时,实体类有不存在数据库中的字段
使用jpa时,实体类有不存在数据库中的字段.在改属性上面加上这个注解@Transient就可以解决问题.
- Spring 整合 JPA
spring 整合 jpa 客户的基本CRUD 依赖 <properties> <spring.version>4.2.4.RELEASE</spring.version ...
- Entity Framework中的实体类添加复合主键
使用Code First模式实现给实体类添加复合主键,代码如下: using System; using System.Collections.Generic; using System.Compon ...
- Java定义bean实体类中的变量时变量名的问题
首先:TMD,这个问题花了我两个多小时,居然是因为一个字母的大小写导致的,我瞬间就&Y^%^&%&()*%¥%¥¥&^#@%&; 事情是酱紫的: 我定义了一个变 ...
- 当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出?
当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出? 问题: orderStatus 和 payStatus都是枚举类,并且枚举的个数达地10来个,我们不可能在模板页面(jsp/ftl ...
- 项目实体类使用@Data注解,但是项目业务类中使用getA(),setA()方法报错,eclipse中配置lombok
@Data注解来源与Lombok,可以减少代码中大量的set get方法,大量减少冗余代码,但是今天部署项目时候,发现实体类使用@Data注解,但是项目业务类中使用getA(),setA()方法报错. ...
- 【spring data jpa】使用spring data jpa 的删除操作,需要加注解@Modifying @Transactional 否则报错如下: No EntityManager with actual transaction available for current thread - cannot reliably process 'remove' call
使用spring data jpa 的删除操作,需要加注解@Modifying @Transactional 否则报错如下: No EntityManager with actual tran ...
- 【hibernate/JPA】对实体类的的多个字段建立唯一索引,达到复合主键的效果【spring boot】注解创建唯一索引和普通索引
对实体类的的多个字段建立唯一索引,达到复合主键的效果 package com.sxd.swapping.domain; import lombok.Getter; import lombok.Sett ...
随机推荐
- flask 数据迁移
python flasky.py shell db.create_all() from app.models import User mhc = User("mhc") >& ...
- C++11之nullptr
[C++11空指针] 1.NULL的问题 class Test { public: void TestWork(int index) { std::cout << "TestWo ...
- 在zookeeper集群的基础上,搭建伪solrCloud集群
伪集群的搭建:将solrCloud搭建到同一台机器上. 准备工作 1 将在window中部署的单机版solr上传到服务器(虚拟机)中 solr的简单部署:在tomcat中启动slor 的内容 这一次放 ...
- 前向渲染路径细节 Forward Rendering Path Details
正向渲染路径细节 Forward Rendering Path Details Forward Rendering path renders each object in one or more pa ...
- Gson 是google解析Json的一个开源框架,同类的框架fastJson,JackJson
Gson 是google解析Json的一个开源框架,同类的框架fastJson,JackJson等等 本人fastJson用了两年,也是从去年才开始接触Gson,希望下面的总结会对博友有用,至于Gso ...
- Python之FTP传输-乾颐堂
访问FTP,无非两件事情:upload和download,最近在项目中需要从ftp下载大量文件,然后我就试着去实验自己的ftp操作类,如下(PS:此段有问题,别复制使用,可以参考去试验自己的ftp类! ...
- IIS请求筛选模块被配置为拒绝包含双重转义序列的请求404.11
文件目录有这样一个包含了加号的文件:2015年日历表(A4+版).pdf 现在要求下载此文件,考虑这样一个url /UploadFile/2015年日历表(A4+版).pdf 如果在浏览器访问这个ur ...
- Debug 时,执行语句
Display View The Display View displays the result of evaluating an expression in the context of the ...
- Linux基础系统权限
Linux基础系统权限 文件权限 Linux中,每个文件拥有三种权限 权限 对文件的影响 对目录的影响 r(读取) 可读取文件 可列出目录内容 w(写入) 可修改文件内容 可在目录中创建删除文件 x( ...
- 编写高质量代码改善C#程序的157个建议——建议138:事件和委托变量使用动词或形容词短语命名
建议138:事件和委托变量使用动词或形容词短语命名 事件和委托使用场景是调用某个方法,只不过这个方法由调用者赋值.这决定了对应的变量应该以动词或形容词短语命名. 关于事件和委托变量妥当的命名示例如下: ...