当前位置: 首页 > news >正文

图片模板免费下载莆田关键词优化报价

图片模板免费下载,莆田关键词优化报价,网站制作 流程,网站开通有些人因为看见所以相信#xff0c;有些人因为相信所以看见 有目录#xff0c;不迷路 前期准备实现演示代码地址参考 最近研究了一下多数据源#xff0c;这篇博客讲的是简单模式#xff0c;下篇博客预计写自动切换模式 前期准备 本篇博客基于SpringBoot整合MyBatis-plus有些人因为相信所以看见 有目录不迷路 前期准备实现演示代码地址参考 最近研究了一下多数据源这篇博客讲的是简单模式下篇博客预计写自动切换模式 前期准备 本篇博客基于SpringBoot整合MyBatis-plus如果有不懂这个的 可以查看我的这篇博客快速CRUD的秘诀之SpringBoot整合MyBatis-Plus 为了实现效果先在本地的mysql库里面创建两个数据库 然后在两个数据库里面分别创建同样的users表但是插入不同的数据 mydb的数据 mydb2的数据 实现 1.在pom.xml中引入多数据源的依赖dynamic-datasource-spring-boot-starter !-- 多数据切换所需依赖 -- dependencygroupIdcom.baomidou/groupIdartifactIddynamic-datasource-spring-boot-starter/artifactIdversion3.0.0/version /dependency2.在application.yml配置文件中配置多数据源 sever:# 端口port: 8080# 配置数据源 spring:datasource:dynamic:primary: master #设置默认的数据源或者数据源组,默认值即为masterstrict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源datasource:master:# 数据库路径jdbc:mysql://localhost:3306/mydb 的缩写,并配置时区url: jdbc:mysql:///mydb?serverTimezoneGMT%2B8username: rootpassword: 123456driver-class-name: com.mysql.cj.jdbc.Driver # 3.2.0开始支持SPI可省略此配置slave:url: jdbc:mysql:///mydb2?serverTimezoneGMT%2B8username: rootpassword: 123456driver-class-name: com.mysql.cj.jdbc.Driver# 打印MyBatis SQL 日志 logging:level:com.guqueyue.test.dao: debug # 写接口的包名注意 这里数据源的名字可以自定义什么master、slave都可以随意命名。这里可以根据格式自行添加数据源的个数并且支持多种数据库如oracle、达梦等。此处为了演示方便都使用了mysql数据库。 3.编写代码 3.1.在持久层中查找users表的数据并使用 DS注解切换数据源 package com.guqueyue.test.dao;import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.guqueyue.test.entity.User; import org.apache.ibatis.annotations.Select;import java.util.List;/*** Author: guqueyue* Description: 映射接口UserMapper* Date: 2023/12/19**/ public interface UserMapper extends BaseMapperUser {DS(master) // 默认为主数据源其实可以省略Select(select * from users)ListUser selectUserList();DS(slave) // 切换为slave数据源Select(select * from users)ListUser selectUserListBySlave();}注意: DS注解不止可以用在持久层可以用在任意的类和方法上。DS注解作用在方法上的优先级 类。 也就是说可以在类上加一个DS注解默认一个该类的数据源如 DS(master) 再在具体的方法上加一个DS注解做个性化指定如 DS(slave)效果等同 /*** Author: guqueyue* Description: 映射接口UserMapper* Date: 2023/12/19**/ DS(master) // 默认为主数据源其实可以省略 public interface UserMapper extends BaseMapperUser {Select(select * from users)ListUser selectUserList();DS(slave) // 切换为slave数据源Select(select * from users)ListUser selectUserListBySlave();}3.2.创建service接口 package com.guqueyue.test.service;import com.baomidou.mybatisplus.extension.service.IService; import com.guqueyue.test.entity.User;import java.util.List;/*** Author: guqueyue* Description: 用户service接口* Date: 2023/12/19**/ public interface IUserService extends IServiceUser {ListUser selectUserList(String type); }3.3.创建service实现类并调用持久层接口根据传入的参数切换不同的方法 package com.guqueyue.test.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.guqueyue.test.dao.UserMapper; import com.guqueyue.test.entity.User; import com.guqueyue.test.service.IUserService; import org.springframework.stereotype.Service;import javax.annotation.Resource; import java.util.List;/*** Author: guqueyue* Description: 用户实现类* Date: 2023/12/19**/ Service public class UserServiceImpl extends ServiceImplUserMapper, User implements IUserService {Resourceprivate UserMapper userMapper;Overridepublic ListUser selectUserList(String type) {// do something: 此处可根据实际情况进行业务选择如根据当前登录的用户信息来选择不同的数据库// 此处为了方便演示直接用前端传入的type来判断return slave.equals(type) ? userMapper.selectUserListBySlave(): userMapper.selectUserList();} }3.4.编写控制层代码 package com.guqueyue.test.controller;import com.guqueyue.test.entity.User; import com.guqueyue.test.service.IUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;import java.util.List;/*** Author: guqueyue* Description: 用户控制层* Date: 2023/12/19**/ RestController RequestMapping(/user) public class UserController {Autowiredprivate IUserService userService;/*** 查询用户列表* return*/RequestMapping(/list)public ListUser userList(String type) {System.out.println(接收到的数据源类型为 type);return userService.selectUserList(type);} }演示 代码编写好了我们就可以启动项目了 控制台显示项目启动成功后 在浏览器输入http://localhost:8080/user/list?typemaster返回 在浏览器输入http://localhost:8080/user/list?typeslave则返回 功能实现。 代码地址 本文代码已开源 git clone https://gitee.com/guqueyue/my-blog-demo.git请切换到gitee分支然后查看dynamicDataSourceSimple模块即可 参考 具体实现可以参考官方文档多数据源 完结撒花
http://www.hkea.cn/news/14500674/

相关文章:

  • 医院预约挂号系统网站开发方案互联网官网入口
  • 福田网站建设龙岗网站建设东莞松山湖网站建设
  • 西安网站建设企业wordpress 清空修订版本
  • 烟台网站制作策划做牙工作网站
  • 西宁做网站多少钱肥猫网站建设
  • 下载资料免费网站搜狗网站收录提交入口
  • 沈阳做网站哪个好网站qq临时会话不需要添加好友
  • 网站建设公司有哪些重要职务域名购买备案
  • 湖畔魔豆基金会公益网站开发移动互联网开发招人
  • 辽宁省建设工程信息网如何传业绩北京网站seo排名优化
  • 自己做网站怎么选架构wordpress音乐墙
  • 网站建设新闻++常识做购物网站安全吗
  • 网站设置访问密码云盘网站如何做
  • 网站权重有什么用做防伪查询网站
  • 人才招聘网站建设电子菜单制作app
  • 家具网站建设便宜广州网站建设 粤icp
  • 常州网站推广软件合肥建设公司网站
  • 用reset插件 复位WordPress佛山网站优化效果
  • 千博企业网站创办一个网站能够做那些事
  • 网站线框图怎样做东莞阳光网投诉查看
  • 招工网站58同城企业所得税交多少
  • 东莞市建设公共交易中心网站南宁大型网站建设
  • 具有价值的网站建设平台wordpress热门插件
  • 百度排名 网站标题wordpress cms模板制作
  • 怎样做的英文网站金融保险网站模板
  • 东莞销售网站公司哪家好怎样推广自己的网站
  • 如何做适合网站大小的图片福州专业的seo软件
  • 平原网站建设公司网络营销的策划流程
  • 自己做有趣的网站wordpress怎么删除目录
  • 二级a做爰片免费视网站网站建设部分费用会计科目