myBatis详细介绍和注意的地方

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

一、自增主键的问题

    自增主键有两中方式,一种是uuid,另外一种是自增长。

    自增主键生成Uuid主键生成时机区别:

    自增主键在insert语句执行后生成的。Uuid主键在insert语句执行前生成的。


	
	     select LAST_INSERT_ID()
	
	insert into test(testname)
	 values(#{testname})
	

二、SqlMapConfig.xml配置文件内容

作为mybatis的全局配置文件,配置内容包括:数据库环境、mapper定义、全局参数设置。

properties(属性)

settings(全局配置参数)

typeAliases(类型别名)

typeHandlers(类型处理器)

objectFactory(对象工厂)

plugins(插件)

environments(环境集合属性对象)

environment(环境子属性对象)

transactionManager(事务管理)

dataSource(数据源)

mappers(映射器)

主要讲下类型别名的问题。


	    
		
		
		
	

三、包装对象使用

        开发中使用pojo传递查询条件,查询条件是综合的查询条件,不仅包括用户查询条件还包括其它的查询条件(是另一个pojo),使用包装对象传递输入参数。定义包装对象将查询条件(pojo)以类组合的方式包装起来。parameterType使用包装对象。

四、一对一和一对多关系

    1.一对一pojo对象上的体现

    

public class test{
   priavte String testName;
   private String createTiem;
   
   private User user;/用户对象

}

    2.xml的体现


		
		
		
		

		
		
			
			...字段
		


	

    一对多的pojo体现

public class test{
   priavte String testName;
   private String createTiem;
   
   private List user;/用户对象

}

xml体现:

使用的是collection关键字

五、sql片段

可以使用,写出sql片段。


	 
	     
			
				
				
					and user.username = #{user.username}
				
				
					and user.sex = #{user.sex}
						
				
			

六、一般是使用resultType

七、批量操作

使用sql语句:

collection:集合,ids数组
        item:遍历的每个对象
        open:开始遍历时拼接的sql
        separator:遍历的间隔符号
        close:结束 遍历时拼接的sql
       
        
            id =#{id} 
        

注意的是参数为 private  int[] ids.然后把这个语句添加到里面去就行。

 


 

转载于:https://my.oschina.net/u/2380961/blog/724403

你可能感兴趣的:(myBatis详细介绍和注意的地方)