提交 22518247 authored 作者: Matrix's avatar Matrix

update xdb

上级 3f6c4ad6
......@@ -16,6 +16,7 @@
<properties>
<java.version>1.8</java.version>
<velocity.version>2.2</velocity.version>
</properties>
<dependencies>
......@@ -30,6 +31,12 @@
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>${velocity.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
......@@ -53,6 +60,31 @@
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
<!--swagger接口文档-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-bean-validators</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>com.gitee.flying-cattle</groupId>
<artifactId>mybatis-dsc-generator</artifactId>
<version>3.0.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
......
package com.matrix.md.config;
import org.springframework.context.annotation.Bean;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
/**
* Swagger2Config.
*
* @author Matrix <xhyrzldf@gmail.com>
* @since 2020/5/13 at 5:12 下午
*/
public class Swagger2Config {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.matrix.md.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("共享平台api文档")
.description("共享平台api文档")
.termsOfServiceUrl("#")
.version("1.0")
.build();
}
}
package com.matrix.md.sdb.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.matrix.md.sdb.entity.User;
import com.matrix.md.sdb.mapper.SdbUserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
/**
* <p>
* 前端控制器
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@RestController
@RequestMapping("/sdb/user")
public class SdbUserController {
@Autowired
private SdbUserMapper userMapper;
@GetMapping
public ResponseEntity findUsers() {
return ResponseEntity.ok(userMapper.selectList(Wrappers.emptyWrapper()));
}
@PostMapping
public ResponseEntity insertUsers(@RequestBody User user) {
int i = userMapper.insert(user);
return ResponseEntity.ok(i);
}
}
package com.matrix.md.sdb.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 共享平台的用户表 前端控制器
* </p>
*
* @author matrix
* @since 2020-05-13
*/
@RestController
@RequestMapping("/sdb/suser")
public class SuserController {
}
package com.matrix.md.sdb.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* 共享平台的用户表
* </p>
*
* @author matrix
* @since 2020-05-12
* @since 2020-05-13
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "SUSER")
public class User implements Serializable {
@ApiModel(value="Suser对象", description="共享平台的用户表")
public class Suser implements Serializable {
private static final long serialVersionUID = 1L;
private static final long serialVersionUID=1L;
private Long id;
@ApiModelProperty(value = "姓名")
private String name;
@ApiModelProperty(value = "年龄")
private Integer age;
@ApiModelProperty(value = "邮箱地址")
private String email;
private String name;
}
package com.matrix.md.sdb.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.matrix.md.sdb.entity.User;
import com.matrix.md.sdb.entity.Suser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* 共享平台的用户表 Mapper 接口
* </p>
*
* @author matrix
* @since 2020-05-12
* @since 2020-05-13
*/
@DS("sdb")
@Repository
public interface SdbUserMapper extends BaseMapper<User> {
public interface SuserMapper extends BaseMapper<Suser> {
}
package com.matrix.md.sdb.service;
import com.matrix.md.sdb.entity.User;
import com.matrix.md.sdb.entity.Suser;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* 共享平台的用户表 服务类
* </p>
*
* @author matrix
* @since 2020-05-12
* @since 2020-05-13
*/
public interface ISdbUserService extends IService<User> {
public interface ISuserService extends IService<Suser> {
}
package com.matrix.md.sdb.service.impl;
import com.matrix.md.sdb.entity.User;
import com.matrix.md.sdb.mapper.SdbUserMapper;
import com.matrix.md.sdb.service.ISdbUserService;
import com.matrix.md.sdb.entity.Suser;
import com.matrix.md.sdb.mapper.SuserMapper;
import com.matrix.md.sdb.service.ISuserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* 共享平台的用户表 服务实现类
* </p>
*
* @author matrix
* @since 2020-05-12
* @since 2020-05-13
*/
@Service
public class SdbUserServiceImpl extends ServiceImpl<SdbUserMapper, User> implements ISdbUserService {
public class SuserServiceImpl extends ServiceImpl<SuserMapper, Suser> implements ISuserService {
}
package com.matrix.md.tmp;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
/**
* OperateTableMapper.
*
* @author Matrix <xhyrzldf@gmail.com>
* @since 2020/5/13 at 10:55 上午
*/
@Repository
public interface OperateTableMapper {
/**
* create table
* @param tableName 表名
* @param propertyName 属性名
* @param propertyType 属性类型
* @return
*/
int createNewTable(@Param("tableName") String tableName,
@Param("propertyName") String propertyName,
@Param("propertyType") String propertyType);
int dropTable(@Param("tableName")String tableName);
}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.matrix.md.tmp.OperateTableMapper">
<update id="createNewTable">
CREATE TABLE ${tableName}
(
id bigint(20) NOT NULL AUTO_INCREMENT,
${propertyName} ${propertyType} not null,
PRIMARY KEY (id)
)
</update>
<update id="dropTable">
DROP TABLE IF EXISTS ${tableName}
</update>
</mapper>
\ No newline at end of file
package com.matrix.md.tmp;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@Slf4j
@RestController
@RequestMapping("/sdb/user")
public class TmpUserController {
// @Autowired
// private SdbUserMapper userMapper;
// @Autowired
// private OperateTableMapper operateTableMapper;
//
// @GetMapping
// public ResponseEntity findUsers() {
// return ResponseEntity.ok(userMapper.selectList(Wrappers.emptyWrapper()));
// }
//
// @PostMapping
// public ResponseEntity insertUsers(@RequestBody User user) {
// int i = userMapper.insert(user);
// return ResponseEntity.ok(i);
// }
//
// @PostMapping("/table")
// public ResponseEntity createTable() {
// int i = operateTableMapper.createNewTable("dyUser", "name", "varchar(255)");
// log.info("{}", i);
// return ResponseEntity.ok("ok");
// }
//
// @DeleteMapping("/table")
// public ResponseEntity dropTable() {
// String tableName = "dyUser";
// int count = operateTableMapper.dropTable(tableName);
// log.info("成功删除了{}表", tableName);
// return ResponseEntity.ok("ok");
// }
}
......@@ -8,12 +8,17 @@ import com.baomidou.mybatisplus.generator.InjectionConfig;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.po.TableInfo;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import com.baomidou.mybatisplus.generator.engine.VelocityTemplateEngine;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
* mybatis auto code generator
*
* @author matrix
*/
public class CodeGenerator {
/**
......@@ -48,15 +53,17 @@ public class CodeGenerator {
gc.setOutputDir(projectPath + "/src/main/java");
gc.setAuthor("matrix");
gc.setOpen(false);
gc.setSwagger2(true);
mpg.setGlobalConfig(gc);
// 数据源配置
DataSourceConfig dsc = new DataSourceConfig();
dsc.setUrl("jdbc:mysql://192.168.1.100:3306/sdb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8");
// dsc.setSchemaName("public");
String localDbUrl = "jdbc:mysql://localhost:3306/sdb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8&allowPublicKeyRetrieval=true";
dsc.setUrl(localDbUrl);
// dsc.setSchemaName("public"); This is for some special db,like kingbase
dsc.setDriverName("com.mysql.cj.jdbc.Driver");
dsc.setUsername("root");
dsc.setPassword("123456");
dsc.setPassword("ldf123456");
mpg.setDataSource(dsc);
// 包配置
......@@ -91,14 +98,13 @@ public class CodeGenerator {
strategy.setColumnNaming(NamingStrategy.underline_to_camel);
strategy.setEntityLombokModel(true);
strategy.setRestControllerStyle(true);
// strategy.setSuperControllerClass("com.baomidou.mybatisplus.samples.generator.common.BaseController");
strategy.setInclude(scanner("表名"));
strategy.setSuperEntityColumns("id");
strategy.setControllerMappingHyphenStyle(true);
strategy.setTablePrefix(pc.getModuleName() + "_");
mpg.setStrategy(strategy);
// 选择 freemarker 引擎需要指定如下加,注意 pom 依赖必须有!
mpg.setTemplateEngine(new FreemarkerTemplateEngine());
mpg.setTemplateEngine(new VelocityTemplateEngine());
mpg.execute();
}
......
package com.matrix.md.utils;
import com.gitee.flying.cattle.mdg.entity.BasisInfo;
import com.gitee.flying.cattle.mdg.util.EntityInfoUtil;
import com.gitee.flying.cattle.mdg.util.Generator;
import com.gitee.flying.cattle.mdg.util.MySqlToJavaUtil;
import java.sql.SQLException;
/**
* SwaggerCodeGenerator.
*
* @author Matrix <xhyrzldf@gmail.com>
* @since 2020/5/13 at 3:21 下午
*/
public class SwaggerCodeGenerator {
// 基础信息:项目名、作者、版本
public static final String PROJECT = "sharding-platform-demo";
public static final String AUTHOR = "matrix";
public static final String VERSION = "V1.0";
// 数据库连接信息:连接URL、用户名、秘密、数据库名
public static final String URL = "jdbc:mysql://localhost:3306/sdb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8&allowPublicKeyRetrieval=true";
public static final String NAME = "root";
public static final String PASS = "ldf123456";
public static final String DATABASE = "sdb";
// 类信息:类名、对象名(一般是【类名】的首字母小些)、类说明、时间
public static final String CLASSNAME = "foreign";
public static final String TABLE = "pm_foreign";
public static final String CLASSCOMMENT = "API应用KEY";
public static final String TIME = "2019年10月16日";
public static final String AGILE = System.currentTimeMillis() + "";
// 路径信息,分开路径方便聚合工程项目,微服务项目
public static final String ENTITY_URL = "com.matrix.md.sdb.entity";
public static final String DAO_URL = "com.matrix.md.sdb.mapper";
public static final String XML_URL = "com.matrix.md.sdb.mapper.xml";
public static final String SERVICE_URL = "com.matrix.md.sdb.service";
public static final String SERVICE_IMPL_URL = "com.matrix.md.sdb.service.impl";
public static final String CONTROLLER_URL = "com.matrix.md.sdb.controller";
//是否是Swagger配置
public static final String IS_SWAGGER = "true";
public static void main(String[] args) {
BasisInfo bi = new BasisInfo(PROJECT, AUTHOR, VERSION, URL, NAME, PASS, DATABASE, TIME, AGILE, ENTITY_URL,
DAO_URL, XML_URL, SERVICE_URL, SERVICE_IMPL_URL, CONTROLLER_URL, IS_SWAGGER);
bi.setTable(TABLE);
bi.setEntityName(MySqlToJavaUtil.getClassName(TABLE));
bi.setObjectName(MySqlToJavaUtil.changeToJavaFiled(TABLE));
bi.setEntityComment(CLASSCOMMENT);
try {
bi = EntityInfoUtil.getInfo(bi);
String projectPath = System.getProperty("user.dir");
// 生成文件存放位置
String fileUrl = "projectPath" + "/src/main/java";
//开始生成文件
String aa1 = Generator.createEntity(fileUrl, bi).toString();
String aa2 = Generator.createDao(fileUrl, bi).toString();
String aa3 = Generator.createDaoImpl(fileUrl, bi).toString();
String aa4 = Generator.createService(fileUrl, bi).toString();
String aa5 = Generator.createServiceImpl(fileUrl, bi).toString();
String aa6 = Generator.createController(fileUrl, bi).toString();
// 是否创建swagger配置文件
String aa7 = Generator.createSwaggerConfig(fileUrl, bi).toString();
System.out.println(aa1);
System.out.println(aa2);
System.out.println(aa3);
System.out.println(aa4);
System.out.println(aa5);
System.out.println(aa6);
System.out.println(aa7);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
package com.matrix.md.xdb.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.matrix.md.xdb.entity.User;
import com.matrix.md.xdb.mapper.XdbUserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@RestController
@RequestMapping("/xdb/user")
public class XdbUserController {
@Autowired
private XdbUserMapper userMapper;
@GetMapping
public ResponseEntity findUsers() {
return ResponseEntity.ok(userMapper.selectList(Wrappers.emptyWrapper()));
}
@PostMapping
public ResponseEntity insertUsers(@RequestBody User user) {
int i = userMapper.insert(user);
return ResponseEntity.ok(i);
}
}
package com.matrix.md.xdb.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "XUSER")
public class User implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private Integer age;
private String email;
private String name;
}
package com.matrix.md.xdb.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.matrix.md.xdb.entity.User;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@DS("xdb")
@Repository
public interface XdbUserMapper extends BaseMapper<User> {
}
package com.matrix.md.xdb.service;
import com.matrix.md.xdb.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author matrix
* @since 2020-05-12
*/
public interface IXdbUserService extends IService<User> {
}
package com.matrix.md.xdb.service.impl;
import com.matrix.md.xdb.entity.User;
import com.matrix.md.xdb.mapper.XdbUserMapper;
import com.matrix.md.xdb.service.IXdbUserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@Service
public class XdbUserServiceImpl extends ServiceImpl<XdbUserMapper, User> implements IXdbUserService {
}
package com.matrix.md.ydb.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.matrix.md.ydb.entity.User;
import com.matrix.md.ydb.mapper.YdbUserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
/**
* <p>
* 前端控制器
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@RestController
@RequestMapping("/ydb/user")
public class YdbUserController {
@Autowired
private YdbUserMapper userMapper;
@GetMapping
public ResponseEntity findUsers() {
return ResponseEntity.ok(userMapper.selectList(Wrappers.emptyWrapper()));
}
@PostMapping
public ResponseEntity insertUsers(@RequestBody User user) {
int i = userMapper.insert(user);
return ResponseEntity.ok(i);
}
}
package com.matrix.md.ydb.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "YUSER")
public class User implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private Integer age;
private String email;
private String name;
}
package com.matrix.md.ydb.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.matrix.md.ydb.entity.User;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@DS("ydb")
@Repository
public interface YdbUserMapper extends BaseMapper<User> {
}
package com.matrix.md.ydb.service;
import com.matrix.md.ydb.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author matrix
* @since 2020-05-12
*/
public interface IYdbUserService extends IService<User> {
}
package com.matrix.md.ydb.service.impl;
import com.matrix.md.ydb.entity.User;
import com.matrix.md.ydb.mapper.YdbUserMapper;
import com.matrix.md.ydb.service.IYdbUserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author matrix
* @since 2020-05-12
*/
@Service
public class YdbUserServiceImpl extends ServiceImpl<YdbUserMapper, User> implements IYdbUserService {
}
......@@ -7,16 +7,16 @@ spring:
datasource:
sdb:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.1.100:3306/sdb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
url: jdbc:mysql://localhost:3306/sdb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
username: root
password: 123456
password: ldf123456
xdb:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.1.100:3306/xdb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
url: jdbc:mysql://localhost:3306/xdb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
username: root
password: 123456
password: ldf123456
ydb:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.1.100:3306/ydb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
url: jdbc:mysql://localhost:3306/ydb?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
username: root
password: 123456
\ No newline at end of file
password: ldf123456
\ No newline at end of file
spring:
profiles:
active: kingbase
active: mysql
logging:
level:
......
create table column_info
(
id bigint not null comment '主键,雪花算法生成',
name varchar(255) not null comment '列名',
type varchar(50) not null comment '列的数据类型',
is_null tinyint not null comment '是否可以为空,0不能为空,1可以为空',
table_info_id bigint not null comment '该列所属的表的主键id,是外键',
constraint column_info_pk
primary key (id)
)
comment '表里每一列的结构信息';
create table table_info
(
id bigint not null comment '主键,雪花算法生成',
platform_type tinyint not null comment '平台类型(1为写入方平台,2为读取方平台)',
table_name varchar(255) not null comment '表名',
constraint table_info_pk
primary key (id)
)
comment '每个平台对应的表信息';
# sharing database
use sdb;
drop table if exists suer;
create table suser
(
id bigint not null comment '主键,雪花算法生成',
name varchar(255) not null comment '姓名',
age int not null comment '年龄',
email varchar(255) not null comment '邮箱地址',
primary key (id)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8 comment '共享平台的用户表';
insert into suser (id, name, age, email)
VALUES (1, 'jack', 25, 'jack@gmail.com');
# x database
use xdb;
drop table if exists xuer;
create table xuser
(
id bigint not null comment '主键,雪花算法生成',
name varchar(255) not null comment '姓名',
age int not null comment '年龄',
email varchar(255) not null comment '邮箱地址',
primary key (id)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8 comment 'X前置库的用户表';
insert into xuser (id, name, age, email)
VALUES (1, 'jack', 25, 'jack@gmail.com');
# y database
use ydb;
drop table if exists xuer;
create table yuser
(
id bigint not null comment '主键,雪花算法生成',
name varchar(255) not null comment '姓名',
age int not null comment '年龄',
email varchar(255) not null comment '邮箱地址',
primary key (id)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8 comment 'Y前置库的用户表';
insert into yuser (id, name, age, email)
VALUES (1, 'jack', 25, 'jack@gmail.com');
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.matrix.md.xdb.mapper.XdbUserMapper">
<mapper namespace="com.matrix.md.sdb.mapper.SuserMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.matrix.md.sdb.mapper.SdbUserMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.matrix.md.ydb.mapper.YdbUserMapper">
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论