草庐IT

data-link-layer

全部标签

用于将复杂实体发布到 Spring Data REST/HATEOAS 服务的 Java 客户端

据我所知,提供了将复杂对象转换为正确HAL格式的方法。这当然是在编码框架本身中的对象时利用的。Resource和Link对象等为了一个用例:Company1是我系统中现有的Company。我想添加一个为Company1工作的新Employee下面是一个示例Employee对象,您将从基于SpringDataREST的服务接收到该对象。SpringHATEOAS还提供了自己构造这些对象的方法。{"id":null,"firstName":"bZWthNFk","lastName":"GtTnrqka","loginId":"zTk5rT","active":true,"_links":{

java - 带有 postgresql 的串行列上的 Spring Data JPA "null value in column xxx violates not-null constraint"

我的实体有一个mapOrder字段,我希望它像下面这样自动递增:@EntitypublicclassMap{@Id@GeneratedValue(strategy=GenerationType.IDENTITY)privateLongid;@Column(columnDefinition="serial")privateLongmapOrder;//.......}生成的sql看起来不错:CREATETABLEmap(idbigserialNOTNULL,map_orderserialNOTNULL,...)但是当我用SpringDataJPA的存储库保存它时,像这样:Mapm=new

java - Spring Data Hibernate + 可分页 : Returns empty results

我正在使用SpringData存储库,没有任何问题。当我尝试添加Paging(使用Pageable接口(interface))时,它工作正常。但是,当返回的结果集小于页面大小时,结果为空列表。以下是我的PageRequest。index和objectsPerPage的默认值分别为0和10。newPageRequest(pageIndex_,objectsPerPage_,newSort(orders))将它用于返回少于10个结果的查询时,结果列表为空。这是我在服务层使用存储库的方式:repository.findAll(MySpecification.searchClients(cri

java - 乐观锁的重试机制(spring data + JPA)

我们决定在我们的Web应用程序中使用乐观锁定以提高并发性,而不使用悲观锁定。我们现在正在寻找重试解决方案。我们希望对当前代码库的影响尽可能小。我们在网上看到的一种解决方案是使用带有注释的重试拦截器将方法标记为可重试。问题是我们想注释带有@Transactional注释的方法,但拦截器由于某种原因无法重试它们。(拦截器完美重试非事务方法。)所以:1)是否有任何对我们的代码影响最小的重试替代方案?2)是否有该解决方案的文档\教程?3)是否可以重试@Transactional注释的方法?干杯! 最佳答案 广告3.您可以使用SpringRe

java - Spring Data - 覆盖某些存储库的默认方法

我只是盯着spring-data和spring-data-rest,我真的很想利用这些工具提供的功能。在大多数情况下,基本功能非常适合我的用例,但在某些情况下,我需要对底层功能进行相当多的自定义,并有选择地分配一些存储库来继承我所追求的自定义功能。为了更好地解释这个问题,在spring-data中有2个可能的接口(interface),您可以从它们继承功能,CrudRepository或PagingAndSortingRepository。我想添加第三个叫做让我们说PesimisticRepositoryPesimisticRepository所做的只是以不同方式处理已删除的@Enti

java - Spring Data Rest - 软删除

我一直在使用springdatarest没有任何问题,但现在我有一个要求,即当用户对给定实体执行DELETE操作时,即DELETE/accounts/我需要在数据库上设置一个标志,将该实体标记为已删除,但我确实想保留记录。基本上这意味着我需要在数据库中执行UPDATE而不是DELETE操作。我找不到任何方法来覆盖delete(ID)方法的spring行为。部分代码:@Entity@Table(name="account")publicclassAccount{/*DefaultvalueforthisfieldisfalsebutwhenareceiveaDELETErequestfo

java - 如何使用 spring data envers 查找实体的所有修订?

我在我的springboot应用程序中使用spring-data-envers。我可以成功地记录对我的实体的审计。现在,我需要在UI中向用户显示审核数据。就像会有一个搜索表单,用户可以在其中选择他想要查看审计日志的持续时间和实体。string-data-envers提供的RevisionRepository只有以下三个方法。@NoRepositoryBeanpublicinterfaceRevisionRepository>{/***Returnstherevisionoftheentityitwaslastchangedin.**@paramidmustnotbe{@literaln

Redis连接失败(org.springframework.data.redis.connection.PoolException: Could not get a resource from

 最开始是这么写的spring:redis:database:1#指定所在的库host:127.0.0.1#Redis服务器地址写你的ipport:6379#Redis服务器连接端口password:000000#Redis服务器连接密码#url:redis://000000@127.0.0.1:6379lettuce:pool:max-active:200#连接池最大连接数(使用负值表示没有限制)类似于mysql的连接池max-wait:-1#连接池最大阻塞等待时间(使用负值表示没有限制)表示连接池的链接拿完了现在去申请需要等待的时间max-idle:10#连接池中的最大空闲连接min-id

Layer3 是什么?一文揭晓 Layer1 到 Layer3 进化史

 什么是Layer3? 从Layer1开始的进化史 当我们谈到区块链时,脑海中大多会浮现出:去中心化、高度分散、自由运作等关键词。而在技术开发者享受链上世界红利,用户尽情体验链上功能与服务时,或许没有思考过支撑这一切运作的幕后功臣—— Layer,所扮演的角色发挥的作用。Layer,Web弹层组件,作为实现区块链丰富便捷操作体验的设施,支持链上运作的性能和表现。广为认知的公链如以太坊是构建在Layer1网络上,发展出的Layer2在近年也是热门叙述,而最近悄然兴起的Layer3又有何优势呢?本文将聚焦Layer3,解析一部从Layer1到Layer2再到Layer3的进化史如何让我们参透Lay

我可以使用@viewbag ...在WebGrid列内部的action link格式中而不是硬编码名称

我有几页可以链接到用户级别。示例:级别1转到Pagea,第2级转到PageB等。在控制器内部,我将ViewBag。页面设置为PAGE。当WebGrid创建下面的列时,是否有一种方法可以将“ActionName”替换为viewbag.page的内容?@grid.GetHtml(columns:grid.Columns(grid.Column("filename",format:@@Html.ActionLink((string)item.filename,"actionName","controllerName",new{id=item.id},null)),看答案如果您是从控制器重定向的,那么