欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

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;
版本不正确,需要使用更高版本的 mybatis-spring

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}