1.首先创建一个接口里面是关于建库建表的方法
- public interface MetaMapper {
- //三个核心建表方法
- void createExchangeTable();
- void createQueueTable();
- void createBingdingTable();
- }
2.启动类中定义一个ConfigurableApplicationContext 类型的变量context接收SpringApplication.run(MqApplication.class, args)的返回值
- public class MqApplication {
- //手动获取metaMapper实例
- public static ConfigurableApplicationContext context;
-
- public static void main(String[] args) {
- context = SpringApplication.run(MqApplication.class, args);
- }
- }
在查看SpringApplication.run()方法的源码时发现返回的也是ConfigurableApplicationContext 类型的值
- public static ConfigurableApplicationContext run(Class> primarySource,
- String... args) {
- return run(new Class[]{primarySource}, args);
- }
3.metaMapper变量通过启动类中context的getBean方法进行实例化,里面的参数是需要实例化的类。之后就可以使用metaMapper中的方法了。
- public class DataBaseManager {
- private MetaMapper metaMapper;
-
- //针对数据库进行初始化
- public void init(){
- //手动获取到metaMapper
- metaMapper = MqApplication.context.getBean(MetaMapper.class);
- }