- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Mybatis入门文档
Mybatis介绍:
是一个持久层框架
使用:
导入jar包
全局配置文件SqlMapConfig.xml,配置DB,事务等运行环境,加载mapper.xml映射文件.
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE configuration
PUBLIC -////DTD Config 3.0//EN
/dtd/mybatis-3-config.dtd
configuration
!-- 和spring整合后 environments配置将废除 --
environments default=development
environment id=development
!-- 使用jdbc事务管理 --
transactionManager type=JDBC /
!-- 数据库连接池 --
dataSource type=POOLED
property name=driver value=com.mysql.jdbc.Driver /
property name=url
value=jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8 /
property name=username value=root /
property name=password value=mysql /
/dataSource
/environment
/environments
!-- 加载mapper.xml --
mappers
mapper resource=User.xml/
/mappers
/configuration
Mapper.xml映射文件.命名:表名Mapper.xml
?xml version=1.0 encoding=UTF-8 ?
!DOCTYPE mapper
PUBLIC -////DTD Mapper 3.0//EN
/dtd/mybatis-3-mapper.dtd
mapper namespace=test
select id=findUserById parameterType=int resultType=com.itheima.mybatisDemo.User
select id,username,birthday,sex,address from user where id=#{id}
/select
/mapper
具体参数:
1,resultType:将sql查询结果集映射成java对象,规则是sql查询列名和java对象到属性名须一致才行.
resultMap:当列名和pojo属性名不一致时,可以通过resultMap定义列名和属性名的一个对应关系,完成映射。(可完成一些高级映射:一对一/一对多)
2,${}是拼接符号,无法防止sql注入攻击,#{}是占位符,开发中推荐使用,可防止注入攻击.
#{}:表示一个占位符号,很好去避免sql注入
原理:将占位符位置的整个参数和sql语句两部分提交给数据库,数据库去执行sql语句,去表中匹配所有的记录是否和整个参数是否一致。
#{}要获取输入参数的值:
如果输入参数是简单类型,#{}中可以写value或其它名称
如果是pojo对象类型,#{]通过OGNL方式去获取,表达式就是:属性.属性.属性。。。方式
${}表示一个sql 拼接符号
原理:是在向数据库发出sql之前去拼接好sql再提交给数据库执行。
${}要获取输入参数的值:
如果输入参数是简单类型,${}中只能写value
如果是pojo对象类型,${]通过OGNL方式去获取,表达式就是:属性.属性.属性。。。方式
3,SqlSessionFactory作为会话工厂,创建sqlSession,以单例方式出现
SqlSession是一个面向程序员接口,操作数据库.此对象线程不安全,因此其最佳使用场合是在方法体内作为局部变量使用.
4,全局配置文件:properties resource=”perties”/ 加载属性文件
settingssetting name=””value=””//settings配置mabatis运行参数
typeAliases 定义单个别名
typeAlias type=”com.plato.mybatis.domain.User” alias=”user”/
/typeAliases
typeAliases批量定义别名
package name=”com.plato.mybati
文档评论(0)