Questions tagged «jpa»

Java Persistence API(JPA)是Java规范,用于访问,持久化和管理Java对象/类与关系数据库之间的数据。它是EJB 3.0规范的一部分,并且是对象到关系映射(ORM)的行业标准方法。

3
在实体中使用Enum时进行查询的问题
我在Question实体中具有以下内容: @NamedQuery(name = "Question.allApproved", query = "SELECT q FROM Question q WHERE q.status = 'APPROVED'") 和 @Enumerated(EnumType.STRING) private Status status; // usual accessors 我收到此异常: 异常描述:编译查询[Question.countApproved:SELECT COUNT(q) FROM Question q WHERE q.status = 'APPROVED'],第1行,第47列:无效的枚举等于表达式时出错,无法将type的enum值与type [myCompnay.application.Status]的非enum值进行比较[java.lang.String]。在org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:501) 我该如何解决?
83 java  jakarta-ee  jpa 

1
JPA实体管理器是否应该关闭?
我有下面的方法。 public Profile readUser(String email){ EntityManager em = EMF.get().createEntityManager(); return em.find(Profile.class, email); } 实体管理器的上述用法可以吗?或者有必要关闭em吗?有任何建议。
82 java  jpa 

4
如何在Spring Data中使用@Transactional?
我刚刚开始从事Spring数据,Hibernate,MySQL,JPA项目。我切换到spring-data,以便不必担心手动创建查询。 我注意到@Transactional当您使用spring-data时不需要使用of,因为我也尝试了没有注释的查询。 有特定的原因为什么我应该/不应该使用@Transactional注释? 作品: @Transactional public List listStudentsBySchool(long id) { return repository.findByClasses_School_Id(id); } 也可以: public List listStudentsBySchool(long id) { return repository.findByClasses_School_Id(id); } 提前致谢!

3
JPA:@JoinColumn和@PrimaryKeyJoinColumn之间的区别?
@JoinColumn和之间的确切区别是@PrimaryKeyJoinColumn什么? 您使用@JoinColumn的列是外键的一部分。典型的列可能看起来像(例如,在具有附加属性的联接表中): @ManyToOne @JoinColumn(name = "...") private OtherClass oc; 如果我也将列也提升为a / PK(又称为识别关系)会怎样?由于该列现在是PK,因此我必须用标记@Id: @Id @ManyToOne @JoinColumn(name = "...") private OtherClass oc; 现在的问题是: 是@Id+@JoinColumn上面一样@PrimaryKeyJoinColumn? @ManyToOne @PrimaryKeyJoinColumn(name = "...") private OtherClass oc; 如果没有,那@PrimaryKeyJoinColumn有什么用?

4
@Entity和@Table中的名称属性
我有一个疑问,因为@Entity和@Table中都存在name属性 例如,允许名称属性具有相同的值 @Entity(name = "someThing") @Table(name = "someThing") 我也可以在同一班上使用不同的名字 @Entity(name = "someThing") @Table(name = "otherThing") 谁能告诉我这两者之间有什么区别,为什么我们两者都具有相同的属性?

9
使用JPA / EJB代码的“传递给持久错误的分离实体”
我正在尝试运行以下基本JPA / EJB代码: public static void main(String[] args){ UserBean user = new UserBean(); user.setId(1); user.setUserName("name1"); user.setPassword("passwd1"); em.persist(user); } 我收到此错误: javax.ejb.EJBException: javax.persistence.PersistenceException: org.hibernate.PersistentObjectException: detached entity passed to persist: com.JPA.Database 有任何想法吗? 我在互联网上搜索,发现的原因是: 这是由创建对象的方式引起的,即,如果您显式设置ID属性。删除ID分配即可解决。 但是我没有得到,我必须修改什么才能使代码正常工作?
81 java  jpa  ejb-3.0 

12
Google App Engine上的Java版JDO与JPA
我想使用Struts2在Google App Engine上开发项目。对于数据库,我有两个选项JPA和JDO。你们能建议我吗?两者对我来说都是新手,我需要学习它们。因此,在您回复之后,我将重点介绍一个。 谢谢。

2
CascadeType.REFRESH实际做什么?
什么是CascadeType.REFRESH真正做? 它的定义是 刷新实体时,此字段中保存的所有实体也会刷新 但这实际上意味着什么?有人可以给我一个简单的例子吗?
81 java  jpa 

8
将PostgreSQL JSON列映射到Hibernate实体属性
我的PostgreSQL数据库(9.2)中有一个表,其中的列类型为JSON。我很难将此列映射到“ JPA2实体”字段类型。 我尝试使用String,但是当我保存实体时,出现一个异常,即它无法将字符转换为JSON。 处理JSON列时使用什么正确的值类型? @Entity public class MyEntity { private String jsonPayload; // this maps to a json column public MyEntity() { } } 一个简单的解决方法是定义一个文本列。

3
JPA:如何将字符串保留到数据库字段中,键入MYSQL Text
要求是用户可以写一篇文章,因此我Text为contentmysql数据库中的字段选择类型。我如何转换Java String成MySQL Text 干得好 Jim Tough @Entity public class Article implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; private Long userId; private String title; private String content; private Integer vote; //Constructors, setters, getters, equals and hashcode } 在我的MYSQL数据库中,content类型为Text。我希望会有这样的东西java.sql.Text,因为这java.sql.Blob是一个实际的类型,但可惜的是,这并不存在
80 java  mysql  orm  jpa 


3
验证错误:值无效
我对ap:selectOneMenu有问题,无论我做什么,我都无法让JSF调用JPA实体上的setter。JSF验证失败,并显示以下消息: 形式:位置:验证错误:值无效 我正在同一类型的其他几个类上工作(例如,联接表类),但是我一生都无法工作。 如果有人可以针对此类问题提出一些故障排除/调试提示,将不胜感激。 使用日志语句,我已经验证了以下内容: 该Conveter是回到正确的,非null数值。 我的JPA实体中没有Bean验证。 该设置器setLocation(Location location)从不被调用。 这是我能做的最简单的例子,它根本不起作用: <h:body> <h:form id="form"> <p:messages id="messages" autoUpdate="true" /> <p:selectOneMenu id="location" value="#{locationStockList.selected.location}" converter="locationConverter"> <p:ajax event="change" update=":form:lblLocation"/> <f:selectItems value="#{locationStockList.locationSelection}"/> </p:selectOneMenu> </h:form> </h:body> 转换器: @FacesConverter(forClass=Location.class, value="locationConverter") public class LocationConverter implements Converter, Serializable { private static final Logger logger = Logger.getLogger(LocationConverter.class.getName()); @Override public Object getAsObject(FacesContext …



5
HQL或Java持久性查询语言中的条款
我有以下参数化的JPA或Hibernate查询: SELECT entity FROM Entity entity WHERE name IN (?) 我想将参数作为ArrayList <String>传递,这可能吗?休眠电流告诉我, java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.String 这有可能吗? 回答:集合作为参数只能与“ :name”这样的命名参数一起使用,而不能与“ ”这样的JDBC样式参数一起使用?。
78 java  hibernate  jpa  hql  jpql 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.