草庐IT

Java在线代码生成工具,支持JPA、Mybatis、MybatisPlus

【Java代码生成神器】自动化生成Java实体类、代码、增删改查功能!点击访问推荐一个自己每天都在用的Java代码生成器!这个网站支持在线生成Java代码,包含完整的Controller\Service\Entity\Dao代码,完整的增删改查功能!还可以自定义自己的代码模板、自由配置高级选项,指定是否集成Lombok和Swagger等常用库,一键生成,省去了大量时间和精力!快来试试吧!在线地址一款支持多种ORM框架的Java代码生成器,基于模板引擎实现,具有非常高的自由度,可随意修改为适合你的代码风格支持JPA、Mybatis、MybatisPlus等ORM框架以下为开源版本源码:前端:ht

java - 无法在应用引擎中保留 jpa 实体

@EntitypublicclassBlobx{privateStringname;privateBlobKeyblobKey;@Id@GeneratedValue(strategy=GenerationType.IDENTITY)privateKeyid;//gettersandsetters}@EntitypublicclassUserx{@Id@GeneratedValue(strategy=GenerationType.IDENTITY)privateKeyid;privateStringname;@OneToManyprivateListblobs;//gettersands

java - 如何在 JPA 中按 count() 排序

我正在使用这个JPA查询:SELECTDISTINCTe.labelFROMEntityeGROUPBYe.labelORDERBYCOUNT(e.label)DESC我没有得到任何错误,结果排序几乎正确,但有一些值是错误的(两个值被翻转或一些单个值完全错位)编辑:将COUNT(e.label)添加到我的SELECT子句解决了这个查询的这个问题。但在同样包含WHERE子句的类似查询中,问题仍然存在:SELECTDISTINCTe.label,COUNT(e.label)FROMEntityeWHERETYPE(e.cat)=:categoryGROUPBYe.labelORDERBYC

java - jpa 命名查询 : named bind variables for list

如果您有一个带有如下列表的命名查询:@NamedQuery(name="selection",query="SELECTxFROMEmployeexWHEREx.nameIN('Jack','Jill')")是否可以将列表制作成命名的绑定(bind)变量,以便您设置所需的内容:q.setParameter(.......);欢迎提出建议 最佳答案 是的,这是可能的。就像任何其他参数一样:@NamedQuery(name="selection",query="SELECTxFROMEmployeexWHEREx.nameIN:name

java - Hibernate @Proxy(lazy = false) 注解有什么作用?

在尝试序列化我的ESRBRating对象时,我遇到了两个不同的堆栈跟踪(见下文),它是一个JPA实体。我正在使用SpringDataJPA。Controller称为服务,服务称为存储库。我能够通过在我的ESRBRating对象上添加@Proxy(lazy=false)来解决这个问题。我的主要问题是@Proxy(lazy=false)实际上做了什么?为什么加的时候会起作用?这是一个好的解决方案还是会产生副作用,例如性能/内存问题?作为引用,这是我现在的ESRBRating类(class)。@Entity@Table(name="esrb_rating",schema="igdb")@Js

java - 如何对 ElementCollection 和 CollectionTable 使用 CriteriaQuery

我有一个非常简单的实体产品,它有代码、名称和标签。标签存储在另一个表(product_tag)中,其中包含product_id和tag列。我需要使用CriteriaQuery搜索带有特定标签的产品。举个例子,我想找到带有“水果”和“红色”标签的产品。使用spring4.1.x、spring-data-jpa1.8和hibernate4.2.x。我的实体只是;@Entity@Table(name="product",uniqueConstraints={@UniqueConstraint(columnNames="code")})@NamedQueries({@NamedQuery(na

java - @JoinTable 是否应该在@ManyToMany 关系的两边指定?

我有一个实体Course和一个实体User。类(class)和用户之间存在多对多关系,因为一个类(class)可以有很多用户,一个用户可以注册很多类(class)。在这两个实体中,我都在特定字段上放置了@ManyToMany注释,也就是说,在Course中,我有:@ManyToManyprivateListmembers;在User中我有:@ManyToManyprivateListcoursesTaken;现在,我知道这种多对多关系通常由第三个表表示。我还知道有注释@JoinTable允许我们这样做。我不知道是否应该在两个不同实体的两个字段上添加此注释@JoinTable。顺便说一句

java - Hibernate 在不引用其他表的情况下持久化 Map<String, String>

你能帮我用Hibernate持久化字符串映射吗?map值来自客户端并且是随机的,所以我不想为map值存储单独的表异常Causedby:org.hibernate.AnnotationException:Associatedclassnotfound:java.lang.String代码@EntitypublicclassUserConfig{@Id@SequenceGenerator(sequenceName="CONFIG_SEQ",name="ConfigSeq",allocationSize=1)@GeneratedValue(strategy=GenerationType.SE

java - 如何在 JPA 中构建插入查询

我正在尝试将数据插入到包含列(NAME,VALUE)和的表中Queryquery=em.createQuery("INSERTINTOTestDataEntity(NAME,VALUE)VALUES(:name,:value)");query.setParameter("name",name);query.setParameter("value",value);query.executeUpdate();并得到以下异常:ERRORorg.hibernate.hql.internal.ast.ErrorCounter-line1:42:unexpectedtoken:VALUES此外,我

java - 使用 JPA 将包括关系在内的整个表加载到内存中

我必须处理分布在20个表上的大量数据(总计约500万条记录),我需要高效地加载它们。我正在使用Wildfly14和JPA/Hibernate。因为最后,每条记录都会被业务逻辑使用(在同一个事务中),我决定通过简单的方式将所需表的全部内容预加载到内存中:em.createQuery("SELECTeFROMEntitye").size();在那之后,每个对象都应该在交易中可用,因此可以通过:em.find(Entity.class,id);但这在某种程度上不起作用,仍然有很多对数据库的调用,尤其是对于关系。如何有效地加载所需表格的全部内容,包括关系并确保我得到了一切/不会有进一步的数据库