Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)

目录

  • 一、 使用Maven创建一个Web项目
  • 二、使用MyBatis完成MySQL数据库访问
    • 2.1、添加依赖
    • 2.2、准备数据
    • 2.3、创建java Bean
    • 2.4、创建实例与表的映射文件
    • 2.5、创建MyBatisCfg.xml文件
    • 2.6、实现数据访问功能
    • 2.7、测试运行
    • 2.8、整合log4j2
  • 三、使用Spring4.X整合MyBatis3.X初级版
    • 3.1、修改pom.xml添加依赖
    • 3.2、创建Spring上下文初始化配置文件
    • 3.3、测试运行
  • 四、Spring集成MyBatis升级版
    • 4.1、去掉MyBatisCfg.xml配置文件
    • 4.2、映射接口类自动扫描配置
    • 4.3、引入属性配置文件db.properties
    • 4.4、数据源与连接池
      • 4.4.1、DBCP
      • 4.4.2、C3P0
      • 4.4.3、Druid(德鲁伊)
    • 4.5、使用SqlSession
  • 五、示例下载

MyBatis-Spring 会帮助你将 MyBatis 代码无缝地整合到 Spring 中。 使用这个类库中的类, Spring 将会加载必要的MyBatis工厂类和 session 类。 这个类库也提供一个简单的方式来注入MyBatis数据映射器和SqlSession到业务层的bean中。 而且它也会处理事务, 翻译MyBatis的异常到Spring的 DataAccessException异常(数据访问异常,译者注)中。最终它并不会依赖于MyBatis,Spring或MyBatis-Spring来构建应用程序代码。更多内容请查看官网帮助。

一、 使用Maven创建一个Web项目

为了完成Spring4.x与MyBatis3.X的整合更加顺利,先回顾在Maven环境下创建Web项目并使用MyBatis3.X,第一、二点内容多数是回顾过去的内容 。完成第一阶段与第二阶段的项目结构如下所示:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第1张图片

下载阶段一与阶段二示例

1.2、点击“File”->“New”->"Other"->输入“Maven”,新建一个“Maven Project”,如下图所示:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第2张图片

1.2、请勾选“Create a simple project”,创建一个简单的项目,不使用模板。也可以使用模板,选择WebApp,不过这里就不应该勾选。如下图所示:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第3张图片

1.3、填写好包名、项目名,选择打包类型为:war,如下图所示:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第4张图片

1.4、项目创建好后可能会发现有错误,选择项目,右键“属性properties”->"层面Project Facets"->"Java"修改版本号为1.7,默认为1.5;点击“Ok”保存后关闭。如下图所示:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第5张图片

1.5、重复上一个步骤,反勾Dynamic Web Module,将项目暂时变成非Web项目。点击“Ok”保存后关闭。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第6张图片

1.6、重复上一步骤,再进层面属性,勾选“Dynamic Web Module”选择Version为3.0。点击左下角的超链接“Further Configuration available...“。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第7张图片

1.7、勾选“Generate web.xml deployment descriptor”生成web.xml部署描述文件。点击“Ok”保存后关闭。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第8张图片

1.8、将生成的WebContent目录下的两个文件夹“META-INF”与“WEB-INF”复制到src/main/webapp目录下。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第9张图片

1.9、删除WebContent目录。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第10张图片

1.10、删除后会发现项目的pom.xml文件报错,是因为找不到指定位置的web.xml文件引起的。再进入项目的属性,选择“Deployment Assembly”项目部署项,删除“src/test/java”、“src/test/resources”与“WebContent”目录,因为这三项不需要部署出去。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第11张图片

1.11、点击“Add添加”后选择“Folder文件夹”为项目的最终部署结果指定Web内容根文件夹。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第12张图片

1.12、选择src\main\webapp目录为目标目录,点击“Finish完成”保存并关闭。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第13张图片

1.13、如果此时项目还报错,随便修改pom.xml文件后保存后应该错误会消失。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第14张图片

1.14、在src\main\webapp目录下新建一个index.jsp文件,作为测试使用。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第15张图片

1.15、新建完成后发现有错误,是因为没有JavaEE Server Runtime引起的,在项目上右键属性选择“Java Build Path”项,点击“Add Library...”添加引用。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第16张图片

1.16、选择Server Runtime项,点击“Next下一步”,再选择“Apache Tomcat v7.0”,这里可能要根据自己的运行环境选择了,如果还没Server,则应该先整合Tomcat。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第17张图片

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第18张图片

1.17、在index.jsp文件中写上测试内容。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Hello World!


Hello World!

<%=new java.util.Date().toLocaleString() %>

1.18、在项目上右键选择“Run as”-> “Run on Server”运行项目,运行结果如下。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第19张图片

二、使用MyBatis完成MySQL数据库访问

2.1、添加依赖

要完成使用MyBatis访问MySQL数据库,需要添加一些依赖包,包含MyBatis3,连接驱动,JUnit,Log4j2等。可以去共享资源库中搜索,第一个网站地址是:http://mvnrepository.com/, 这里以搜索连接驱动为示例,搜索后的结果有5.xx版许多,也有6.xx版,但不建议使用6.xx版,因为MyBatis3不支持。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第20张图片

我们选择5.0版中的5.1.38,将Maven的依赖信息复制到项目中的pom.xml的dependencies结点下

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第21张图片

当然也可去另外一个网站:http://search.maven.org/,这里以log4j为例子搜索如下:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第22张图片

有一些依赖也可以直接去官网查找,如MyBatis3:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第23张图片

项目的pom.xml文件如下:


    4.0.0
    com.zhangguo
    Spring061
    0.0.1
    war
    
        
            mysql
            mysql-connector-java
            5.1.38
        
        
            org.apache.logging.log4j
            log4j-core
            2.6.1
        
        
            org.mybatis
            mybatis
            3.4.1
        
        
            junit
            junit
            4.10
        
    

引用结果:

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第24张图片

如果在网速不稳定的情况下,下载包很有可能失败,可以试试强制项目重新下载;可以使用下载工具将jar包下载后手复制到本地资源库中。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第25张图片

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第26张图片

2.2、准备数据

打开MySQL数据库,创建一个表,这里以booktypes表为例。

Spring整合MyBatis(Maven+MySQL)(详细到 你必须要收藏点赞)_第27张图片

sql脚本如下:





    
    

2.3、创建java Bean

在包
com.zhangguo.Spring61.entities下添加类BookType类型。

package com.zhangguo.Spring61.entities;

/**
 * 图书类型
 *
 */
public class BookType {
    /**
     * 编号
     */
    private int id;
    /**
     * 类型名
     */
    private String typeName;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getTypeName() {
        return typeName;
    }

    public void setTypeName(String typeName) {
        this.typeName = typeName;
    }
    @Override
    public St

你可能感兴趣的:(数据库架构,java,spring,sql,面试)