转载请注明出处哈:http://carlosfu.iteye.com/blog/2238662
一、通过数据字典查询列,属性数据(减轻手工、防止错误、结合sql标签使用)
select group_concat(column_name) from information_schema.columns where table_schema = 'football' and table_name = 'club'; # table_schema是数据库名 # club是数据表名 结果: id,name,info,create_date,rank
二、 下划线命名到驼峰命名
<settings> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings>
三、sql映射中的 # , $ 区分
1. #{}表示一个占位符号,#{}接收输入参数,类型可以是简单类型,pojo、hashmap。
2. 如果接收简单类型,#{}中可以写成value或其它名称。
#{}接收pojo对象值,通过OGNL读取对象中的属性值,通过属性.属性.属性...的方式获取对象属性值。
3. ${}表示一个拼接符号,会引用sql注入,所以不建议使用${}。
${}接收输入参数,类型可以是简单类型,pojo、hashmap。
如果接收简单类型,${}中只能写成value。
${}属性接收pojo对象值,通过OGNL读取对象中的属性值,通过属性.属性....的方式获取对象属性值。
四、批量操作:
以批量insert为例子:
(1) dao添加新方法:
/** * 批量添加俱乐部 * @param clubList */ public void batchSave(@Param("clubList") List<Club> clubList);
(2) xml
<insert id="batchSave" parameterType="List" useGeneratedKeys="true"> insert into club(name,info,create_date,rank) values <foreach collection="clubList" item="club" index="index" separator=","> (#{club.name},#{club.info},#{club.createDate},#{club.rank}) </foreach> </insert>
(3) 测试:
@Test public void testBatchSave() { ClubDao clubDao = sqlSession.getMapper(ClubDao.class); Club club1 = new Club(); club1.setName("Arsenal"); club1.setInfo("阿森纳"); club1.setCreateDate(new Date()); club1.setRank(15); Club club2 = new Club(); club2.setName("ManUnited"); club2.setInfo("曼联"); club2.setCreateDate(new Date()); club2.setRank(18); List<Club> clubList = new ArrayList<Club>(); clubList.add(club1); clubList.add(club2); clubDao.batchSave(clubList); }
五、mybatis中的小于号要进行转义,例如:
< 用 <代替
select id,name from table where vid=#{vid} and prod=#{prod} and collect_time >=#{startTime} and collect_time<=#{endTime}
六、批量更新:
<update id="batchUpdate"> <foreach collection="list" item="item" open="" close="" separator=";"> update jf_cdn_vid_hour set normal_count=#{item.normalCount},cheat_count=#{item.cheatCount} where vid = #{item.vid} and prod= #{item.prod} and collect_time=#{item.collectTime} </foreach> </update>
但是jdbc连接要添加allowMultiQueries=true
<property name="jdbcUrl" value="jdbc:mysql://127.0.0.1:3306/xxdb?allowMultiQueries=true"/>
七、返回Map
例如希望select id,name from table返回Map<Long,String>()
但是事实上,在写mapper.xml时候,返回的是一个List<Map<String,Long>>,然后需要人工解析为你要的Map
<select id="getXXX" resultType="hashmap"> select id,name from table </select>
Dao:
List<Map<String, Object>> getXXX();
相关推荐
同时,还可以提供一些MySQL实用技巧,以帮助面试者在工作中更好地使用MySQL数据库,提高工作效率。 该MySQL面试题资源也可以为MySQL数据库管理和开发领域的学习者提供宝贵的参考资料。这些资料可以帮助他们更好地...
本资源是一个基于SSM(Spring、SpringMVC、MyBatis)的健身房管理系统。它包含了完整的源代码、部署说明、演示视频以及源码介绍,旨在帮助开发者快速搭建一个功能完善、易于维护的健身房管理系统。源码介绍:本系统...
第三部分是 MyBatis 的实战应用, 主要讲解 MyBatis 的一些实用的场景 第 6 章: 介绍 MyBatis 的解析和运行原理, 我们将了解到 SqlSession 的构建方法, 以 及其四大对象是如何工作的。 第 7 章: 在第 6 章的基础...
因而具有一定的实用性。 本站是一个B/S模式系统,采用Spring Boot框架,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得英语知识应用网站管理工作系统化、规范化。本...
该源码采用了Spring、SpringMVC和MyBatis框架,实现了用户注册登录、商品展示、购物车管理、订单处理等核心功能。同时,该源码还具备良好的可扩展性和可维护性,方便开发者进行二次开发和定制。部署说明部分详细介绍...
使用Java, Spring, SpringMVC, MyBatis, EasyUI, MySQL, 实现一个简单的分销资源管理系统(毕设),练习使用SSM框架。.zip使用Java, Spring, SpringMVC, MyBatis, EasyUI, MySQL, 实现一个简单的分销资源管理系统...
为了帮助大家更好地完成毕业设计,我们特地整理了一系列Java毕业设计项目参考资源,包括源代码、MD文档、笔记等等,希望能对您的学习与研究提供有力支持。 项目源代码:涵盖了多个Java毕业设计项目的完整代码,包括...
* 烘焙技巧学习:平台提供多种烘焙技巧的学习模块,包括基础技巧、高级技巧和实用技巧等。 * 食谱分享:用户可以上传、编辑和删除自己的烘焙食谱,同时也可以浏览和收藏其他用户的食谱。 * 烘焙作品展示:用户可以在...
SSM项目汉中茗茶微系统设计与实现修改微信小程序代码pf.zip是一个使用Java语言开发的Web应用,它采用了SSM(Spring Spring MVC MyBatis)框架,并结合了微信小程序前端技术。该系统旨在为用户提供一个便捷的在线茶叶...
SSM项目大学生心理健康测评管理系统小程序pf.zip是一个使用Java语言开发的Web应用,它采用了SSM(Spring Spring MVC MyBatis)框架,并结合了微信小程序前端技术。该系统旨在为高校学生提供一个心理健康评估和管理的...
“Java毕业设计-基于ssm框架开发的服装定制系统”是一项综合性强的毕业设计项目,它充分结合了Java编程语言与SSM(Spring+SpringMVC+MyBatis)框架的技术优势,打造了一款功能完善、操作便捷的服装定制系统。...
SpringBoot项目英语知识应用网站是一个采用Java ...总的来说,SpringBoot项目英语知识应用网站通过其丰富的学习资源、实用的功能模块和高效的技术架构,为用户提供了一个便捷、高效、个性化的在线英语学习环境。
SSM项目小程序“口腔助手”小程序的设计与实现_1171u.zip是一个基于Spring、Spring MVC和MyBatis(SSM)框架开发的微信小程序,专为口腔健康领域设计的智能助手。该系统结合了微信小程序的用户便利性和SSM框架的技术...
本资源包是基于SSM(Spring+SpringMVC+MyBatis)框架开发的电影网站毕业设计项目的完整资源集合,包含了项目源代码、说明文档以及毕业论文。这是一个兼具实践性和学术性的资源包,旨在帮助广大计算机专业的学生顺利...
这是一个基于SSM(Spring + Spring MVC + MyBatis)框架和Vue.js的某理工学院网上打印服务平台项目。...通过学习该项目,您可以了解到如何使用不同的技术和框架构建一个完整的Web应用程序,并掌握一些实用的开发技巧。
该系统采用了SSM(Spring+SpringMVC+MyBatis)框架进行开发,SSM框架是当前企业开发中广泛应用的主流框架之一,它集轻量级、高灵活性、易于扩展等诸多优点于一身。通过这个项目的实践,同学们可以深入了解SSM框架的...
“基于SSM框架开发的美容院管理系统”是一项富有创新性和实用性的Java毕业设计项目。该项目充分利用了SSM(Spring、SpringMVC、MyBatis)框架的强大功能,构建了一个功能完善、操作便捷的美容院管理系统。 该系统...
该项目结合当前校园疫情防控的迫切需求,通过SSM(Spring、SpringMVC、MyBatis)框架,构建了一个高效、稳定且易于扩展的疫情防控管理系统。 该项目不仅涵盖了用户管理、疫情数据上报、防控措施发布等基本功能,还...
“基于Spring Boot开发的智能推荐卫生健康系统”是一项富有创新性和实用价值的毕业设计项目。该项目旨在借助Spring Boot框架的轻量级和高效性,打造一个集健康信息管理、智能推荐与卫生知识普及于一体的综合性系统。...
总的来说,本资源包是一个极具实用价值的毕业设计项目,既适合作为学习Spring Boot框架的参考案例,也适用于房地产销售行业的企业进行信息化建设。无论是对于即将进行毕业设计的同学,还是对于从事相关行业的开发者...