草庐IT

QueryDSL-JPA

全部标签

java - 在调用 @PreUpdate 方法之前清除 JPA @Transient 字段

我有一个用户实体类,我正在尝试为其进行密码哈希处理。我认为最简单的方法是创建一个用@Transient注释的密码字段和一个散列密码字段,该密码字段是在使用@PrePersist和@PreUpdate注释的方法持久化对象之前设置的。所以我有这样的东西:@TransientprivateStringpassword;privateStringhashedPassword;@PrePersist@PreUpdateprivatevoidhashPassword(){if(password!=null){hashedPassword=PasswordHasher.hashPassword(pa

java - JPA @ElementCollection 如何查询?

我正在使用SpringJPA,为了向我的实体添加一个字符串列表,我正在使用@ElementCollection,如下所示。@ElementCollectionprivateMapcategories;当我使用它时,它会生成一个名为subscription_categories的表,其中包含以下列subscription(varchar)、catergories(varchar)和caterogies_key(int)如果我在桌面上使用我的SQL工具,我可以使用以下命令很好地查询此表select`subscription_categories`.`subscription`from`su

java - 在 SE 环境中将 JPA 实体 jar 与 persistence.xml 分离

有没有一种方法可以在多个SE应用程序中重用带有JPA注释实体的jar(作为依赖项)?SE环境不支持persistence.xml中的,还有其他方法吗? 最佳答案 官方(根据规范),您必须使用class元素指定所有类。引用JSR-220的6.2.1.6mapping-file,jar-file,class,exclude-unlisted-classes一章:Alistofnamedmanagedpersistenceclassesmayalsobespecifiedinsteadof,orinadditionto,theJARfil

java - 最佳实践 : best database naming convention for JPA?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭2年前。Improvethisquestion在Java中,属性和类(实体)的命名约定是CamelCase方式:@EntitypublicclassUserMessageimplementsSerializable{@IdprivateIntegerid;privateStringshortTitle;privateStringlongTitle;privateStringhtmlMessage;}但在SQL世界中,它被认为是best

java - 将kafka与jpa一起使用时的良好做法

我目前在一个使用JPA和Kafka的项目中。我正试图找到一组组合这些操作的良好实践。在现有的代码中,生产者与jpa在同一个事务中使用,但是,从我读到的内容来看,它们似乎不共享一个事务。@PostMapping@TransactionalpublicXDtocreateX(@RequestBodyXRequestrequest){Xdtodto=xService.create(request);kafkaProducer.putToQueue(dto,Type.CREATE);returndto;}其中kafka生产者定义如下:publicclassKafkaProducer{@Auto

java - JPA - @OneToMany 作为 map

这似乎是一个很常见的案例,但作为JPA新手,我很难弄清楚这一点。我正在使用EclipseLink和PostgreSQL,但这应该只与JPA规范有关。我有一张tablePRIMARY它有一个ID,然后是一堆其他列。还有一张tableSECONDARY在PRIMARY中有一个外键表也​​称为ID.这SECONDARY表有一个复合键ID和代表语言环境的varchar。所以,在Primary实体我想要一个类型为Map的字段其中键是来自SECONDARY的语言环境字符串表和条目是Secondary实体。我的Secondary类看起来像这样:@EntitypublicclassSecondary{

java - 用于 Java 持久性的 JPA 或 Hibernate?

我正在研究使用Java、.NET和Groovy开发企业应用程序。对于每个平台,我们将尝试实现一个简单的SOAPWeb服务有多难。我们将使用最常用的工具和库,尽可能准确地研究现实世界。在这方面,当使用Hibernate进行持久化时,是使用新的JPA(JavaPersistenceAPI)还是使用JPA出现之前存在的Hibernate自定义API更好地反射(reflect)现实世界? 最佳答案 您可能已经知道,从3.2开始,Hibernate已通过JPA认证。您可以轻松地将Hibernate用作JPA提供程序,而无需使用任何Hibern

java - 是否可以使用同一个 CriteriaBuilder (JPA 2) 实例来创建多个查询?

这似乎是一个非常简单的问题,但我还没有设法找到明确的答案。我有一个DAO类,它自然地通过使用标准查询来查询数据库。所以我想知道使用相同的CriteriaBuilder实现来创建不同的查询是否安全,或者我是否必须为每个查询创建新的CriteriaBuilder实例。以下代码示例应该说明我想做什么:publicclassDAO(){CriteriaBuildercb=null;publicDAO(){cb=getEntityManager().getCriteriaBuilder();}publicListgetNames(){CriteriaQuerynameSearch=cb.crea

java - 有没有办法扫描 JPA 实体而不在 persistence.xml 文件中声明持久类?

我想利用JPA@Entity注释而不是将类实体声明为J2SEpersistence.xml文件。我想避免的事情:org.hibernate.ejb.HibernatePersistencecom.mycompany.entities.Class1com.mycompany.entities.Class2com.mycompany.entities.Class3这就是我实际的persistence.xml看起来很像org.hibernate.ejb.HibernatePersistence是否有一种标准方法可以从JAR模块中扫描persistence.xml文件中的JPA实体?是否有一种

java - Spring 数据 JPA( hibernate ): How do I retrieve a concrete entity using only a field in its abstract superclass?

考虑以下层次结构,其中实体WidgetA和WidgetB扩展抽象Widget父类(superclass):@Entity@Inheritance(strategy=InheritanceType.JOINED)publicabstractclassWidgetimplementsSerializable{@Column(name="serialNumber",length=64,nullable=false,unique=true)privateStringserialNumber;...和@EntitypublicclassWidgetAextendsWidgetimplements