Mybatis中的TypeHandler是什么?无论是 MyBatis 在预处理语句(PreparedStatement)中设置一个参数时,还是从结果集中取出一个值时,都会用类型处理器将获取的值以合适的方式转换成 Java 类型。Mybatis默认为我们实现了许多TypeHandler, 当我们没有配置指定TypeHandler时,Mybatis会根据参数或者返回结果的不同,默认为我们选择合适的TypeHandler处理。
objectFactory是干什么的? 需要配置吗?MyBatis 每次创建结果对象的新实例时,它都会使用一个对象工厂(ObjectFactory)实例来完成。默认的对象工厂需要做的仅仅是实例化目的类,要么通过默认构造方法,要么在参数映射存在的时候通过参数构造方法来实例化。默认情况下,我们不需要配置,mybatis会调用默认实现的objectFactory。 除非我们要自定义ObjectFactory的实现, 那么我们才需要去手动配置。
plugin有何作用? 需要配置吗?plugins 是一个可选配置。mybatis中的plugin着实就是个interceptor, 它可以拦截Executor 、ParameterHandler 、ResultSetHandler 、StatementHandler 的部门方法,处理我们自己的逻辑。Executor就是真正执行sql语句的东西, ParameterHandler 是处理我们传入参数的,还记得前面讲TypeHandler的时候提到过,mybatis默认帮我们实现了不少的typeHandler, 当我们不表现配置typeHandler的时候,mybatis会根据参数类型自动选择合适的typeHandler执行,着实就是ParameterHandler 在选择。ResultSetHandler 就是处理返回结果的。
mappers, 这下引出mybatis的核心之一了,mappers作用 ? 需要配置吗?mappers 节点下,配置我们的mapper映射文件, 所谓的mapper映射文件,就是让mybatis 用来创建数据表和javabean映射的一个桥梁。在我们现实开发中,通常一个mapper文件对应一个dao接口, 这个mapper可以看做是dao的实现。所以,mappers必须配置。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |