温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Mybatis配置映射文件中parameterType怎么用

发布时间:2021-09-29 10:48:16 来源:亿速云 阅读:176 作者:小新 栏目:开发技术

这篇文章给大家分享的是有关Mybatis配置映射文件中parameterType怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

    Mybatis配置映射文件parameterType用法

    在mybatis映射接口的配置中,有select,insert,update,delete等元素都提到了parameterType的用法,parameterType为输入参数,在配置的时候,配置相应的输入参数类型即可。parameterType有基本数据类型和复杂的数据类型配置。

    1.基本数据类型

    如输入参数只有一个,其数据类型可以是基本的数据类型,也可以是自己定的类类型。包括int,String,Integer,Date,如下:

    (1)根据id进行相应的删除:<delete id="deleteById" parameterType="Integer">

    (2)添加员工:<insert id="addEmp" parameterType="com.pojo.Employee">

    2.复杂数据类型:包含java实体类,map

    配置如:

      <select id="selectTeacher" parameterType="Map" resultType="com.myapp.domain.Teacher">  
           select * from Teacher where c_id=#{id} and sex=#{sex} 
      </select>

    java代码如下:

    Map<String,String> map=new HasMap<String,String>();  
        map.put("id","2");  
        map.put("sex","男");  
        List<Teacher> tList = teacherMapper.selectTeacher(map);   
        for (Teacher entityTemp : tList) {    
        System.out.println(entityTemp.toString()); }

    另外MyBatis还提供了一个使用注解来参入多个参数的方式。这种方式需要在接口的参数上添加@Param注解

    /**
         * 此处要注意的是,由于该方法需要传入多个参数,在进行Mybatis配置时,
         * 没有办法同时配置多个参数,另外MyBatis还提供了一个使用注解来参入
         * 多个参数的方式。这种方式需要在接口的参数上添加@Param注解。。
         * 注意,以下两种写法是完全相同的。但使用的时候要使用第一种类型
         */
        
        User login(@Param(value="name")String name,@Param(value="password")String password );
    //    User login(String name,String password);

    配置如下:

     <select id="login"  resultType="com.pojo.User">
        select * from us where name=#{name} and password=#{password}
       </select>

    Mybatis parameterType # $符号的注意事项

    1.如果传入的参数类型大于1种,且参数个数大于等于2,不要写parameterType不然会报错

    2.解析传入参数有2种 #{} 与${} ,"#": 会把你传入的参数当成字符串解析 也就是你无论传入什么 都会被加上''号 "$" : 你传入什么 就是什么

    感谢各位的阅读!关于“Mybatis配置映射文件中parameterType怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI