Config类
其中@EnableConfigurationProperties(LoginCheckProperties.class) 注解为固定写法 意义是实现自动配置 ,类为上文中的Properties类
@Configuration
@EnableConfigurationProperties(LoginCheckProperties.class)
@MapperScan(basePackages = MasterDataSourceConfig.PACKAGE, sqlSessionFactoryRef = “masterSqlSessionFactory”)
public class MasterDataSourceConfig {
// 精确到 master 目录,以便跟其他数据源隔离
static final String PACKAGE = “com.airboot.bootdemo.dao.master”;
static final String MAPPER_LOCATION = “classpath*:mapper/master/*.xml”;
private String className;
private String url;
private String user;
private String password;
public MasterDataSourceConfig(LoginCheckProperties loginCheckProperties) {
this.className = loginCheckProperties.getClassName();
this.url = loginCheckProperties.getUrl();
this.user = loginCheckProperties.getUser();
this.password = loginCheckProperties.getPassword();
}
@Bean(name = “masterDataSource”)
public DataSource masterDataSource() {
DruidDataSource dataSource = new DruidDataSource();
dataSource.setDriverClassName(className);
dataSource.setUrl(url);
dataSource.setUsername(user);
dataSource.setPassword(password);
//dataSource.setDriverClassName(“com.mysql.jdbc.Driver”);
//dataSource.setUrl(“jdbc:mysql://localhost:3306/humanresource?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC”);
//dataSource.setUsername(“root”);
//dataSource.setPassword(“root”);
return dataSource;
}
@Bean(name = “masterTransactionManager”)
public DataSourceTransactionManager masterTransactionManager() {
return new DataSourceTransactionManager(masterDataSource());
}
@Bean(name = “masterSqlSessionFactory”)
public SqlSessionFactory masterSqlSessionFactory(@Qualifier(“masterDataSource”) DataSource masterDataSource)
throws Exception {
final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(masterDataSource);
sessionFactory.setMapperLocations(
new PathMatchingResourcePatternResolver().getResources(MasterDataSourceConfig.MAPPER_LOCATION));
return sessionFactory.getObject();
}
}
META-INF/spring.factories
最后在resources中新建文件夹META-INF,在其中建立文件spring.factories.路径为上文Config中的路径
org.springframework.boot.autoconfigure.EnableAutoConfiguration=logincheckspringbootstarter.config.ds.MasterDataSourceConfig
如果要暴露多个使用以下代码
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com...*.*Util,\
com...*.*Util,\
com...*.*Util,\
com...*.*Util,\
com...*.*Util
如果想要在jar中加入注释 则需要在pom文件中修改以下代码 这样会生成一个 *.jar 和一个*:source.jar 需要将这两个jar包都加入项目中。
org.apache.maven.plugins
maven-source-plugin
2.4
true
attach-javadocs
jar
-Xdoclint:none
打包
使用命令mvn install
引入jar包
其中groupId 公司名称 我这里是cn.baocl
artifactId为项目名
这些在start项目的pom文件中配置
上一下pom文件
<?xml version="1.0" encoding="UTF-8"?><project xmlns=“http://maven.apache.org/POM/4.0.0”
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
4.0.0
cn.baocl
check-spring-boot-starter
1.1-SNAPSHOT
org.springframework.boot
spring-boot-starter-web
2.2.1.RELEASE
org.mybatis.spring.boot
mybatis-spring-boot-starter
1.3.2
com.alibaba
druid
1.1.17
org.springframework.boot
spring-boot-devtools
runtime
2.2.1.RELEASE
mysql
mysql-connector-java
runtime
8.0.16
org.springframework.boot
spring-boot-configuration-processor
true
2.2.1.RELEASE
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
链图片转存中…(img-8Ukx5B9N-1715078741665)]
[外链图片转存中…(img-gh8mtqBQ-1715078741665)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!