草庐IT

jpa-criteria

全部标签

java - JPA 查询语言中的 IN 和 = 运算符

我有一个关于jpa查询的问题。有两个表,即Post表和Tag表Post和Tag是多对多的关系现在我想编写一个查询,以便在选择多个标签时选择与这些标签关联的所有帖子。例如,post1hastagsfriendsandmotivationpost2hastagsmotivationandpunepost3hastagboxing如果选择了标签friends和pune,那么应该检索post1和post2如果选择标签装箱,则仅应检索帖子3如果选择标签装箱和动机,则应检索所有三个帖子。我尝试了以下事情SELECTDISTINCTpFROMPostpJOINp.tagstagsWHEREp.tag

java - 无法从 JPA 实体在 MySql 中生成枚举类型

我正在使用JPA2.1。我想生成像这样的mysql枚举类型列:genderenum('male','female')。我的枚举类是publicenumGender{MALE,FEMALE}在JPA实体类中@EnumeratedprivateGendergender;//generateinttypecolumn和@Enumerated(EnumType.STRING)privateGendergender;//generatevarchartypecolumn.有什么方法可以在MySql中生成枚举类型的列吗? 最佳答案 使用以下代码

java - 如何在 Spring 中将 jpa 属性加载到数据源?

我正在使用SpringbootDataJPA,现在,我有这个:@Configuration@PropertySource("classpath:persistence.properties")@EnableTransactionManagementpublicclassPersistenceConfiguration{@AutowiredprivateEnvironmentenv;@BeanpublicLocalContainerEntityManagerFactoryBeanentityManagerFactory(EntityManagerFactoryBuilderbuilder

java - 从 Spring Data Jpa 查询返回自定义对象

我在jpa存储库类中有一个自定义查询:packageit.univaq.we.internshipTutor.repository;import...publicinterfaceProfessorRepositoryextendsJpaRepository{ListfindAll();...@Query(value="SELECTprofessor.id,professor.department_id,"+"professor.first_name,professor.last_name,"+"professor.email,COUNT(professor_id)ascount"+"

java - JPA 在 ManyToOne 关系中持久化对象

我的数据库中有一个公司/员工@OneToMany关系定义为:@EntitypublicclassEmployee{@Id@GeneratedValue(strategy=GenerationType.IDENTITY)privatelongid;@ManyToOne@JoinColumn(name="companyid")Companycompany;....}@EntitypublicclassCompany{@Id@GeneratedValue(strategy=GenerationType.IDENTITY)privatelongid;...}现在我要将新创建的员工添加到一家独立

java - JPA @Entity 继承

我研究JPA/Hibernate@Entity继承已有一段时间了,但似乎找不到任何可以解决我想要实现的目标的东西。基本上,我希望能够根据需要定义一个包含所有列和表映射的@Entity。然后,我希望能够使用在每个“子实体”的主体中定义的不同组的@Transient方法在许多不同的位置扩展@Entity。这是我正在努力实现但迄今为止没有成功的基本示例:@Entity@Table(name="mountain")publicclassMountainEntityBaseimplementsSerializable{publicIntegermountainId=0;publicInteger

java - 如何在 JPA/Spring-Data JPA 中使用审计?

我在项目中使用JPA和Spring-DataJPA。我有一张表,其中我插入然后更新数据。但是我需要审计信息来保存所有对象的状态,即我需要插入的状态信息和另一个表中的所有后续更新。我知道我可以在数据库中使用触发器来做到这一点。但是,这可以使用JPA/SpringDataJPA来完成吗?如有任何帮助,我们将不胜感激。 最佳答案 JPA规范(section3.5)定义了生命周期回调方法:prePersistpostPersist预删除删除后预更新发布更新加载后这可能是您在纯JPA中所能找到的最接近的东西。SpringData本身具有进一步

java - JPA - 来自 hibernate 的 LobCreator 模拟?

在纯Hibernate中我可以做到:Blobblob=Hibernate.getLobCreator(sessionFactory.getCurrentSession()).createBlob(inputStream,len);如何在jpa中执行此操作(使用hibernate作为提供程序)?在纯hibernate中,我为blob创建了用户类型,它使用了setBinaryStream准备语句。这个解决方案非常适合我,我正在寻找一种方法将它移植到JPA。 最佳答案 您可以在持久属性(AnnotationLob)上使用@Lob注释:@E

java - Flyway 和 JPA 集成

我当前的Spring3.0项目正在与Flyway集成。感谢谷歌网站,所以我可以依靠这些文档。但不幸的是,关于与JPA集成的讨论并不多。所以问题是:如何将Flyway与persistence.xml整合?它是如何工作的?每次JPA提供程序都会自动生成架构更新,那么我们如何在此之前或之后运行脚本?我猜到目前为止flyway的查询不支持HQL,所以是否有任何示例代码可以让我了解如何集成迁移事件?设计一个拦截器还是一个新的切面?在域层面做什么?感谢任何提示。提前致谢。 最佳答案 Flyway不支持JPA和Spring。它基本上按顺序运行您的

java - JPA Cascade注解和Hibernate Cascade注解的区别

我正在尝试使用Hibernate注释。当我尝试使用级联时,我在Eclipseintellisense中得到两个选项:javax.persistence.CascadeTypeandorg.hibernate.annotations.CascadeType在hibernateCascadeType中,提供了比JPA中更多的选项。有什么优势吗? 最佳答案 javax.persistence注释是标准规范。hibernate注解代表了Hibernate的具体实现。它们大多重叠,但HibernateCascadeType提供了一些特定于Hi