千家信息网

Mybatis 项目开发实际常用SQL笔记总结

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,parameterType 和 resultTypeparameterType:单个参数用String,多个参数用mapresultType:可以是 Integer、String、Object
千家信息网最后更新 2026年11月02日Mybatis 项目开发实际常用SQL笔记总结
  • parameterType 和 resultType

parameterType:单个参数用String,多个参数用map

resultType:可以是 Integer、String、Object


                     
  • 对应的Java实现接口解析

我们可以基于org.mybatis.spring.SqlSessionTemplate提供的模板类来进行数据库操作的具体实现,例如以下是经过对模板的再封装进行实现的,封装类的过程做了日志记录操作等,在此具体不在细说:


        @Override        public int countGroupMasterByUid(String uid)         {                return getSqlSessionTemplate().selectOne("countGroupMasterByUid", uid);        }                @Override        public int countGroupMaster(String uid, String groupId)         {                Map map = new HashMap();                map.put("uid", uid);                map.put("groupId", groupId);                return getSqlSessionTemplate().selectOne("countGroupMaster", map);        }        @Override        public GetGroupMember queryMasterByGroupId(String groupId)         {                return getSqlSessionTemplate().selectOne("queryMasterByGroupId", groupId);        }        @Override        public String queryMasterIdByUid(String uid)         {                return getSqlSessionTemplate().selectOne("queryMasterIdByUid", uid);        }        @Override        public List queryMasterList(int index, int pageSize)         {                Map map = new HashMap();                map.put("index", (index-1)*pageSize);                map.put("pageSize", pageSize);                return getSqlSessionTemplate().selectList("queryMasterList",map);        }

亦可以参考:http://lydia-fly.iteye.com/blog/2153102


  • 动态SQL参考:http://www.cnblogs.com/ywqbj/p/5707652.html


  • selectKey的使用





注意:插入的时候id可以省略,但masterId必须对应的上AddMaster这个JavaBean的masterId属性。

表结构如下:

MySQL [mcloud]> desc t_mc_store_group_master;

+-------------+--------------+------+-----+-------------------+-----------------------------+

| Field | Type | Null | Key | Default | Extra |

+-------------+--------------+------+-----+-------------------+-----------------------------+

| id | bigint(16) | NO | PRI | NULL | auto_increment |

| u_id | varchar(128) | NO | MUL | NULL | |

| u_name | varchar(128) | YES | | NULL | |

| dept_name | varchar(128) | YES | | NULL | |

| create_time | timestamp | YES | | CURRENT_TIMESTAMP | |

| update_time | timestamp | YES | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |

+-------------+--------------+------+-----+-------------------+-----------------------------+

    INSERT INTO t_mc_store_group_master (id,u_id,u_name,dept_name)         VALUES (#{masterId},#{uid},#{uName},#{deptName})               SELECT LAST_INSERT_ID() AS masterId        
  • 组合查询设置不存在的列


 
  • 原生SQL语句

数据 数据库 生成 参数 模板 参考 封装 不同 动态 单个 多个 属性 接口 方式 日志 时候 生产商 结构 语句 过程 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州紫鲸互联网科技有限公司 互联网科技深圳 卓越科技(互联网 ) 大白互联网科技 互联网科技博客 滨湖区互联网智能科技产品供应 互联网之后的科技是什么 中化能源互联网科技招聘 河南猎农互联网科技有限公司 洛阳昕诺飞互联网科技有限公司 米聚互联网科技南京有限公司排面 玉溪新华互联网科技好不好 互联网相关科技技术 互联网科技年终奖 互联网风格科技公司名称 济南小医互联网科技有限公司招聘 云鲸互联网络科技有限公司 国产互联网科技公司 福仕德教育科技互联网 东风日产互联网科技公司叫什么 互联网黑科技 小米移动互联网科技园 互联网科技工作委员会主任 金融科技还是互联网 广州恒生互联网科技有限 互联网金融科技展 互联网风格科技公司名称 科技信息时代互联网发展 北京品多多互联网科技有限公司 伍佰万互联网科技是干嘛的
0