MybatisPlus 遇到的问题
问题:dynamic-datasource-spring-boot-starter
报错
Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured.
SpringBoot 默认是单一数据源自动配置加载,所以禁止 SpringBoot 自动注入数据源配置即可解决
解决
@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)
问题:Oracle数据库
Mybatis & Oracle数据库批量插入SQL问题
注意:传递得 list 集合不能为空,否则会报错
1,表建立了序列
-- SEQ_ACC_ACCOUNTING_DATA.NEXTVAL 获取 SEQ_ACC_ACCOUNTING_DATA序列值,
<insert>
INSERT INTO 表名 (id,fldS1,fldS2)
select SEQ_ACC_ACCOUNTING_DATA.NEXTVAL,A.* from(
<foreach collection="list" item="item" index="index" separator="UNION ALL">
SELECT
#{item.fldS1, jdbcType=VARCHAR} as fldS1,
#{item.fldS2, jdbcType=VARCHAR} as fldS2
from dual
</foreach>
) A
</insert>
2,表没创建序列
<insert>
INSERT INTO 表名 (id,fldS1,fldS2)
select A.* from(
<foreach collection="list" item="item" index="index" separator="UNION ALL">
SELECT
#{item.id, jdbcType=VARCHAR},
#{item.fldS1, jdbcType=VARCHAR},
#{item.fldS2, jdbcType=VARCHAR}
from dual
</foreach>
) A
</insert>
问题:mybatis和mybatisPlus的yml配置
mybatis和mybatisPlus 只能配置一个,如果使用mybatisplus使用如下配置即可
mybatis-plus:
# 搜索指定包别名
typeAliasesPackage: com.ruoyi.**.domain
# 配置mapper的扫描,找到所有的mapper.xml映射文件
mapperLocations: classpath*:mapper/**/*.xml
# 加载全局的配置文件
configLocation: classpath:mybatis/mybatis-config.xml
configuration:
log-impl: #开启sql日志
global-config:
db-config:
logic-delete-value: 2 # 逻辑已删除值(默认为 2)
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
configLocation 和 configuration 不能同时存在
可以把 configuration 配置到 configLocation扫描的xml文件中
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 全局参数 -->
<settings>
<!-- 使全局的映射器启用或禁用缓存 -->
<setting name="cacheEnabled" value="true" />
<!-- 允许JDBC 支持自动生成主键 -->
<setting name="useGeneratedKeys" value="true" />
<!-- 配置默认的执行器.SIMPLE就是普通执行器;REUSE执行器会重用预处理语句(prepared statements);BATCH执行器将重用语句并执行批量更新 -->
<setting name="defaultExecutorType" value="SIMPLE" />
<!-- 指定 MyBatis 所用日志的具体实现 -->
<setting name="logImpl" value="org.apache.ibatis.logging.stdout.StdOutImpl" />
<!-- 使用驼峰命名法转换字段 -->
<!-- <setting name="mapUnderscoreToCamelCase" value="true"/> -->
</settings>
</configuration>
日夜颠倒头发少 ,单纯好骗恋爱脑 ,会背九九乘法表 ,下雨只会往家跑 ,搭讪只会说你好 ---- 2050781802@qq.com