Mybatis是什么?
Mybatis是一个持久层框架,也是一个半自动化的ORM(对象关系映射)框架。这是较为官方的定义。通俗的讲它是对JDBC操作诗句哭过程的封装,节省了我们处理注册驱动、创建connection、创建statement、手动设置参数等繁琐的JDBC过程代码,让我们能够更加关注SQL本身。
Mybatis的输入类型parameterType
1、可以传递简单类型
2、可以传递对象类型
3、获取pojo包装的对象
#{}:是通过反射获取数据的,相当于JDBCsql中的占位符,会对参数进行类型解析(如果是String类型,那么SQL语句会自动加上’’引号)
${}:是通过OGNL表达式会随着对象的嵌套而相应的发生层级变化,相当于JDBC SQL语句中的连接符合 +,讲原样输出
Mybatis的输出类型resultType和resultMap
Mybatis在Mapper.xml中配置查询结果类型时,分为两种配置方式:resultType和resultMap,resultType可以是一个简单数据类型,也可以是一个定义的POJO类,且要求数据表中的字段与POJO对象中的字段一一对应;resultMap是将查询结果一一进行映射。有人说用resultType然后sql语句中进行别名设置就类似与resultMap中的映射,可以这样理解,但是有些情况要求我们只能用resultMap,而不能用resultType。例如:关联查询,user表和order表,一个user对应多个order,现在业务需要我们查询处一个user对应的所有order,这就需要一种类似于{user:{list:{order数据}}}这样的数据结构,使用直接的resultType很难实现,这时候就必须用resultMap,来将order对象封装成一个list映射到user查询结果中。
最后
以上就是明亮豌豆最近收集整理的关于Mybatis的输入(parameterType)及输出类型(resultType和resultMap)的全部内容,更多相关Mybatis内容请搜索靠谱客的其他文章。
发表评论 取消回复