Mybaitis配置过程注意点_MySQL
程序员文章站
2022-06-17 07:59:30
...
- 在mybatis-config.xml中配置分页插件,插件配置必须放在mapper前面
- Mybatis分页拦截器获取sql
/*以下得到的是要执行的sql语句,并不是配置的sql语句*/ StatementHandler statementHandler = (StatementHandler)invocation.getTarget(); BoundSql boundSql = statementHandler.getBoundSql(); String originalSql = boundSql.getSql();
- 出现java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransactionFactory.newTransaction(Ljava/sql/Connection;)Lorg/apache/ibatis/transaction/Transaction;
https://mybatis.googlecode.com/files/mybatis-spring-1.2.1.zip
- Mybaitis参数严格区分大小写
mybatis 配置文件中的参数绑定区分大小写,必须与传递的参数名保持一致
- 出现数据类型111时,这是因为数据库字段数据类型与entity中的字段定义的数据类型不一致导致的,有以下两种方法解决
1、设定entity的数据类型与数据库类型一致
2、在sql中定义参数的数据类型,比如
where userCode = #{userCode, jdbcType=VARCHAR}
- 实现数据库字段与实体字段的关系对应
- 定义oracle数据库的mybatis获取主键并返回的配置,mybatis before after设置
SELECT SEQ_ARCHIVE.NEXTVAL FROM DUAL
- 定义其他数据库的Mybatis获取主键并返回的配置
insert into user(userName,password) values(#{userName},#{password})
- 定义mybatis查询结果注入到实体中
- 定义Mybaitis更新数据库表记录
update Tbl_ARCHIVES set title = #{archiveTitle}, content = #{content}, feeValue = #{feeValue} security = #{security}, subjectType = #{subjectType}, gradeType = #{gradeType}, gather = #{gather}, archiveType = #{archiveType}, keyWordName = #{keyWordName} where archivesKey = #{archiveKey}
- 定义mybatis删除数据表记录的方式
delete from title where spaArchivesKey = #{archiveKey}