赞
踩
使用到的技术:
1. Spring Boot:用于简化Spring应用的开发。
2. Dynamic DataSource:实现动态多数据源的访问和切换
3. Oracle JDBC Driver:与Oracle数据库进行连接和交互。
4. Mybatis-Plus:简化SQL映射和数据库访问。其中BaseMapper接口提供了对数据表进行基本操作的功能。
5. Lombok:用于简化Java类的开发,自动生成常用的代码,比如getter、setter、构造函数等。
6. Spring MVC:用于处理http请求和相应,提供了控制层的功能。
- <!-- mybatis-plus Mybatis是开源的java数据库框架-->
- <dependency>
- <groupId>com.baomidou</groupId>
- <artifactId>mybatis-plus-boot-starter</artifactId>
- <version>${mybatis-plus.version}</version>
- </dependency>
-
- <!--动态多数据库连接,用于管理多个数据源-->
- <dependency>
- <groupId>com.baomidou</groupId>
- <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
- <version>3.5.1</version>
- </dependency>
- <!-- Oracle JDBC Driver -->
- <dependency>
- <groupId>com.oracle.database.jdbc</groupId>
- <artifactId>ojdbc8</artifactId>
- <version>19.8.0.0</version>
- </dependency>
- #oracle
- spring.datasource.dynamic.primary=anita #给这个数据源命名
- spring.datasource.dynamic.datasource.anita.url=your database url
- spring.datasource.dynamic.datasource.anita.driver-class-name=oracle.jdbc.OracleDriver
- spring.datasource.dynamic.datasource.anita.username=username
- spring.datasource.dynamic.datasource.anita.password=password
- import com.baomidou.mybatisplus.annotation.TableName;
- import lombok.AllArgsConstructor;
- import lombok.Data;
- import lombok.NoArgsConstructor;
-
- import java.io.Serializable;
-
- @Data //使用Lombok自动生成getter setter方法,以及toString、equals和hashCode方法
- @TableName(value = "base_person") //指定该类为对应数据库的base_person表
- @NoArgsConstructor //生成无参构造函数
- @AllArgsConstructor //生成全参构造函数
- public class BasePerson implements Serializable { //Serializable 使BasePerson类支持序列化
- private String id;
- private String name;
- }
- import com.baomidou.dynamic.datasource.annotation.DS;
- import com.baomidou.mybatisplus.core.mapper.BaseMapper;
- import com.example.model.BasePerson;
- import org.apache.ibatis.annotations.Mapper;
-
- @Mapper// 标识这是一个MyBatis Mapper 接口,用于执行数据库操作
- @DS("anita") //使用指定名为anita的数据源
- public interface BasePersonMapper extends BaseMapper<BasePerson> { //继承了 MyBatis Plus 提供的基本 CRUD 操作方法。
- }
- import com.example.repository.BasePersonMapper;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
-
- @Service
- public class DbService {
- @Autowired
- private BasePersonMapper personMapper;
-
- public String getNameById(String id) {
- return personMapper.selectById(id).getName();
- }
- }
- import com.example.service.DbService;
- import lombok.extern.slf4j.Slf4j;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.*;
-
- @RestController
- @RequestMapping("/api/test")
- public class TestController {
- @Autowired
- private DbService dbService;
-
- @GetMapping(value = "/getPersonName")
- public String GetPersonName(String id){
- return dbService.getNameById(id);
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。