ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

springboot集成mbatisplus+sharding-jdbc+垂直切分

2022-01-22 01:34:11  阅读:161  来源: 互联网

标签:TUser tables jdbc springboot u1 shardingsphere mbatisplus user sharding


创建一个新库叫做user_db

 

 

/**
* 用户实体表
*/
@Data
public class TUser {
private Long userId;
private String ustatus;
private String username;
}
@Repository
public interface UserMapper extends BaseMapper<TUser> {
}
目前遇到的问题,实体表写的User,连接的时候找不到user,明明数据源配置的没问题。

INTO user ( ustatus,
username ) VALUES ( ?,
? )

后来实体类就改了,其实在上面加@Table的注解用别名也行。

 

 

#垂直切分
spring.shardingsphere.datasource.u1.type=com.alibaba.druid.pool.DruidDataSource
spring.shardingsphere.datasource.u1.driver-class-name=com.mysql.cj.jdbc.Driver
spring.shardingsphere.datasource.u1.url=jdbc:mysql://192.168.31.200:3306/user_db?serverTimezone=GMT%2B8
spring.shardingsphere.datasource.u1.username=root
spring.shardingsphere.datasource.u1.password=player3.

#t_user 表策略  u1库的表
spring.shardingsphere.sharding.tables.t_user.actual-data-nodes=u$->{1}.t_user

#主键生成策略
# 指定t_user表 主键user_id 生成策略为 SNOWFLAKE
spring.shardingsphere.sharding.tables.t_user.key-generator.column=user_id
spring.shardingsphere.sharding.tables.t_user.key-generator.type=SNOWFLAKE


# 指定分片策略 约定user_id值是直接添加到t_user种
spring.shardingsphere.sharding.tables.t_user.table-strategy.inline.sharding-column=user_id
spring.shardingsphere.sharding.tables.t_user.table-strategy.inline.algorithm-expression=t_user












    /**
* 单条插入
*/
@Test
public void addUser() {
TUser TUser = new TUser();
TUser.setUsername("张三2");
TUser.setUstatus("111132");
userMapper.insert(TUser);
}

@Test
public void findUser() {
QueryWrapper<TUser> wrapper = new QueryWrapper<>();
wrapper.eq("user_id",691448769429897217l);
TUser tUser = userMapper.selectOne(wrapper);
System.out.println(tUser);
//TUser(userId=691448769429897217, ustatus=111132, username=张三2)

}

标签:TUser,tables,jdbc,springboot,u1,shardingsphere,mbatisplus,user,sharding
来源: https://www.cnblogs.com/q1359720840/p/15832250.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有