-
如何扫描这个启动类包外的包?
@ComponentScan(basePackages = {“com”}) com就是我们要扫描的包 -
如果一个接口有两个实现类在使用@Autowired注入的时候改怎么做?
要注入的成员变量名跟你要的beanName一样.
1.@Autowired
Animal cat;就会注入Cat了不会注入Dog.
2.如果有Cat和Dog,优先注入Cat,就在Cat加@Primary
@Primary
public class Cat implement Animal {} 这个在配置双数据源的时候经常用到这个技巧。
3.用@Qualifier
@Autowired
@Qualifier(“dog”)//即便Cat标注了@primary,这里也会注入dog
Animal animal; -
一些第三方jar的类没有加@Component注解,但我们也要让他进入spring管理怎么弄?
利用自动装配原理
@Config
public class Config{
@Bean
public Jar jar(){return new Jar();}
}这样就能在其他地方注入了。 -
除了加载application.properties文件,我还要加载其他的地方配置文件改怎么弄?
用
@PropertySource(value = {“classpath:mydiy.properties”})//这样就还能加载这个文件了 -
老说bean的作用域,那我想用request作用域要怎么用,直接注入就可以了?
加@Scope注解,并且要指定代理模式,否则会报错
@Scope(value=WebApplicationContext.SCOPE_REQUEST,proxyMode = ScopedProxyMode.TARGET_CLASS),可以看到其实是代理类
-
除了用注解装入Bean,我还想同时用xml定义bean要怎么弄?
在配置类加上
@ImportResource(“classpath:bean-other.xml”) -
前端传过来的日期是字符串格式"yyyy-mm-dd”,控制层接受的参数怎么直接转换成Date类,或者穿过来的数字是xxx,xxx这种格式怎么转换成数字?
日期在控制层入参上加@DateTimeFormat(iso=ISO.DATE)注解,或者直接在配置文件加
spring.mvc.date-format=yyyy-mm-dd.
数字用@NumberFormat(pattern="###,###.##")
SpringBoot常用技巧
最新推荐文章于 2023-09-27 10:53:36 发布