草庐IT

spring-cloud-starter-lo

全部标签

java - Spring Data JPA - 在没有@Transactional 的情况下获取延迟加载的集合

我的期望是,当在事务范围内访问集合时,应该获取延迟加载的集合。例如,如果我想获取一个集合,我可以调用foo.getBars.size()。缺少Activity事务将导致异常并显示错误消息,如failedtolazilyinitializeacollectionofbars:....couldnotinitializeproxy-noSession但是,我注意到我最新的应用程序中的行为有所不同。我将SpringBoot1.5.1与“data-jpa”启动器一起使用。我过去使用过SpringBoot,但data-jpastarter对我来说是新的。考虑以下情况。我有一个延迟加载的ManyT

java - 使用 Spring Data 时,我应该如何注册自定义 Hibernate 5 数据类型(BasicType)?

我使用SpringData并决定创建可在Hibernate实体中使用的新自定义数据类型。我检查了文档并选择了BasicType并根据这个officialuserguide实现了它.我希望能够在其类名下注册该类型,并能够在实体中使用新类型而不需要@Type注释。不幸的是,我无法获得对MetadataBuilder或Hibernate配置的引用以注册新类型。有没有办法在SpringData中获取它?似乎Hibernate的初始化对用户是隐藏的,不能轻易访问。我们使用以下类来初始化JPA:@Configuration@EnableTransactionManagement@EnableJpa

java - Spring 数据保存与 saveAll 性能

我试图理解为什么saveAll比在SpringData存储库中保存具有更好的性能。我正在使用可以看到的CrudRepositoryhere.为了测试,我创建了10k个实体并将其添加到一个列表中,这些实体只有一个ID和一个随机字符串(为了进行基准测试,我将字符串保持不变)。遍历我的列表并在每个元素上调用.save,耗时40秒。在2秒内完成对同一整个列表调用.saveAll。即使使用30k个元素调用.saveAll也需要4秒。我确保在执行每个测试之前截断我的表。即使将.saveAll调用批处理到50个子列表也需要30k10秒。包含整个列表的简单.saveAll似乎是最快的。我试图浏览Spr

java - JSP 不在 Spring 中显示模型中的对象

我有一个应该很容易解决的问题,但我没有运气。在我的servlet-servlet.xml文件中,我有以下bean(除其他之外):我的测试Controller看起来像这样:packagecom.servlet.web;importjava.util.Map;importorg.apache.commons.logging.Log;importorg.apache.commons.logging.LogFactory;importorg.springframework.stereotype.Controller;importorg.springframework.ui.ModelMap;i

java - 制作 spring-data-mongodb Multi-Tenancy

在post中去年八月sbzoom提出了使spring-data-mongoDBMulti-Tenancy的方案:“您必须制作自己的RepositoryFactoryBean。这是来自SpringDataMongoDBReferenceDocs的示例。您仍然需要实现自己的MongoTemplate并延迟或删除ensureIndexes()调用。但是您将不得不重写一些类以确保调用您的MongoTemplate而不是Spring的。”有没有人实现这个或类似的东西? 最佳答案 这里有很多方法可以给猫剥皮。这基本上都归结为您希望在哪个级别应用

java - Spring 是从众多接口(interface)实现中单独挑选出一个接口(interface)实现吗?

下面的friend是我的代码,我正在尝试使用Spring运行依赖注入(inject)我有一个接口(interface),该接口(interface)的两个类实现。一个bean.xml和一个main方法类。接口(interface)IWriter.javapackageDI;publicinterfaceIWriter{publicvoidwriter(Strings);}类Writer.javapackageDI;importorg.springframework.stereotype.Service;@ServicepublicclassWriterimplementsIWriter

java - 覆盖 Spring bean

我有以下场景:具有多个bean配置的Spring项目A,包括一个名为“searchHelper”的bean:其中SearchHelperImpl实现“SearchHelper”接口(interface)Spring项目B依赖于具有自定义SearchHelperBImpl的A我想做的只是将整个配置复制到新项目中并更改需要更改的内容,但这并不方便,必须有更简单的方法来执行此操作。我的问题是,如何覆盖“searchHelper”bean的定义以使用SearchHelperBImpl而不是SearchHelperImpl?我想使用相同的bean名称,以便所有使用此名称的东西都能使用新的实现。我

java - 实现 Spring Controller 的单元测试时缺少依赖项 hasSize() 和 hasProperty()

我正尝试在SpringMVCController中实现一个方法的单元测试,如下所示:@TestpublicvoidtestGetProfile(){PersonmockPerson=newPerson();mockPerson.setPersonId(1);mockPerson.setName("MrBrown");mockPerson.setAddress("Somewhere");mockPerson.setTelephone("1234567890");mockPerson.setEmail("brown@brown.com");when(mockPersonService.ge

java - Autowiring 来自 Spring @Configuration 类的字符串?

我希望集中访问我的所有属性值,这样我就可以做一些事情,比如确保所有属性都使用相同的名称、相同的默认值等。我创建了一个类来集中所有这个,但是我不确定需要访问这些值的类应该如何获取它们,因为您不能Autowiring字符串。我的课是这样的:@ConfigurationpublicclassSpringConfig{@Autowired@Value("${identifier:asdf1234}")publicStringidentifier;}我可能在多个类中使用它的地方publicclassFoo{@AutowiredprivateStringtheIdentifier;}publicc

java - 如何在 Spring 中正确关闭 ApplicationContext?

我正在学习SpringCore认证,我对在提供的学习Material中找到的这个问题有一些疑问:Whatisthepreferredwaytocloseanapplicationcontext?我知道如果我有这样的东西:ConfigurableApplicationContextcontext=…//Destroytheapplicationcontext.close();通过在context对象上使用close()方法,ApplicationContext被关闭并且应用程序被销毁。但我认为这不是我必须做的最好方法。阅读官方文档我发现我也可以这样做:context.registerSh