- 浏览: 3351632 次
- 性别:
- 来自: 珠海
文章分类
- 全部博客 (1633)
- Java (250)
- Android&HTML5 (111)
- Struts (10)
- Spring (236)
- Hibernate&MyBatis (115)
- SSH (49)
- jQuery插件收集 (55)
- Javascript (145)
- PHP (77)
- REST&WebService (18)
- BIRT (27)
- .NET (7)
- Database (105)
- 设计模式 (16)
- 自动化和测试 (19)
- Maven&Ant (43)
- 工作流 (36)
- 开源应用 (156)
- 其他 (16)
- 前台&美工 (119)
- 工作积累 (0)
- OS&Docker (83)
- Python&爬虫 (28)
- 工具软件 (157)
- 问题收集 (61)
- OFbiz (6)
- noSQL (12)
最新评论
-
HEZR曾嶸:
你好博主,这个不是很理解,能解释一下嘛//左边+1,上边+1, ...
java 两字符串相似度计算算法 -
天使建站:
写得不错,可以看这里,和这里的这篇文章一起看,有 ...
jquery 遍历对象、数组、集合 -
xue88ming:
很有用,谢谢
@PathVariable映射出现错误: Name for argument type -
jnjeC:
厉害,困扰了我很久
MyBatis排序时使用order by 动态参数时需要注意,用$而不是# -
TopLongMan:
非常好,很实用啊。。
PostgreSQL递归查询实现树状结构查询
Mybatis类型转换介绍 http://haohaoxuexi.iteye.com/blog/1847854
原文http://maimode.iteye.com/blog/1488620
mybatis提供了对自定义的类型转换器(typeHandler)的支持,因此我们可以自己编写类型转换器来实现这一自动转换的功能。
注意:
1. 使用的时候, resultMap也select的SQL的参数, 尽量要指定类型.
2. ibatis的方法: ibatis如何自动获取自定义的handler http://daizuan.iteye.com/blog/1122969. SQL使用方法: SHOW_NAV_ADMIN=#showNavAdmin,jdbcType=VARCHAR,javaType=boolean#
3. 如果是boolean类型, 那么bean里面应该定义为Booelean类型, 而不是基础类型boolean.
实现步骤:
第一步:编写自定义类型转换器
第二步:注册类型转换器
第三步: 指定类型转换
这样mybatis就能将数据库中的类型与java中的类型自动做转换了。其他类型转方法同上。
原文http://maimode.iteye.com/blog/1488620
mybatis提供了对自定义的类型转换器(typeHandler)的支持,因此我们可以自己编写类型转换器来实现这一自动转换的功能。
注意:
1. 使用的时候, resultMap也select的SQL的参数, 尽量要指定类型.
2. ibatis的方法: ibatis如何自动获取自定义的handler http://daizuan.iteye.com/blog/1122969. SQL使用方法: SHOW_NAV_ADMIN=#showNavAdmin,jdbcType=VARCHAR,javaType=boolean#
3. 如果是boolean类型, 那么bean里面应该定义为Booelean类型, 而不是基础类型boolean.
实现步骤:
第一步:编写自定义类型转换器
/** * */ package test.atfm.persistence.mybatis.handler; import java.sql.CallableStatement; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import org.apache.ibatis.type.JdbcType; import org.apache.ibatis.type.TypeHandler; /** * @author * java中的boolean和jdbc中的char之间转换;true-Y;false-N */ public class BooleanTypeHandler implements TypeHandler { /* (non-Javadoc) * @see org.apache.ibatis.type.TypeHandler#getResult(java.sql.ResultSet, java.lang.String) */ @Override public Object getResult(ResultSet arg0, String arg1) throws SQLException { String str = arg0.getString(arg1); Boolean rt = Boolean.FALSE; if (str.equalsIgnoreCase("Y")){ rt = Boolean.TRUE; } return rt; } /* (non-Javadoc) * @see org.apache.ibatis.type.TypeHandler#getResult(java.sql.CallableStatement, int) */ @Override public Object getResult(CallableStatement arg0, int arg1) throws SQLException { Boolean b = arg0.getBoolean(arg1); return b == true ? "Y" : "N"; } /* (non-Javadoc) * @see org.apache.ibatis.type.TypeHandler#setParameter(java.sql.PreparedStatement, int, java.lang.Object, org.apache.ibatis.type.JdbcType) */ @Override public void setParameter(PreparedStatement arg0, int arg1, Object arg2, JdbcType arg3) throws SQLException { Boolean b = (Boolean) arg2; String value = (Boolean) b == true ? "Y" : "N"; arg0.setString(arg1, value); } }
第二步:注册类型转换器
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <properties resource="db.properties"></properties> <typeHandlers> <typeHandler javaType="Boolean" jdbcType="CHAR" handler="test.atfm.persistence.mybatis.handler.BooleanTypeHandler" /> </typeHandlers> <environments default="development"> <environment id="development"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="${driver}" /> <property name="url" value="${url}" /> <property name="username" value="${username}" /> <property name="password" value="${password}" /> </dataSource> </environment> </environments> </configuration>
第三步: 指定类型转换
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd"> <mapper namespace="test.atfm.persistence.mybatis.TestMapper"> <resultMap type="TestBean" id="TestBeanMap"> <id property="tname" column="tname" /> <result property="isCancel" column="iscancel" javaType="Boolean" jdbcType="CHAR"/> </resultMap> <select id="selectTest" resultMap="TestBeanMap"> select * from t_test </select> <insert id="insertTest" parameterType="TestBean"> insert into t_test(tname,iscancel) values(#{tname},#{isCancel jdbcType=CHAR javaType=Boolean}) </insert> </mapper>
这样mybatis就能将数据库中的类型与java中的类型自动做转换了。其他类型转方法同上。
发表评论
-
spring配置事物的方式:注解和aop配置
2016-05-14 00:26 4049参考: Spring AOP中pointcut express ... -
写个mybatis的拦截插件,实现将所有执行的sql写入文件里
2016-05-12 15:59 5046原文 http://3131854.blog.51cto.co ... -
Mybatis分库分表扩展插件
2016-05-12 15:47 1577http://fangjialong.iteye.com/bl ... -
spring+mybatis+atomikos 实现JTA事务
2016-05-11 22:00 5460sping配置多个数据源 不同用户操作不同数据库 http:/ ... -
ibatis扩展支持主键生成的方法(非数据库方式)
2016-04-13 22:01 932http://blog.csdn.net/warison200 ... -
ibatis 动态 Mapped Statement
2016-03-31 17:02 809http://www.cnblogs.com/lcngu/p/ ... -
分布式事务管理
2016-03-31 16:43 984http://my.oschina.net/pingpangk ... -
ibatis中动态查询表返回用resultClass="java.util.HashMap" 的问题
2016-03-11 10:49 1073http://blog.csdn.net/dyllove98/ ... -
Mybatis传多个参数(三种解决方案)
2016-03-07 17:46 1395http://my.oschina.net/ydsakyclg ... -
mybatis --mapper配置文件中大于小于怎么处理
2016-03-04 14:21 2315http://blog.csdn.net/nich002/ar ... -
Mybatis 数据库物理分页插件 PageHelper
2015-11-28 01:09 2737http://www.cnblogs.com/digdeep/ ... -
Druid 的SQL翻译功能如何使用
2015-11-27 21:40 1917Druid是阿里巴巴开源平台上的一个项目,整个项目由数据库连接 ... -
[MyBatis]mapperLocations属性通配符的使用
2015-11-26 10:49 6152http://blog.csdn.net/szwangdf/a ... -
Hibernate Validation使用示例及讲解
2015-11-22 21:06 2697http://wdmcygah.iteye.com/blog/ ... -
MyBatis排序时使用order by 动态参数时需要注意,用$而不是#
2015-11-17 17:54 19959http://blog.csdn.net/weibing_hu ... -
SpringMVC + Mybatis + Shiro 权限整合
2015-11-14 14:06 8691详细见参考文章: 基于Spring + Spring MVC ... -
MyBatis3 的Mapper XML 文件详解
2015-11-13 11:54 1305MyBatis3 的Mapper XML 文件http://m ... -
HibernateDao.java
2015-11-10 15:55 1124http://my.oschina.net/lizy/blog ... -
Hibernate envers开发指南
2015-10-24 00:44 1187http://www.blogjava.net/xmatthe ... -
Spring+Ibatis数据库水平分库
2015-09-13 21:15 1254Spring+Ibatis数据库水平分库 http://blo ...
相关推荐
主要介绍了MyBatis自定义类型转换器实现加解密的相关资料,需要的朋友可以参考下
主要介绍了Mybatis自定义类型转换器的使用技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
1.springbood+mybatis项目demo 2.mybatis自定义枚举类型的转换器以及各种使用场景
Mybatis实现自定义的转换器非常的简单,只需要三步就可以实现自定义类型转换器TypeHandler,非常不错,具有参考借鉴价值,感兴趣的朋友一起看下吧
我们在写mapper映射器的配置文件时,不经意间已经用到类型转换,不过是mybatis帮我们完成的,下面这篇文章主要给大家介绍了关于mybatis自定义类型处理器TypehHandler的相关资料,需要的朋友可以参考下
MyBatisPlus中全局Sql注入器应用_逻辑删除使用示例代码
整合FastJson对指定http类型的数据进行转换 整合hibernate.validator校验器对controller接口参数进行校验 使用了springmvc统一异常处理 使用了FormattingConversionServiceFactoryBean对于传入参数中日期或数字字符...
这是根据燕青老师的springmvc的第一天的视频打的代码,分享出来共同进去,需要的拿去,没有资源分,里面的converter的自定义日期转换器我没有测试!
基于IDEA+MySQL+Maven实现SSM框架整合,实现了多条件分页查询、新增、事务、自定义消息转换器、自定义编辑器、拦截器等功能 1. 数据库版本: mysql8.0.26 2. IDEA版本: idea2020 3. JDK版本: jdk1.8.1 4. Tomcat...
springMVC+spring+mybatis的整合源码,顺带一些常用的例子,自定义拦截器,异常解析器,数据转换器
Json转换器空值处理 bugfix(mybatis-plus-generator):SQL类型返回错误问题 调整未知方言异常,自动识别url转换小写匹配. fix: 初始化TableInfo中遇到多个字段有@TableId注解时未能抛出异常的问题 SuperController...
SSM三部曲: 如果你读完这篇文章,恭喜你!...自定义类型转换器代码编写细节:怎么通过SpringMVC获取Servlet原生API常用注解?==@RequestParam()====@RequestBody()====@PathVariable()====HiddenHttpM
自定义类型转换器 使用原生注解 默认开启redis分布式缓存 controller(ControllerHelper),service,repository(Query/Update)三层无耦合,每层都可独立使用 wind使用方法: 1、引入jar包: io.github.ramerf ...
封装请求响应消息内容,自定义消息转换器 修改了Mybatis-plus代码生成器模板,实现了Model,Controller,Mapper,Service代码的一键生成 实现了方法级别的多数据源 Xss过滤 持续更新中... 环境要求 MySQL5.7+ IDEA JAVA ...
TypeCaster.java:类型转换,用于将 Java 中的数据类型转换成相应的 MySql 数据类型 util:工具类相关 Console.java:日志输出工具类,用于在控制台、日志文件中输出相关信息 ObjectUtils.java:Object 工具类,...
【资源说明】 ...* 集成fastjson消息转换器,格式化响应报文 * 自定义业务异常,捕获并响应统一数据格式 * 集成shiro权限管理,基于redis缓存权限 * 预设模块:用户管理、角色管理、权限管理 * ...
8.2.3 其他持久技术的异常转换器 8.3 统一数据访问模板 8.3.1 使用模板和回调机制 8.3.2 Spring为不同持久化技术所提供的模板类 8.4 数据源 8.4.1 配置一个数据源 8.4.2 获取JNDI数据源 8.4.3 Spring的数据源实现类 ...
8.2.3 其他持久技术的异常转换器 8.3 统一数据访问模板 8.3.1 使用模板和回调机制 8.3.2 Spring为不同持久化技术所提供的模板类 8.4 数据源 8.4.1 配置一个数据源 8.4.2 获取JNDI数据源 8.4.3 Spring的数据源实现类 ...
jsr310格式时间,支持自动转换输入和响应时间字段,自动转换数据库类型。 DateTimeFormatterUtil JsonUtil LogUtil LocalHost用于获取本地IP和机器名 Mybatis-生成器支持 自定义Dao名称插件修改Dao类后缀 自定义 ...
工具类数据校验 jsp自定义标签 Spring自定义注解 默认requestMapping 1.1.2 代码生成器 1.1.3 首页修改 dateformat.js 时间参数转换 SpringMVC配置文件集中 快递参数接口 1.1.4 des加解密字符串和文件 1.1.5 redis...