mybatis是一种持久层框架,也属于ORM映射。前身是ibatis.
相比于hibernate,hibernate为全动自动化,配置文件书写之后不需要书写SQL语句,但欠缺灵活,很多时候需要优化。
mybiayis为半自动化,需要自己写SQL语句,需要自己定义映射。增加了程序员的一些操作,但带来了设计上的灵活,并且也支持hibernate的一些特性,如延迟加载,缓存,映射等。
对数据的兼容性比hibernate差。移植性不好,但可编写灵活和高性能的SQL语句
mybatis组成
核心对象:SqlSessionFactory SqlSession
配置文件:mybatis.cfg.xml 相当于hibernate的hibernate.cfg.xml
多个类配置文件:user.xml相当于hibernate的映射类文件
支持注释配置
mybatis设置URL时,加上allowMultiQueries=true
表示允许一个语句块中添加多条SQL语句
命名空间的作用:
在orm文件根目录下加入
<mapper namespace=“user”>
设置命名空间
更好的分类SQL语句块,更好维护
防止SQL语句块重名
在设置了命名空间后,那么在相应的程序调用中,方可以使用”命名空间。语句块名“进行调用相应的SQL语句
#和$
#在生成SQL时,对于字符类型参数,会拼装引号
$在生成SQL时,不会拼装引号,可用于order by之类的参数拼装
CDATA
用于把整段文字解释为纯字符数据而不是标记的情况。包含大量<、>、&或者"字符。CADA节中所有的字符都会被当作元素字符数据的常量部分,而不是XML标记。
ADATA是不被解析器解析的文本。文本内的标签不会被当作标记,实体不会被展开。
REST
在Rest框架中,服务器连接的标准响应由Resource的实例对象最终处理。一个Resource负责声明支持的表现方式列表和实现你想要实现的Rest方法。
GET 获取资源
PUT 更新资源
POST 添加资源
DELETE删除资源
每一个请求的响应都由一个专门的Resource实例处理。