博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mybatis传多个参数(三种解决方案)
阅读量:5077 次
发布时间:2019-06-12

本文共 1234 字,大约阅读时间需要 4 分钟。

最近随着项目的深入,逐渐的对数据库的应用越来越深入,已经开始根据自身的业务写mapper方法了,然后看到这篇帖子,好的东西要吸收进来,原文如下:

据我目前接触到的传多个参数的方案有三种。

第一种方案

DAO层的函数方法 

Public User selectUser(String name,String area);

对应的Mapper.xml 

其中,#{0}代表接收的是dao层中的第一个参数,#{1}代表dao层中第二参数,更多参数一致往后加即可。

第二种方案

此方法采用Map传多参数.

Dao层的函数方法

Public User selectUser(Map paramMap);

对应的Mapper.xml

Service层调用

Private User xxxSelectUser(){     Map paramMap=new hashMap();     paramMap.put(“userName”,”对应具体的参数值”);     paramMap.put(“userArea”,”对应具体的参数值”);     User user=xxx. selectUser(paramMap);}

个人认为此方法不够直观,见到接口方法不能直接的知道要传的参数是什么。

第三种方案

Dao层的函数方法

Public User selectUser(@param(“userName”)String name,@param(“userArea”)String area);

对应的Mapper.xml

  

个人觉得这种方法比较好,能让开发者看到dao层方法就知道该传什么样的参数,比较直观,个人推荐用此种方案。

-----------------------------------华丽原文分割线----------------------------------

ps:今天在网上看到第三种方案其实还是传个map进去,只不过不用像方案二一样显式的指定,而是通过param注解就可以了

 

转载于:https://www.cnblogs.com/Jeremy2001/p/10636967.html

你可能感兴趣的文章
oracle连接的三个配置文件(转)
查看>>
Python内置函数(29)——help
查看>>
Android TextView加上阴影效果
查看>>
《梦断代码》读书笔记(三)
查看>>
AngularJS学习篇(一)
查看>>
关于Xshell无法连接centos6.4的问题
查看>>
spring security 11种过滤器介绍
查看>>
代码实现导航栏分割线
查看>>
大数据学习系列(8)-- WordCount+Block+Split+Shuffle+Map+Reduce技术详解
查看>>
luogu4849 寻找宝藏 (cdq分治+dp)
查看>>
关于源程序到可运行程序的过程
查看>>
C# Async与Await的使用
查看>>
Mysql性能调优
查看>>
iOS基础-UIKit框架-多控制器管理-实例:qq界面框架
查看>>
poj1611 简单并查集
查看>>
Ubuntu 14.04下安装CUDA8.0
查看>>
跨平台开发 -- C# 使用 C/C++ 生成的动态链接库
查看>>
C# BS消息推送 SignalR介绍(一)
查看>>
WPF星空效果
查看>>
WPF Layout 系统概述——Arrange
查看>>