E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
【mybatis学习笔记】
myBatis学习笔记
转自:http://limingnihao.iteye.com/blog/781911一、MyBatis简介与配置MyBatis+Spring+MySql1.1MyBatis简介 MyBatis是一个可以自定义SQL、存储过程和高级映射的持久层框架。MyBatis摒除了大部分的JDBC代码、手工设置参数和结果集重获。MyBatis只使用简单的XML和注解来配置和映射基本数据类型、Map接口
这些年
·
2014-04-08 12:00
mybatis
Mybatis学习笔记
(五)
缓存 默认情况下是没有开启缓存的,除了局部的session缓存,可以增强变现而且处理循环依赖也是必须的。要开启二级缓存,你需要在你的SQL映射文件中添加一行: <cache/> 字面上看就是这样。这个简单语句的效果如下: (1)映射语句文件中的所有select语句将会被缓存。 (2)映射语句
lxdnaa
·
2013-12-22 11:00
mybatis
Mybatis学习笔记
(六)
动态SQL 通常使用动态SQL不可能是独立的一部分,MyBatis当然使用一种强大的动态SQL语言来改进这种情形,这种语言可以被用在任意映射的SQL语句中。 MyBatis采用功能强大的基于OGNL的表达式来消除其他元素。 if choose(when,otherwise) trim(where,set) foreach if 在动态
lxdnaa
·
2013-12-22 11:00
mybatis
Mybatis学习笔记
(七)
Java API SqlSessions 使用MyBatis的主要Java接口就是SqlSession。尽管你可以使用这个接口执行命令,获取映射器和管理事务。 SqlSessions是由SqlSessionFactory实例创建的。SqlSessionFactory对象包含创建SqlSession实例的所有方法。而SqlSessionFactory本身是由SqlSessionFa
lxdnaa
·
2013-12-21 13:00
mybatis
Mybatis学习笔记
(四)
高级结果映射 MyBatis创建的一个想法:数据库不用永远是你想要的或需要它们是什么样的。而我们最喜欢的数据库最好是第三范式或BCNF范式,但它们有时不是。 我们将要如何映射以下语句呢? [html] view plain copy <!-- 非常复杂的语句 --> <select&n
lxdnaa
·
2013-12-21 13:00
mybatis
Mybatis学习笔记
(三)
SQL映射的XML文件 MyBatis的构建就是聚焦于SQL的,使其远离于普通的方式。 SQL映射文件有很少的几个顶级元素(按照它们应该被定义的顺序): cache - 配置给定命名空间的缓存。 cache-ref – 从其他命名空间引用缓存配置。 resultMap – 最复杂,也是最有力量的元素,用来描述如何从数据库结果集中来加载你的对象
lxdnaa
·
2013-12-21 13:00
mybatis
Mybatis学习笔记
(二)
XML映射配置文件 MyBatis的XML配置文件包含了影响MyBatis行为甚深的设置和属性信息。XML文档的高层级结构如下: configuration配置 properties属性 settings设置 typeAliases类型命名
lxdnaa
·
2013-12-21 13:00
mybatis
Mybatis学习笔记
(一)
每一个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心。SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象来获得。SqlSessionFactoryBuilder对象可以通过XML配置文件,或从以往使用惯例中准备好的Configuration类实例中来构建SqlSessionFactory对象
lxdnaa
·
2013-12-21 13:00
mybatis
mybatis学习笔记
(三) 动态sql
在mybatis的映射文件中有如下一些标签可以使用if,chose,where,set,foreach,trim,include,使用这些标签可以帮助我们动态的生成sql用法实例 select from`user` user_name=#{userName} andpassword=#{password} select from`user` idin #{item}
is_zhoufeng
·
2013-12-11 00:00
mybatis学习笔记
(二) 多pojo,复杂映射
现在在数据库增加两张表blog与comment,即博客与评论表。CREATETABLE`blog`( `id`int(11)NOTNULLdefault'0', `title`varchar(255)defaultNULL, `content`text, `pub_time`datetimedefaultNULL, `user_id`int(11)defaultNULL, PRIMARYKEY(`
is_zhoufeng
·
2013-12-10 00:00
ant入门示例
在上篇博文《ant的下载与安装——
mybatis学习笔记
之预备篇(一)》中,笔者介绍了ant的下载与安装。本文将介绍如何使用ant创建一个简单的工程,作为ant的入门示例。
xh16319
·
2013-12-09 00:00
ant的下载与安装
看到这个标题是不是觉得有点奇怪呢——不是说
mybatis学习笔记
吗,怎么扯到ant了?先别急,请容我慢慢道来。 mybatis是另外一个优秀的ORM框架。
xh16319
·
2013-12-09 00:00
mybatis学习笔记
(一) 项目搭建,helloworld实例
Mybatis博客推荐 http://limingnihao.iteye.com/blog/781671前言:之前一直使用hibernate在作为数据层的持久化框架,也用过mybatis,但是觉得要写的sql太多很麻烦,所以使用的不多。现在数据层使用的是mybatis,前端mvc框架用的是他们自己研发的webx3框架,所以决定研究一下这两个框架。首先研究mybatis ,学习教程是官方的《MyBa
is_zhoufeng
·
2013-12-08 22:00
mybatis学习笔记
简单示例代码目录结构如下:1编写实体publicclassBlog{privateIntegerid;privateStringtitle;privateIntegerauthorId;//get/set方法}2创建数据库及实体对应表3config.xml配置文件4mapper.xml文件select*fromBlogwhereid=#{id}select*fromBlogwhereid=#{id
retacn_yue
·
2013-08-22 18:00
MyBatis多对多保存示例――
MyBatis学习笔记
之十七
前几天有网友问到MyBatis多对多的问题,不过愧对网友厚爱的是,最近一直忙,直到现在才有时间处理此事。今天就先写一个多对多保存的示例,算是对这位网友的初步回应,以后会有更多相关的博文发表。为演示多对多,我们可以模拟学生选课的情形。一个学生可以选修多门课程,一门课程可以被多个学生选修。显然,这是一种多对多的关系。先创建课程表如下(本文示例完整源码下载:http://down.51cto.com/d
NashMaster2011
·
2013-08-11 21:31
mybatis
保存
多对多双向关联
MyBatis多对多保存示例——
MyBatis学习笔记
之十七
前几天有网友问到MyBatis多对多的问题,不过愧对网友厚爱的是,最近一直忙,直到现在才有时间处理此事。今天就先写一个多对多保存的示例,算是对这位网友的初步回应,以后会有更多相关的博文发表。为演示多对多,我们可以模拟学生选课的情形。一个学生可以选修多门课程,一门课程可以被多个学生选修。显然,这是一种多对多的关系。先创建课程表如下(本文示例完整×××:http://down.51cto.com/da
NashMaster2011
·
2013-08-11 21:31
保存
MyBatis
多对多双向关联
MyBatis
Spring声明式事务管理示例——
MyBatis学习笔记
之十六
在本系列文章的《MyBatis与Spring集成示例续》中,介绍了Spring的编程式事务管理。网友dabing69221提出讲一下MyBatis与Spring整合的声明式事务管理,今天就根据这一知识点,对上文的示例进行改进。Spring的声明式事务管理是采用AOP(Aspect-OrientedProgramming,面向切面编程)实现的。在编程式事务管理中,各事务处理代码实际上是相似的,这就造
NashMaster2011
·
2013-07-02 00:44
spring
AOP
MyBatis
MyBatis
Spring声明式事务管理示例――
MyBatis学习笔记
之十六
在本系列文章的《MyBatis与Spring集成示例续》中,介绍了Spring的编程式事务管理。网友 dabing69221提出讲一下MyBatis与Spring整合的声明式事务管理,今天就根据这一知识点,对上文的示例进行改进。Spring的声明式事务管理是采用AOP(Aspect-Oriented Programming,面向切面编程)实现的。在编程式事务管理中,各事务处理代码实际上是相似的,这
NashMaster2011
·
2013-07-02 00:44
spring
AOP
mybatis
声明式事务管理
mybatis编程事务管理参考一
MyBatis与Spring集成示例续——
MyBatis学习笔记
之六2012-08-0623:53:25标签:Spring 集成 MyBatis bean继承 编程式事务原创作品,允许转载,转载时请务必以超链接形式标明文章
goahead2010
·
2013-06-24 15:00
mybatis
【原创】
Mybatis学习笔记
(二)——一些写mapper配置使用的最佳实践
Mybatis学习笔记
(二) &
need_faith
·
2013-06-02 23:00
mybatis
【原创】
Mybatis学习笔记
(一)——Spring集成Mybatis
Mybatis学习笔记
(一) ——Spring集成Mybatis 环境和组件eclipse-jee-indigo-SR2-win32-x86_64Spring3.12mybatis
need_faith
·
2013-06-02 22:00
mybatis
mybatis学习笔记
一(环境配置)
万里之行起于小步,从搭建环境开始。 一、下载好jar包,既然是基本环境搭建就不用弄的太复杂就加入三个最基本的jar包 1、mybatis-3.1.0-SNAPSHOT.jar 2、mysql-connector-java-5.0.8-bin.jar 3、log4j-1.2.16.jar 二、mybatis是基于log4j日志框架的,恩,把log4j的日志数据配置文件也配置一下
m654352
·
2013-05-03 11:00
mybatis
mybatis学习笔记
--常见的错误
昨天刚学了下mybatis,用的是3.2.2的版本,在使用过程中遇到了些小问题,现总结如下,会不断更新.1.没有在configuration.xml配置对应的sql配置文件错误:Errorupdatingdatabase.Cause:java.lang.IllegalArgumentException:MappedStatementscollectiondoesnotcontainvaluefor
于瓜瓜
·
2013-04-18 09:29
mybatis
MyBatis学习笔记
二:增删改查
MyBatis基本的增删改查操作,有图有真相,项目截图[MyBatis-0200]项目依赖及表参阅上一篇[user.xml] id,account,password,nickname,email,birthday,status,registed_time selectfromtbl_userwhereid=#{id} selectfromtbl_userwher
大道独行
·
2013-04-08 16:00
DAO
mybatis
orm
persist
MyBatis多参数传递之混合方式——
MyBatis学习笔记
之十五
在本系列文章的《MyBatis多参数传递之Map方式示例》一文中,网友mashiguang提问如下的方法如何传递参数:publicListfindStudents(Mapconditions,intpage,intpageSize)。这是一种混合形式,亦即既有Map类型的参数,也有类似int这种普通类型的参数。经过一番摸索,笔者还比较顺利地找到了这种情况的处理方法。其实也很简单。在默认命名方式(M
NashMaster2011
·
2013-04-08 14:05
Map
参数传递
混合
MyBatis
MyBatis多参数传递之混合方式――
MyBatis学习笔记
之十五
在本系列文章的《MyBatis多参数传递之Map方式示例》一文中,网友mashiguang提问如下的方法如何传递参数:public List findStudents(Map conditions, int page, int pageSize)。这是一种混合形式,亦即既有Map类型的参数,也有类似int这种普通类型的参数。经过一番摸索,笔者还比较顺利地找到了这种情况的处理方法。
NashMaster2011
·
2013-04-08 14:05
mybatis
map
参数传递
混合
MyBatis学习笔记
一:SqlSessionFactory
参考资料:http://mybatis.github.io/mybatis-3/zh/getting-started.html 每一个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心。SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象来获得。SqlSessionFactoryBuilder对象可以
大道独行
·
2013-04-07 22:00
DAO
mybatis
orm
persist
MyBatis学习笔记
之前一直使用Hibernate做DAO持久层开发,开发效率确实是相对于传统JDBC要高出不少,但其性能优化是个大问题,在与SpringJDBC配合使用下其实效果还是不错的,但个人认为Hibernate在应付大型应用还是有些力不从心。一直听说MyBatis如何易上手、性能如何优异,但一直只闻其名,未见其应用,手痒之下决定开始学习一二,顺便写几个Demo,其中的谬误之处请大家指正,不甚
大道独行
·
2013-04-02 09:00
DAO
mybatis
orm
persist
MyBatis中的N+1问题——
MyBatis学习笔记
之十四
掐指一算,居然三个多月没有写MyBatis的博客了,一直在瞎忙,真是罪过!o(╯□╰)o网友xunke515在看完《MyBatisassociation的两种形式》一文后留言提到官方文档不建议使用嵌套的select语句的形式,希望我在文中指出。今天我们就来讨论这个话题。官方文档之所以不建议使用这种嵌套的select语句的形式,是因为这会导致所谓的“N+1问题”。这个问题,无论是associatio
NashMaster2011
·
2013-02-04 11:23
延迟加载
MyBatis
N+1
MyBatis
MyBatis中的N+1问题――
MyBatis学习笔记
之十四
掐指一算,居然三个多月没有写MyBatis的博客了,一直在瞎忙,真是罪过!o(�s□�t)o 网友xunke515在看完《MyBatis association的两种形式》一文后留言提到官方文档不建议使用嵌套的select语句的形式,希望我在文中指出。今天我们就来讨论这个话题。 官方文档之所以不建议使用这种嵌套的select语句的形式,是因为这会导致所谓的“N+1问
NashMaster2011
·
2013-02-04 11:23
mybatis
延迟加载
n+1
mybatis学习笔记
(三) 高级映射
在返回结果集时,一对一 一对多有嵌套查询,嵌套结果集2中查询方式 1:嵌套查询方式 由于会导致N+1次的查询,所以在返回数据较多时,会导致性能问题 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBL
zhchx0827
·
2012-12-04 20:00
mybatis
mybatis学习笔记
(二) 一般映射语句配置
1:常用select,update,insert,delete映射配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http:/
zhchx0827
·
2012-12-03 21:00
mybatis
mybatis学习笔记
(一) 入门demo
1:通过java代码 package org.mybatis.dao; import java.sql.SQLException; import java.util.List; import javax.sql.DataSource; import org.apache.ibatis.datasource.pooled.PooledDataSource; i
zhchx0827
·
2012-11-29 19:00
mybatis
MyBatis多参数传递之Map方式示例――
MyBatis学习笔记
之十三
前面的文章介绍了MyBatis多参数传递的注解、参数默认命名等方式,今天介绍Map的方式。仍然以前面的分页查询教师信息的方法findTeacherByPage为例(示例源代码下载地址:http://down.51cto.com/data/546809)。 首先修改映射器接口TeacherMapper中的findTeacherByPage方法如下://分页查询教师信息 publ
NashMaster2011
·
2012-10-18 17:33
mybatis
map
参数传递
MyBatis多参数传递之Map方式示例——
MyBatis学习笔记
之十三
前面的文章介绍了MyBatis多参数传递的注解、参数默认命名等方式,今天介绍Map的方式。仍然以前面的分页查询教师信息的方法findTeacherByPage为例(示例源代码下载地址:http://down.51cto.com/data/546809)。首先修改映射器接口TeacherMapper中的findTeacherByPage方法如下://分页查询教师信息publicListfindTea
NashMaster2011
·
2012-10-18 17:33
Map
参数传递
MyBatis
MyBatis
MyBatis多参数传递之默认命名方式示例――
MyBatis学习笔记
之十二
上文讲到了MyBatis多参数传递的注解方式,今天看另外一种方式,也就是参数默认命名的方式。还是以上文的分页查询教师信息的方法findTeacherByPage为例。一、具体步骤 对于映射器中的方法,MyBatis默认从左到右给方法的参数命名为param1、param2…,依次类推。我们可以无需借助注解,直接在SQL语句中使用这些默认名称。 首先去掉@Param注解
NashMaster2011
·
2012-10-14 00:03
java
mybatis
默认命名
多参数传递
MyBatis多参数传递之默认命名方式示例——
MyBatis学习笔记
之十二
上文讲到了MyBatis多参数传递的注解方式,今天看另外一种方式,也就是参数默认命名的方式。还是以上文的分页查询教师信息的方法findTeacherByPage为例。一、具体步骤对于映射器中的方法,MyBatis默认从左到右给方法的参数命名为param1、param2…,依次类推。我们可以无需借助注解,直接在SQL语句中使用这些默认名称。首先去掉@Param注解的TeacherMapper.jav
NashMaster2011
·
2012-10-14 00:03
java
MyBatis
多参数传递
MyBatis
MyBatis多参数传递之注解方式示例——
MyBatis学习笔记
之十一
若映射器中的方法只有一个参数,则在对应的SQL语句中,可以采用#{参数名}的方式来引用此参数,以前的例子多属于此类。但这种方法却不适用于需要传递多个参数的情况,今天就来介绍如何使用注解传递多个参数(示例×××地址:http://down.51cto.com/data/537051)。一、使用注解实现多参数传递首先应引入“org.apache.ibatis.annotations.Param”,我们
NashMaster2011
·
2012-10-06 19:04
注解
参数传递
mybatis
MyBatis
MyBatis多参数传递之注解方式示例――
MyBatis学习笔记
之十一
若映射器中的方法只有一个参数,则在对应的SQL语句中,可以采用#{参数名}的方式来引用此参数,以前的例子多属于此类。但这种方法却不适用于需要传递多个参数的情况,今天就来介绍如何使用注解传递多个参数(示例源码下载地址:http://down.51cto.com/data/537051)。一、使用注解实现多参数传递 首先应引入“org.apache.ibatis.annotati
·
2012-10-06 19:04
注解
xml
mybatis
参数传递
character
Invalid
MyBatis多参数传递之注解方式示例――
MyBatis学习笔记
之十一
若映射器中的方法只有一个参数,则在对应的SQL语句中,可以采用#{参数名}的方式来引用此参数,以前的例子多属于此类。但这种方法却不适用于需要传递多个参数的情况,今天就来介绍如何使用注解传递多个参数(示例源码下载地址:http://down.51cto.com/data/537051)。一、使用注解实现多参数传递 首先应引入“org.apache.ibatis.annotati
NashMaster2011
·
2012-10-06 19:04
注解
xml
mybatis
参数传递
character
Invalid
MyBatis日志之Log4j 1.2示例――
MyBatis学习笔记
之十
MyBatis可选择的日志框架有SLF4J,Apache Commons Logging,Log4J和JDK logging。本文将改造前面的例子,用以演示Log4J的简单用法(源码下载地址:http://down.51cto.com/data/521820。此源码对应于以下内容的第五种情况)。 首先应把相关的Log4J jar包复制到工程的lib目录下,本示例使用的是log
NashMaster2011
·
2012-09-20 22:50
log4j
日志级别
日志
mybatis
MyBatis collection的两种形式——
MyBatis学习笔记
之九
与association一样,collection元素也有两种形式,现介绍如下:一、嵌套的resultMap实际上以前的示例使用的就是这种方法,今天介绍它的另一种写法。还是以教师映射为例,修改映射文件TeacherMapper.xml如下(点击此处进入嵌套resultMap形式的示例×××页面。注:本示例代码是在修改本系列的上篇博文示例代码的基础上完成的,用到了MapperScannerConfi
NashMaster2011
·
2012-09-09 19:48
collection
select
MyBatis
MyBatis
MyBatis collection的两种形式――
MyBatis学习笔记
之九
与association一样,collection元素也有两种形式,现介绍如下:一、嵌套的resultMap 实际上以前的示例使用的就是这种方法,今天介绍它的另一种写法。还是以教师映射为例,修改映射文件TeacherMapper.xml如下(点击此处进入嵌套resultMap形式的示例源码下载页面。注:本示例代码是在修改本系列的上篇博文示例代码的基础上完成的,用到了Mappe
NashMaster2011
·
2012-09-09 19:48
mybatis
Collection
select
resultMap
MyBatis MapperScannerConfigurer配置――
MyBatis学习笔记
之八
在上一篇博文的示例中,我们在beans.xml中配置了studentMapper和teacherMapper,供我们需要时使用。但如果需要用到的映射器较多的话,采用这种配置方式就显得很低效。为了解决这个问题,我们可以使用MapperScannerConfigurer,让它扫描特定的包,自动帮我们成批地创建映射器。这样一来,就能大大减少配置的工作量。如下所示(点击此处进入本示例源程序下载
NashMaster2011
·
2012-09-02 20:42
spring
mybatis
bean默认命名
MyBatis MapperScannerConfigurer配置——
MyBatis学习笔记
之八
在上一篇博文的示例中,我们在beans.xml中配置了studentMapper和teacherMapper,供我们需要时使用。但如果需要用到的映射器较多的话,采用这种配置方式就显得很低效。为了解决这个问题,我们可以使用MapperScannerConfigurer,让它扫描特定的包,自动帮我们成批地创建映射器。这样一来,就能大大减少配置的工作量。如下所示(点击此处进入本示例源程序下载页面):这里
NashMaster2011
·
2012-09-02 20:42
Spring
MyBatis
MyBatis
MyBatis一对多双向关联――
MyBatis学习笔记
之七
好久没写MyBatis了,今天继续。 处理has-one关系需要用到association元素,而处理has many关系则需要用到collection元素。例如本例中,假设一名教师可同时指导多名学生,下面就来介绍如何使用collection元素来实现这种映射,具体的任务是查询出教师及其指导的多个学生的信息(本示例源代码下载页面:http://down.51cto.com/d
NashMaster2011
·
2012-08-26 16:31
mybatis
Collection
一对多双向关联
MyBatis一对多双向关联——
MyBatis学习笔记
之七
好久没写MyBatis了,今天继续。处理has-one关系需要用到association元素,而处理hasmany关系则需要用到collection元素。例如本例中,假设一名教师可同时指导多名学生,下面就来介绍如何使用collection元素来实现这种映射,具体的任务是查询出教师及其指导的多个学生的信息(本示例源代码下载页面:http://down.51cto.com/data/490947)。一
NashMaster2011
·
2012-08-26 16:31
collection
MyBatis
一对多双向关联
MyBatis
Hibernate与Spring集成示例
与
MyBatis学习笔记
系列一样,本篇依然采用courseman数据库(数据库的创建请参见笔者博客:MyBatis入门示例),及ant来管理工程(对ant不熟悉的朋友请参见笔者的相关博客:ant的下载与安装
NashMaster2011
·
2012-08-14 19:44
spring
Hibernate
集成
Hibernate与Spring集成示例
与
MyBatis学习笔记
系列一样,本篇依然采用courseman数据库(数据库的创建请参见笔者博客:MyBatis入门示例),及ant来管理工程(对ant不熟悉的朋友请参见笔者的相关博客:ant的下载与安装
NashMaster2011
·
2012-08-14 19:44
Spring
Hibernate
集成
Hibernate
MyBatis与Spring集成示例续――
MyBatis学习笔记
之六
限于篇幅,MyBatis与Spring集成的一些细节在上篇博文中并未提及,今天继续。一、引子 前面的博文介绍了如何查询一个具有has-a关系的实体,今天就来看看如何向数据库中插入这样的一个实体。仍以学生为例,现在的问题是:学生实体把教师对象作为自己的指导教师属性,然而在学生表中,却仅有指导教师的ID一列,这如何映射呢? 解决的方法其实很简单(这个方法是笔者猜出来的,
NashMaster2011
·
2012-08-06 23:25
spring
mybatis
集成
bean继承
编程式事务
上一页
8
9
10
11
12
13
14
15
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他