草庐IT

java - JPA事务回滚重试和恢复: merging entity with auto-incremented @Version

我想在交易失败后恢复。现在,当然,在任何回滚之后,所有实体都会分离并且实体管理器会关闭。但是,UI仍然保留分离的实体。显然我们不能就这样丢弃用户的更改,所以我们想让他们重试(修复突出显示的验证错误,然后再次单击按钮)。在JavaPersistenceWikiBook之后,OnemethodoferrorhandlingistocallmergeforeachmanagedobjectafterthecommitfailsintoanewEntityManager,thentrytocommitthenewEntityManager.Oneissuemaybethatanyidsthat

java - Spring MVC : Generic DAO and Service classes

我正在使用SpringMVC编写Web。我使用GenericDAO编写了所有DAO。现在我想重写我的服务类。如何编写“通用服务”?有我的DAO:/*#################################DAO################################*/packagenet.example.com.dao;importjava.util.List;publicinterfaceGenericDao{publicTfindById(intid);publicListfindAll();publicvoidupdate(Tentity);publicvoi

java - 如何使用 Spring 数据 REST 公开自定义 DTO crud 存储库?

我不想公开我的模型类(jpa实体),而是公开它们具有不同数据传输对象(DTO)的属性的不同子集。这个想法是DTOCrudRepositoryJpaRepositoryentities,我想通过SpringDataREST公开DTOCrudRepository.例子:实体:@Entity@Table(name="groups")publicclassGroup{privateLongid;privateStringname;privateSetusers;//otherattributes@Id@GeneratedValue@Column(name="group_id")publicLo

java - 将客户端 REQUEST_ENTITY_PROCESSING 设置为 CHUNKED 我丢失了文件

我有一个在Jetty上运行的REST网络服务。我想编写一个Java客户端,它使用相同的Web连接将大量文档分块到该其余服务。我能够在这里建立一个基于迭代器的流方法:SendingastreamofdocumentstoaJersey@POSTendpoint这不起作用,除非您设置clientConfig.property(ClientProperties.REQUEST_ENTITY_PROCESSING,RequestEntityProcessing.CHUNKED);,因为Content-length未知。虽然有些工作,但分块传输似乎丢失了一些文档。例如:num_docs50000

java - 通用方法触发类型安全错误 - 为什么?

同时研究thisquestion的解决方案,我想出了以下代码,其中有一些编译器警告。一个警告是:Typesafety:TheexpressionoftypeTest.EntityCollectionneedsuncheckedconversiontoconformtoTest.EntityCollection我不完全明白为什么会出现这个警告。通过传入Class输入并声明该方法返回EntityCollection,为什么我没有做足够的工作来说服(Java7)编译器返回正确的类型?staticclassEntity{}staticclassEntityCollection{privateE

java - 如何将 DTO 映射到现有的 JPA 实体?

我正在尝试将JavaDTO对象映射到现有的JPA实体对象,而无需执行以下操作:publicMyEntitymapToMyEntity(SomeDTOdto,MyEntityentity){entity.setField1(dto.getField1());entity.setField2(dto.getField2());...entity.setField20(dto.getField20());returnentity;}到目前为止,我一直在使用ModelMapper像这样:MyEntityentity=modelMapper.map(dto,SomeDTO.class);,但我想

java - 同一个类上注解Entity和Component是不是错了

将来自spring@Component和JPA@Entity的注释放在同一个类上是错误的想法吗?为什么需要它是在JSF页面上使用这个类,它还描述了表结构。原因是为了避免将实体对象映射到将成为表示层的某个值对象。这是一些反模式吗?你有更好的解决方案吗? 最佳答案 Isitwrongideatoputannotationfromspring@ComponentandJPA@Entityonthesameclass.这是Controller和模型的紧耦合。WhyItisneededistousethisclassonJSFpageanda

java - Spring Boot 中的 DTO 转换器模式

主要问题是如何在不破坏的情况下将DTO转换为实体并将实体转换为DtoSOLID原则。例如我们有这样的json:{id:1,name:"user",role:"manager"}DTO是:publicclassUserDto{privateLongid;privateStringname;privateStringroleName;}实体是:publicclassUserEntity{privateLongid;privateStringname;privateRolerole}publicclassRoleEntity{privateLongid;privateStringroleNa

java - DDD : Entity and its identifier

我的系统中有一个实体,自然需要一个标识符,这样才能唯一标识。假设数据库用于通过Hibernate生成标识符,使用native策略,那么显然应用程序代码没有分配标识符的责任。现在,该实体的实例在被持久化并获取其标识符之前是否可以被视为有效?或者我应该使用其他策略为我的实体分配标识符,以便在调用其构造函数时获取其标识符? 最佳答案 这是一个广泛的话题,但这里有两种可能性:根据businesskeys定义您的hashCode()和equals(..)合约.例如,对于User实体,这将是用户名,而不是自动生成的ID。因此,您将能够在实体被持

java - 云端点 : Arrays or collections of entity types are not allowed

为什么GoogleCloudEndpoints中存在此限制:Arraysorcollectionsofentitytypesarenotallowed.对于具有方法的API:@ApiMethod(name="getCollection",path="getCollection",httpMethod=HttpMethod.POST)publicArrayListgetCollection(ListpMyObjects){解决这个问题的最佳方法是什么?谢谢! 最佳答案 我认为它不受支持的原因是因为方法签名中的命名参数最终成为URL查询