草庐IT

spring-context-analyzer

全部标签

java - 使用 MockMvc 在 Spring MVC 中进行单元测试/登录

我有一个使用SpringMVC创建的非常简单的REST应用程序。(代码可在GitHub获得。)它有一个简单的WebSecurityConfigurer。如下:@Overrideprotectedvoidconfigure(HttpSecurityhttpSecurity)throwsException{httpSecurity.csrf().disable().exceptionHandling().authenticationEntryPoint(authenticationEntryPoint).and().authorizeRequests().antMatchers("/use

java - 如何将投影应用于 Spring Data REST 查询方法资源?

我正在使用SpringDataREST2.1.4.RELEASE。我创造一个实体预订,其REST存储库(扩展CrudRepository)名为BookingRepository和一个projectionBookingDetails(用@Projection(name="details",types=Booking.class)注释)返回其链接实体的爆炸,如Resource、Activity、Applicant等。客户端使用.../rest/bookings获取所有预订,JSON响应包含链接实体的链接。如果它添加?projection=details然后链接的实体被分解并返回。这太棒了。

java - Spring Boot : Spring always assigns default value to property despite of it being present in . 属性文件

我正在使用Springboot1.1.8,它使用Spring4.0.7。我正在使用@Value注释Autowiring我的类中的属性。如果属性文件中不存在该属性,我希望有一个默认值,所以我使用“:”来分配默认值。下面是示例:@Value("${custom.data.export:false}")privatebooleanexportData=true;如果属性文件中不存在属性,则应将false分配给变量。但是,如果属性存在于文件中,那么它也会分配默认值并忽略属性值。例如。如果我已经像上面提到的那样定义了属性并且应用程序属性文件有这样的东西custom.data.export=tru

java - @PostFilter 和 @PreFilter 在 Spring Security 中如何工作?

作为Spring安全注释的新手,我需要对以下代码进行说明。@PostFilter("hasPermission(filterObject,'READ')orhasRole('ROLE_ADMIN')")publicListgetUsers(StringorderByInsertionDate,IntegernumberDaysToLookBack)throwsAppException所以这意味着getUsers返回的用户列表将只包含那些对调用对象具有完全"READ"访问权限或调用对象具有"ROLE_ADMIN"角色的元素。谢谢。 最佳答案

解密Spring中的Bean实例化:推断构造方法(上)

在Spring中,一个bean需要通过实例化来获取一个对象,而实例化的过程涉及到构造方法的调用。本文将主要探讨简单的构造推断和实例化过程,让我们首先深入了解实例化的步骤。实例化源码protectedBeanWrappercreateBeanInstance(StringbeanName,RootBeanDefinitionmbd,@NullableObject[]args){//Makesurebeanclassisactuallyresolvedatthispoint.ClassbeanClass=resolveBeanClass(mbd,beanName);.....//BeanDefin

spring boot3整合mybatis-plus

添加依赖com.baomidoumybatis-plus-boot-starter3.5.3.2org.mybatismybatis-springorg.mybatismybatis-spring3.0.3mysqlmysql-connector-java8.0.32-->com.mysqlmysql-connector-jorg.projectlomboklombok配置属性信息spring:datasource:driver-class-name:com.mysql.cj.jdbc.Driverusername:XXXpassword:XXXurl:jdbc:mysql://localho

java - Spring MVC - 请求映射,两个带有两个不同参数的url

在Spring中是否有可能有一个方法有两个不同的url,每个方法有不同的参数?伪代码如下@RequestMethod(URL1-param1,URL2-param2)publicvoidhandleAction(@ModelAttribute("A")Aa,...){}同时ULR1被映射到其他一些Controller中作为@RequestMethod(URL1)publicvoidhandleAction1(@ModelAttribute("A")Aa,...){} 最佳答案 更新:看来您的问题完全不同。不,您不能在不同的Contr

java - Spring Security 是如何跨 Web 应用请求在一个线程中管理 SecurityContext 的?

在SpringSecurity中,它有一个类名SecurityContextHolder及其规范:“将给定的SecurityContext与当前执行线程相关联。”对于Web应用程序,每当请求到达服务器时,Spring也会重新加载并在SecurityContextHolder中为其线程设置该请求的SecurityContext吗? 最佳答案 是的,SecurityContextPersistenceFilter照顾这个。默认情况下,它在HttpSession中定位SecurityContext,并通过SecurityContextHo

java - 使 Spring bean 的行为类似于 ExecutorService 的 ThreadLocal 实例

在我的网络应用程序中,我有一个后台服务。此服务使用Generator类,该类包含一个Engine类和一个配置为使用多线程并接受GeneratorTasks的ExecutorService。@ComponentpublicclassGenerator{@AutowiredprivateEngineheavyEngine;privateExecutorServiceexec=Executors.newFixedThreadPool(3);//IactuallypassthesingletoninstanceGeneratorclassintothetask.publicvoidsubmit

java - 自定义 Spring AOP Around + @Transactional

我实现了自定义Around以匹配自定义注释。我希望自定义在外部@Transactional中执行。不幸的是,这似乎不起作用。(AOP正在运行。我看到显示它的堆栈跟踪)。堆栈跟踪显示我的AOP在(记录器)之前执行,MyBatissession开始一个事务,MyBatis关闭事务,Spring关闭事务然后我的AOP完成。我认为让我的AOP实现Ordered会有所帮助。我将返回的值设置为1。我使用.这没有用。我认为这是因为我误解了Spring的命令方式。AdviceorderingWhathappenswhenmultiplepiecesofadviceallwanttorunatthesa