`
cnflat
  • 浏览: 13596 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论
文章列表
可以自定义一些TypeHandler来对一些字段进行特殊处理,例如将一个varchar字段转成一个JAVABean中的String数组。将JavaBean中的long转成Timestamp等。 需要注意的: 1. JavaBean中的成员类型只能是类,如果是基本类型的要改成对应的包装类。 2. 配置文件中,如果是insert、update类型的语句,需要在字段中定义类型或者typehandler。查询的结果如果是定义了ResultMap,可以在对应的列定义中定义typehandler。 3. TypeHandler对应的类型可以在xml中定义,也可以在代码中通过注解@MappedTypes和@ ...
基于上一篇的封装,实现一个UserDAO 接口:IUserDAO,也是在mybatis配置中对应的一个mapper接口 package example.dao; import java.util.List; import java.util.Map; import org.apache.ibatis.annotations.Param; import example.model.User; public interface IUserDAO { public User findById(int id); public User findByName(Stri ...
将session管理封装在一个类中,便于放到spring IOC中作为全局单例管理。 package example; import java.io.IOException; import java.io.InputStream; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlS ...
mybatis支持在mapper中配置动态sql,根据传入参数确定sql语句中的where条件。个人认为框架支持动态sql是挺好的。不过如果编程之前能预知sql使用情况的,多写几个静态sql对于系统性能还是有好处的,毕竟动态sql还是需要做一次代码解析的。 mybatis的动态sql具体的机制包括: 1. if:普通的条件判断,比较适合在一个固定条件的前提下叠加动态条件。例如: <select id="findUser3" resultMap="usermap"> select a.id as user_id, a.na ...
Mybatis中,DAO层的代码只需要定义接口,其他的事情由Mybatis框架帮忙搞定。一个例子: package example.dao; import java.util.List; import org.apache.ibatis.annotations.Param; import example.model.User; public interface UserMapper { public User findById(int id); public User findByName(String name); public void addUser ...
1. 使用association和collection标签进行复合类型查询 2. discriminator标签进行分类查询,感觉是为了实现继承类的ORMaping而存在的。 复合类型. User对象中包含一个Album列表. 注意collection标签中的column取值需要和User的sql中的列名对应,这里是user_id。取Album的sql中也用到这个列名:userid=#{user_id} <resultMap type="User" id="userMapWithAlbum"> <id property=&qu ...
一个UserMapper <mapper namespace="example.dao.UserMapper"> <resultMap type="User" id="usermap"> <result column="name" property="name" typeHandler="example.dao.typehandler.SimpleTypeHandler"/> </resultMap> < ...
摘自:http://blog.sina.com.cn/s/blog_74d6cedd0100vbu4.html 1. 尽可能的减少 HTTP 的请求数 [content] 合并背景图、缓存等 2. 使用 CDN(Content Delivery Network) [server] 也是缓存,加速,要考虑CDN失效、CDN缓存攻击等 3. 添加 Expires 头(或者 Cache-control ) [server] 会引起静态资源更新的问题,可采用somescript.js?v=1.0的方式来解决,但在发布新版本的时候会引起短暂页面错误。更好的办法是采用hash冗余。例如新版的index ...
1. 编译fdkaac 目标机器上缺省configure之后make会出现共享代码相关的错误,需要加上编译参数CFLAGS=-fPIC ./configure CFLAGS=-fPIC make make install 完成之后在/usr/local/lib/下会生成fdk-aac.so.0库文件及几个软链 2. 编译ffmpeg 需求是使用ffmpeg+fdkaac来将音源转成aac,其他选项暂时无视。 ./configure --prefix=MYDIR --enable-libfdk-aac --disable-yasm make make install 完成后ffmpeg安装到MY ...
bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。 P.S. bigint已经有长度了,在mysql建表中的length,只是用于显示的位数 int 从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer。 smallint 从 -2^15 (-32,768) 到 2^15 – 1 (32,767) 的整 ...
Global site tag (gtag.js) - Google Analytics