MYSQL limit,offset 区别
SELECT
keyword
FROM
keyword_rank
WHERE
advertiserid='59'
order by
keyword
LIMIT 2 OFFSET 1;
比如这个SQL ,limit后面跟的是2条数据,offset后面是从第1条开始读取
SELECT
keyword
FROM
keyword_rank
WHERE
advertiserid='59'
ORDER BY
keyword
LIMIT 2 ,1;
而这个SQL,limit后面是从第2条开始读,读取1条信息。
转载 : http://chinahnzhou.iteye.com/blog/1567537
Mybatis中javaType和jdbcType对应关系
JDBC Type Java Type
CHAR String
VARCHAR String
LONGVARCHAR String
NUMERIC java.math.BigDecimal
DECIMAL java.math.BigDecimal
BIT boolean
BOOLEAN boolean
TINYINT byte
SMALLINT short
INTEGER int
BIGINT long
REAL float
FLOAT double
DOUBLE double
BINARY byte[]
VARBINARY byte[]
LONGVARBINARY byte[]
DATE java.sql.Date
TIME java.sql.Time
TIMESTAMP java.sql.Timestamp
CLOB Clob
BLOB Blob
ARRAY Array
DISTINCT mapping of underlying type
STRUCT Struct
REF Ref
DATALINK java.net.URL[color=red][/color]
MyBatis/Ibatis中#和$的区别
1.#
将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by “111”, 如果传入的值是id,则解析成的sql为order by “id”.
2.$
将传入的数据直接显示生成在sql中。如:order by
userid
,如果传入的值是111,那么解析成sql时的值为order by user_id, 如果传入的值是id,则解析成的sql为order by id.
3.#
方式能够很大程度防止sql注入。
4.$方式无法防止Sql注入。
5.$方式一般用于传入数据库对象,例如传入表名.
6.一般能用#的就别用$.
ps:在使用mybatis中还遇到<![CDATA[]]>
的用法,在该符号内的语句,将不会被当成字符串来处理,而是直接当成sql语句,比如要执行一个存储过程。
MyBatis缓存介绍
http://blog.csdn.net/woshisap/article/details/6825714
http://my.oschina.net/KingPan/blog/280167
一级缓存 与 二级缓存
一、MyBatis的Cache配置
1、全局开关:默认是true,如果它配成false,其余各个Mapper XML文件配成支持cache也没用。
2、各个Mapper XML文件,默认是不采用cache。在配置文件加一行就可以支持cache:
3、Mapper XML文件配置支持cache后,文件中所有的Mapper statement就支持了。此时要个别对待某条,需要:
select inet_aton(#{name})
二、注意的几个细节
1、如果readOnly为false,此时要结果集对象是可序列化的。
2、在SqlSession未关闭之前,如果对于同样条件进行重复查询,此时采用的是local session cache,而不是上面说的这些cache。
3、MyBatis缓存查询到的结果集对象,而非结果集数据,是将映射的PO对象集合缓存起来。
说意义不大是在于:
a、面对一定规模的数据量,内置的cache方式就派不上用场了;
b、对查询结果集做缓存并不是MyBatis框架擅长的,它专心做的应该是sql mapper。采用此框架的Application去构建缓存更合理,比如采用OSCache、Memcached啥的。
二级缓存与 Redis
redis与Mybatis的无缝整合让MyBatis透明的管理缓存
二级缓存与 ehcache
调用存储过程
http://www.cnblogs.com/xdp-gacl/p/4270352.html
MyBatis批量插入数据
Mybatis 原理分析
原理分析之一:从JDBC到Mybatis
原理分析之二:框架整体设计
原理分析之三:初始化(配置文件读取和解析)
原理分析之四:一次SQL查询的源码分析