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

查看网站开通时间清苑区建设局网站

查看网站开通时间,清苑区建设局网站,电子商务工作好找吗,百度提交入口的使用方法有些人因为看见所以相信#xff0c;有些人因为相信所以看见 有目录#xff0c;不迷路 前期准备实现演示参考 最近研究了一下多数据源#xff0c;这篇博客讲的是简单模式#xff0c;下篇博客预计写自动切换模式 前期准备 本篇博客基于SpringBoot整合MyBatis-plus#xff0…有些人因为看见所以相信有些人因为相信所以看见 有目录不迷路 前期准备实现演示参考 最近研究了一下多数据源这篇博客讲的是简单模式下篇博客预计写自动切换模式 前期准备 本篇博客基于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则返回 功能实现。 参考 具体实现可以参考官方文档多数据源 完结撒花
http://www.pierceye.com/news/780491/

相关文章:

  • 做衣服接订单的网站网站用哪些系统做的
  • 爱美刻在线制作网站罗村网站制作公司
  • 现在网站用什么软件做免费的会计做账系统
  • 国外的包装设计网站三明网站设计
  • 网站源码怎样弄成网站工商登记网站
  • 2016做砸了的小网站一键创建网站
  • 怎么制作网站域名六安网站制作人才招聘
  • 网站建设 启象科技上海公司排名100强
  • 户外旅游网站排名深圳seo专家
  • 娄底建设网站的公司深圳人才招聘网
  • 网站建设和制作网站名称设置
  • 温州外贸网站深圳工程建设交易服务中心网站
  • 网站导航网址大全网页设计模板代码免费
  • 卖机械设备什么网站做推广好做机械有什么兼职网站
  • 全屋定制十大公认品牌有哪些seo页面链接优化
  • 电子商务网站建设基础考试十大营销手段
  • 关于做服饰网站的首页WordPress纯代码添加
  • 网站qq交谈怎么做的公司注册50万和100万
  • 网站推广的电子邮件推广使用ftp修改网站图片
  • 建设宣传家乡的网站跨境电商怎么注册
  • 广州天河区网站建设公司wordpress调用文章描述
  • 网站开发项目策划书制作书签怎么做
  • 做网站组织结构框架例子整站seo优化哪家好
  • 网站内存不足哈尔滨网站优化页面
  • 响应式网站 图片尺寸奇数南宁网站建设业务员
  • 咸宁 网站建设wordpress聚合广告平台
  • 家具展示型网站个人可以做几个网站
  • 建设网站商城需要多少费用注册网页代码
  • 徐州企业网站制作南宁网站建设专家
  • 雨发建设集团有限公司网站wordpress related posts