對于mysql主從機(jī)制的讀寫分離,對于寫操作寫入主庫,讀取操作讀取從庫
一、安裝依賴
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.3.6</version>
</dependency>
二、配置文件配置數(shù)據(jù)源文章來源:http://www.zghlxwxcb.cn/news/detail-824756.html
spring:
datasource:
dynamic:
#默認(rèn)數(shù)據(jù)源
primary: master
datasource:
master:
username: root
password: xxxxx
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/xx?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
slave:
username: root
password: xxx
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/xx?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
三、在service,如果是讀取操作的話,則需要加上注解@DS(“slave”)即可,可看如下示例文章來源地址http://www.zghlxwxcb.cn/news/detail-824756.html
@Service
public class TUserServiceImpl extends ServiceImpl<TUserMapper, TUser> implements ITUserService {
//讀取走從庫
@Override
@DS("slave")
public List<TUser> getUserList(){
return baseMapper.selectList(null);
}
//寫操作默認(rèn)走主庫
@Override
@Transactional
public String adUser(TUser user){
baseMapper.insert(user);
return "OK";
}
}
到了這里,關(guān)于spring boot+mybatis-plus配置讀寫分離的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!