@ConfigurationProperties 使用这个来生成配置类文件,但是总是注入失败
直接附上源码
源码文件
项目中我不知道是因为代码不全还是怎样,启动的时候,注入这个bean失败,我注掉了
将你的源码down下来了,加了一些配置,启动成功了,控制台有一些错误是因为数据库连接是错的
问题如下
1、pom文件spring session没有版本号
在我改成如下引用后,出现多个spring bean冲突;明显是出现版本冲突;后屏蔽了此jar的引用(其他的spring组件可能已经传递依赖了此jar)
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.3.5.RELEASE</version>
</dependency>
2、com.csoo.security.core.validate.code.ValidateCodeRepository没有实现的spring bean
不清楚你这个bean要做什么,我实现了一个类并注册为spring bean,代码如下
@Component
public class MyValidateCodeRepository implements ValidateCodeRepository{
@Override
public void save(ServletWebRequest request, ValidateCode code, ValidateCodeType validateCodeType) {
}
@Override
public ValidateCode get(ServletWebRequest request, ValidateCodeType validateCodeType) {
return null;
}
@Override
public void remove(ServletWebRequest request, ValidateCodeType codeType) {
}
}
3、我看你用到了spring security组件,在配置类中缺少了某些spring bean
InvalidSessionStrategy 这个是表明当客户端传入一个无效的sessionId时候的处理策略实现
SimpleRedirectInvalidSessionStrategy 是其实现,表明当遇到这种情况时候进行重定向跳转
SessionInformationExpiredStrategy 这个表明当侦测到一个客户端请求过来时候,如果session过期了的处理策略实现
SimpleRedirectSessionInformationExpiredStrategy 是其实现,明当遇到这种情况时候进行重定向跳转
解决方法如下:
在com.csoo.security.WebSecurityConfig中加入如下bean
@Bean
public SimpleRedirectInvalidSessionStrategy simpleRedirectInvalidSessionStrategy(){
return new SimpleRedirectInvalidSessionStrategy("/invalid");
}
@Bean
public SimpleRedirectSessionInformationExpiredStrategy simpleRedirectSessionInformationExpiredStrategy(){
return new SimpleRedirectSessionInformationExpiredStrategy("/invalid");
}
至此启动成功,如有问题,可再联系
代码不全。。导下来报错。。没有pom.xml等等。。只有部分代码
用@Source报错吗?
用@Resource试试,你什么东西注入失败啊
在生成配置类文件所在类加注解:@EnableConfigurationProperties(配置类名.class)