JavaWeb实战(四)——加入MyBatis框架
来源:互联网 发布:数控车床锥度螺纹编程 编辑:程序博客网 时间:2024/05/20 17:23
上期说道Dao层中的SQL语句导致代码复杂难以维护。
这期我们用Mybatis框架来实现持久化。
我们先将sql语句提取出来。将DaoImpl中的sql语句提取到UserMapper.xml文件:
然后我们要怎么取执行这个文件里面的sql语句呢?
接触过其他ORM框架的同学可能知道:Sqlsession是mybatis里用于执行持久化操作的对象,类似于jdbc中的Connection,每一次操作数据库都需要先获取一个connection(关闭了之后)。Sqlsession也是每次执行语句都要先获取一个Sqlsession。
创建Sqlsession的地方只有一个,那就是SqlsessionFactory(sql会话工厂)的openSession方法。
所以我们可以知道,要使用Mybatis,第一步就需要产生SqlSessionFactory类的实例(相当于是产生连接池)。所以我们可以在产生sqlSessionFactory类的实例的时候将sql语句加载进来。大概代码如下:
但是当UserMapper.xml之类的文件多了起来的时候,我们就不能只加载一个xml文件了。所以我们需要将所有的类似的文件统一放到一个配置文件里。所以我们新建一个myBatis-config.xml文件:
现在我们就可以用Mybatis进行数据库操作了。我们修改UserDaoImpl.java和UserDao.java
将UserDao返回结果改为User具体代码如下:
UserDaoImpl实现类的数据库连接可以删掉了。具体代码如下:
其他代码不变。记得引入Mybatis的包。mybatis-3.4.2.jar或其他版本。具体效果就不演示了。
这样我们就加入了Mybatis框架。但是我们会发现代码还是比较多,其实Mybatis提供了一个MybatisGenerator项目。这个工程运行起来只要你数据库建好表结构。
可以一键生成Dao、VO、*Mapper.xml。运行的效果如下:
VO包含了所有的数据库字段的get/set方法和初始化。Dao包含了几个基本的增删改查。XML包含了几个增删改查的sql语句。
下期我们就讲讲MybatisGenerator项目。
后面再将Spring、日志、SpringMVC什么的加进来。
下期再见!
PS:想找一个前端模板整个进来。不知道什么好,有推荐的可以留言。- JavaWeb实战(四)——加入MyBatis框架
- springMVC+redis+mybatis的javaWeb框架的搭建---套路实战(1)
- mybatis框架(四)——强大的映射器
- springmvc、jpa(hibernate)、mybatis组合框架搭建(三)——加入JPA、单元测试
- springmvc、jpa(hibernate)、mybatis组合框架搭建(二)——加入mybatis以及json返回值
- Mybatis步步进阶(四)——Mybatis框架流程及核心配置详解
- Mybatis实战(四)Mapper配置文件
- JavaWeb入门实战—Servlet
- JavaWeb入门实战—JDBC
- JavaWeb开发基于Spring和mybatis框架(学习日志)
- 【Mybatis】深入浅出Mybatis(二)——Mybatis的框架
- SSM框架学习之(四)Mybatis——高级映射(多表查询)
- Mybatis框架学习(四)—查询缓存与spring的整合开发
- unittest框架实战(四)
- Mybatis框架基础学习(四)
- 爱辉辉ERP——javaweb项目实战(一)
- JavaWeb入门实战—相关知识准备
- JavaWeb入门实战—Request&Response
- Node.js安装及环境配置之Windows篇
- LintCode 76 最长上升序列
- Vue---- 简单的图书管理
- Java ConcurrentModificationException when clearing List and ArrayList
- 中了勒索病毒要怎么办
- JavaWeb实战(四)——加入MyBatis框架
- 【解决】网站运行一段时间后就无法访问,重启Tomcat才能恢复
- laravel 定时任务
- 简历弄得这么“丑”,HR不会给面试的!
- Redis集群生产环境高可用方案实战过程
- C#正则的与众不同
- 最火十大Android开源项目,是个程序员你就该看看!
- 场景关卡之创建场景
- 最近在找Java实习,顺便整理一下各大企业的招聘需求~