问题标签 [mybatis-mapper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Mybatis自动映射支持dot
配置
mybatis.configuration.map-underscore-to-camel-case=true
我希望 mybatis 支持点,自动映射。
java - Mybatis批量插入性能在JDK升级时变慢
我们正在将我们的 jdk 从 1.8.0_51 升级到 1.8.0_251。项目正在使用带有 oracle db 的 spring、spring-mybatis。代码中有一些 mapper.insert 调用,性能下降太多。插入的数据 - 100000 到 14 列的表中。时间恶化了 100 倍。对于新代码需要超过 8000 秒。Mybatis insert code details-Mybatis session: ExecutorType.BATCH, autocommit=false 一次插入20000行。
调查了mybatis的调试日志。它只打印 SQL,没有任何区别。
由于组织限制,无法在此处添加代码。
java - 为什么 Mybatis 必须提供无参数构造方法?
我只在类中定义了一个参数化的构造方法。当参数个数和映射个数不同时,查询仍然可以正确。
我正在做一个一对多的关联查询。当 ArrayList 未写入构造函数时,一切正常。
映射器.xml
数据库查询结果
这个查询的结果是正确的,但很奇怪。因为我没有定义无参数构造函数。
但是如果我这样写:</p>
我会报错:</p>
我不明白为什么会这样。如果我写一个参数化的构造函数,它不会自动提供一个无参数的构造函数。mybatis在映射的时候会创建一个对象,但是不知道mybatis是怎么创建的。
如果我定义了一个构造函数而不写一个无参构造函数,那么mybatis创建对象的时候会调用哪个方法呢?如果是无参构造函数,我定义有参构造函数的时候应该不会报错,但实际上他报错,类型不匹配。
把不匹配类型的参数去掉就成功了,也就是说创建对象的时候自动调用了参数化的构造函数,不是很清楚。
刚学会用mybatis,不知道为什么会这样
java - 如何编写 mybatis 映射器以便在中间创建的临时表中插入?
我正在尝试使用注释 mybatis 为以下 sql 提取编写映射器:
我尝试编写的映射器类请记住,它ABC
是在两者之间创建的临时表。
错误是:
我知道那@Insert
是用来插入值的。但在这种情况下,临时表的创建会产生问题。
提前致谢。
java - 如何解决 MyBatis selectForUpdate 中的 indexOutOfBounds 错误?
我使用postgreSQL。这是我在 myBatisMapper 中的请求:
这是我的错误:
是什么原因以及如何解决?
mybatis - MyBatis 映射集合的正确方法
我有包含垂钓者列表的 POJO 团队:
以及对团队有指针的 POJO Angler:
AnglerMapper.xml
TeamMapper.xml
当我想检索所有钓鱼者时,我得到了Could not write JSON: Infinite recursion (StackOverflowError)。结果是这样的:
所以,钓鱼者指向团队,而不是团队指向钓鱼者等等,我很清楚,但是我可以避免这种映射方式吗?什么是解决方案,最佳实践?
java - 合并 mybatis 开关盒
我在我的查询中使用了 coalesce mybatis 开关盒,我遇到了类似的错误
查询数据库时出错。原因:java.sql.SQLException:ORA-01427:单行子查询返回多于一行
这是我的查询
提前致谢
escaping - 从 MyBatis 值中转义大括号 - Oracle
这是我的 MyBatis 映射器有问题的部分:
例如,如果 #{item} 包含“}”,我会得到:
- 如何正确转义所有可能有问题的字符?
- 把逻辑放在哪里?在映射器/dao/service..?
因此,例如 '}' 会被转义(如果文本已经包含转义的 '}' 以保持这种状态)。
项目中使用:
- 爪哇 8
- 春天
- 甲骨文数据库
- MyBatis
list - 如何遍历MyBatis中的动态列表并访问列表的对象
我想遍历一个列表,获取对象的名称并将该名称与我数据库中的记录匹配。然后获取该记录。
我尝试在 Mybatis 中使用 foreach 标签,但我只得到一个空列表作为回报。请帮助我并指出我是否犯了任何错误。
作为参考,我附上了我的服务实现、DAO、映射器和我正在使用的列表类。
服务实施
道
映射器
PaymentCommon.class
mybatis - mybatis 3 + spring:我可以根据查询结果中的列值将集合结果分为两组吗
我有 2 个这样的 java 模型
实际查询从具有这样列名的 db 中按名称获取结果..
不,我一直在尝试使mybatis xml根据trafficType列将上述查询结果分为两组,将划分的集合分别复制到DeviceData.java类的up列表,down列表中。我尝试使用鉴别器,但似乎没有用,因为我需要这两种情况。
到目前为止 resultMap 是这样的..(基本)
试图实现这个 JSON 响应:
感谢任何想法/语法,谢谢!