1、在外部tomcat中运行
pom文件中 jar 改成 war,内置tomcat要改成provide
1
2
3
4
5
|
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
|
启动类改成如下:
1
2
3
4
5
6
7
8
9
10
11
12
|
@SpringBootApplication
@Configuration
@EnableConfigurationProperties
public class BaseApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(BaseApplication. class );
}
public static void main(String[] args) {
SpringApplication.run(BaseApplication. class , args);
}
}
|
2、@Value没取到值
1
2
3
4
5
|
@Component
public class PayConfig {
@Value ( "${pay.webBody}" )
public static String webBody;
}
|
如上代码,不能用static关键字修饰
或者这种
1
2
3
4
5
6
7
8
|
@Component
public class PayConfig {
public static String webBody;
@Value ( "${pay.webBody}" )
public void setWebBody(String webBody) {
this .webBody= webBody;
}
}
|
使用静态方式直接获取也是取不到的,我们在使用时,必须采用 @Resource 注入到要使用的类,所以简化一下
1
2
3
4
5
|
@Component
public class PayConfig {
@Value ( "${pay.webBody}" )
public String webBody;
}
|
在要使用的地方
1
2
3
|
@Resource
private PayConfig payConfig;
payConfig.webBody
|
以上所述是小编给大家介绍的SpringBoot常见问题小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://blog.csdn.net/ashur619/article/details/74909109