mybatis和Spring整合操作数据库

一、POM文件引jar

 
            
                com.sankuai
                inf-bom
                1.3.9.1
                pom
                import
            

          
            
                org.mybatis
                mybatis
                3.3.0
            
            
            
                org.mybatis
                mybatis-spring
                1.2.3
            

            
            
                mysql
                mysql-connector-java
                5.1.6
            

            
                org.springframework
                spring-jdbc
                4.3.3.RELEASE
            

            
                org.springframework
                spring-test
                4.3.3.RELEASE
            
 

二、基础配置xml



    
   

    
    
        
            com.mysql.jdbc.Driver
        
        
            jdbc:mysql://xx.xx.xx.xx:5002/数据库名称?useUnicode=true&characterEncoding=UTF-8
        
        
            用户名
        
        
            密码  
        
    
    
    
        
        
       

        
    

    
    
        
        
        
    
    
        
    

    

三、配置mybatis-config的xml






    
        
    
    
        
        
    

    
    
        
    


四、写mapper

@Repository
public interface UserMapper {

   //方式一:使用注解写SQL
    @Insert({"INSERT INTO t_biz_code(biz_line_id, biz_code_name) VALUES (#{0}, #{1})"})
    void addBiz(@Param("biz_line_id")int id, @Param("biz_code_name")String  name);


     //方式二:使用xml写SQL
     String seleteBiz(@Param("arg0")int id, @Param("arg1")String  name);
}

4.1、SQL语句用mybatis注解的方式写(方式一)

4.2、SQL 语句用xml的方式注入(方式二)

需要新增一个xml文件用于配置SQL语句





    

 

 

五、写DAO层

因为外部无法直接调用mapper

@Service
public class GrowthBizDao {

    @Resource
    private UserMapper userMapper;

   
   public void addBiz(int biz_line_id, String  biz_code_name){

     userMapper.addBiz(biz_line_id,biz_code_name);
   }

   public void deleteBiz(String  biz_code_name){
       userMapper.deleteBiz(biz_code_name);
   }

六、外部调用

 

问题:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'biz_line_id' not found. Available parameters are [0, 1, param1, param2]

解决:

1、入参换成map类型

2、入参用#{0}、#{1}

别名的方法试过,我这里不行(xml和注解都不行),至今没查到是什么原因....(有知道的朋友可以告知)

解决方法参照:https://www.jianshu.com/p/d977eaadd1ed

你可能感兴趣的:(应用)