对持久层sql语句的高复用性的一点小领悟
来源:互联网 发布:交大 汉芯 知乎 编辑:程序博客网 时间:2024/06/03 13:49
一个小例子,我的前台页面注册窗口需要查询用户数据库中的账号是否存在,以及登陆窗口需要验证账号密码是否正确,那么就可以只写一句sql语句,及一个持久层接口方法就可以实现.
传入的参数是一个的bean对象,就可以依靠判断参数是否存在进行不同的查询.代码如下;
1<select id="selectUserByCondition" resultMap="BaseResultMap">select * from t_userwhereaccount = #{account} and password = #{password}</select>
2<select id="selectUserByAccount" resultMap="BaseResultMap">select * from t_userwhereaccount = #{account}</select>3<select id="selectUserByCondition" resultMap="BaseResultMap">select * from t_user<where><if test="account!=null">and account = #{account}</if><if test="password!=null">and password = #{password}</if><if test="phone!=null">and phone = #{phone}</if><if test="email!=null">and email = #{email}</if><if test="age!=null">and age = #{age}</if></where></select>
前两种写法的话,如果查询一个或多个参数,就要有不同的sql语句,写成第三种方式,可以将bean中全部成员变量写上进行判断,就能判断参数是否存在进行查询.可以举一反三,更加有效的简化代码.
阅读全文
0 0
- 对持久层sql语句的高复用性的一点小领悟
- 我对持久层的一点看法
- 对iOS中block的一点领悟
- 对Fragment生命周期的一点领悟
- 关于快速选择算法,自己的一点小领悟
- 关于单例设计的一点小领悟
- 可支持多种数据库的sql语句的持久层程序介绍
- 关于地址运算的一点领悟
- 写持久层时对Handler进行的总结
- 对extern "C"的一点小认识
- 对extern "C"的一点小认识
- 个人对SOA的一点小理解
- 对递归函数的一点小理解
- 大学对自己的一点小要求
- 对文本框的一点小应用!
- 对前端的一点小理解
- SQL查询语句优化的一点
- SQL查询语句优化的一点
- ubuntu安装QT5
- 正则表达式工具RegexBuddy使用教程
- 临时笔记:豪大推荐的Vue 学习路径(二)
- IO流的基础
- Spring框架第二天(IOC和AOP)
- 对持久层sql语句的高复用性的一点小领悟
- Socket通讯
- 运算符的优先级原则
- 第二届全国智能制造(中国制造2025) 创新创业大赛华东赛区在苏州启动
- SpringMVC随笔——认识ModelAndView
- 深度学习入门级别资料
- 搭建SpringMVC4.3.2+MyBatis3.4.1框架
- CSV文件导入数据库的sql
- 我理解的Java流基础篇(二)