1. 提问:怎么让一个接口通过不同的开发环境进行不同的sql操作?
全文用以区分的配置文件以
spring.profiles.active
为例
首先,mapper层用spring注解@Value读取配置文件是不行的。编译不会错,但是通过注解写入的值必然为空。
2. 解决方案
把配置文件读到静态参数上面,然后Provider读取静态参数
2.1.什么时候才是一个写入静态参数的好时机呢?
在main方法的SpringApplication.run()
之后,正好合适。
细心的同学可能发现了这个方法其实是有返回值的,返回了一个ConfigurableApplicationContext
类。
这个context指的便是sping上下文,进去查源码,查看类描述