当前位置:Gxlcms > mysql > Mybaitis配置过程注意点_MySQL

Mybaitis配置过程注意点_MySQL

时间:2021-07-01 10:21:17 帮助过:5人阅读

  • 在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}	

人气教程排行