搞了呐么久的JavaWeb,及其渴望的来匆匆学ssm,今天先了解一哈mybatis是个啥,,叭,
01- MyBatis
01- 到底什么是框架呢?
通俗来说,大概就是,一组组件,软件开发中的一套解决方案,不同的框架解决不同的问题。好处:可以用极简的方式实现功能,提高效率。
三层架构:
- 表现层:用于展示数据
- 业务层:处理业务需求
- 持久层:数据库的交互----MyBatis
- JDBC技术(规范):
- Connection
- PreparedStatement
- ResultSet
- Spring 的 JdbcTemplate
- Apache 的 DBUtils
- 但都不是框架,只是工具类;
- JDBC技术(规范):
MyBatis:
持久层框架,内部封装了JDBC,减少了加载驱动,创建链接,创建statement等的繁琐重复性的操作
,mybatis 通过 xml 或者 注解的方式将要执行的各种statement配置起来
使用了 ORM 思想实现了结果集的封装:
Object Relational Mapping 对象关系映射
02- Mybatis 环境搭建
先创建空项目:
然后next:
这里参考着mybatis的官方文档:
进行配置:
这里好像遇到了问题:
先看看自动的解决方案,
等待一会儿会儿:
解决了
创建好各种依赖后,External Libraries 种会出现相应的maven;
03- 简单的使用
然后开始练习:
先找一个数据库表叭,这里我用我的blogUser:
implement:
<?xml version="1.0" encoding="UTF-8" ?><!-- 这个也是在mybatis文档中找就可以了 -->
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 配置环境-->
<environments default="development">
<!-- mysql 的环境-->
<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>
<mappers>
《这里需要修改为自己配制的映射文件路径》
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
接着映射配置文件:
好像会出现一个警告,波浪线,应为idea 没有连接数据库叭,那就接下来连接数据库:
接着又出现问题,无语子:
查阅资料:
后来,接着,按着提示,就可以解决问题叭,以下是我查询的user table:
以上是在创建的时候遇到的问题,
常见的注意事项:
-
1,IBlogUserDao. xml 和 IBlogUserDao. java, 名称保持一致,在mybatis 种,持久层的操作接口名称 和映射文件 也叫做:mapper,,所以,Dao 也可换为 Mapper霍。
-
2,如图:
-
-
这里的多级目录需要注意,最好分别创建,不要 直接 “ . ”创建,
-
直接“ . ”,创建的,仍然是一级目录,可以在文件种查看;
-
即,映射配置文件位置,必须和dao 接口的包结构相同;
-
-
3,映射配置文件里mapper种的nameSpace属性的取值必须是,dao接口的全限定类名。
-
4,在select标签中的id里,取值必须是dao接口中的方法名;