文章目录

  • spring和mybatis整合:使用xml方式
    • 1. 创建数据库
    • 2. 创建工程,pom.xml文件如下:
    • 3. 依赖下载地址如下:
    • 4. 配置mybatis的全局配置,在resources目录中加入mybatis-configuration.xml文件
    • 5. 定义表所对应的实体类,一般在bean目录下,或者pojo目录下
    • 6. 定义操作 t_user 表的sql映射文件UserMapper.xml
    • 7. 在mybatis-configuration.xml配置文件中注册UserMapper.xml文件
    • 8. 文件结构

spring和mybatis整合:使用xml方式

1. 创建数据库

DROP DATABASE IF EXISTS `crm`;
CREATE DATABASE `crm`;
use `crm`;
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `user_tel` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL,  `username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,  `password` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,  `registration_time` datetime DEFAULT CURRENT_TIMESTAMP,  PRIMARY KEY (`id`)
) ENGINE=InnoDB CHARSET=utf8;INSERT INTO `t_user` VALUES ('1', '13880000001', '金庸', '0b4e7a0e5fe84ad35fb5f95b9ceeac79', '2018-12-15 06:54:16'),('2', '13880000002', '张三丰', '875f26fdb1cecf20ceb4ca028263dec6', '2018-12-15 06:54:16'), ('3', '13880000003', '张无忌', 'c1f68ec06b490b3ecb4066b1b13a9ee9', '2018-12-15 06:54:16'), ('4', '13880000004', '黄蓉', '980ac217c6b51e7dc41040bec1edfec8', '2018-12-15 06:54:16'), ('5', '13880000005', '郭靖', 'cd87cd5ef753a06ee79fc75dc7cfe66c', '2018-12-15 06:54:16'),('6', '13880000006', '周伯通', 'eed8cdc400dfd4ec85dff70a170066b7', '2018-12-15 06:54:16'),('7', '13880000006', '杨过', '594f803b380a41396ed63dca39503542', '2018-12-17 17:05:40');

2. 创建工程,pom.xml文件如下:

<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.yingside</groupId><artifactId>mybatisdemo</artifactId><version>1.0-SNAPSHOT</version><dependencies><!--mysql数据库驱动包--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></dependency><!--引入mybatis包--><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.6</version></dependency><!--引入junit测试包--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency></dependencies></project>

3. 依赖下载地址如下:

https://mvnrepository.com/

4. 配置mybatis的全局配置,在resources目录中加入mybatis-configuration.xml文件

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration>    <environments default="development"><environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://127.0.0.1:3306/crm"/><property name="username" value="root"/><property name="password" value="123456"/></dataSource></environment></environments></configuration>

5. 定义表所对应的实体类,一般在bean目录下,或者pojo目录下

package com.yingside.bean;public class User {    private int id;    private String userTel;    private String username;    private String password;    private String registrationTime;    public int getId() {        return id;}    public void setId(int id) {        this.id = id;}    public String getUserTel() {        return userTel;}    public void setUserTel(String userTel) {        this.userTel = userTel;}    public String getUsername() {        return username;}    public void setUsername(String username) {        this.username = username;}    public String getPassword() {        return password;}    public void setPassword(String password) {        this.password = password;}    public String getRegistrationTime() {        return registrationTime;}    public void setRegistrationTime(String registrationTime) {        this.registrationTime = registrationTime;}    @Overridepublic String toString() {        return "User{" +"id=" + id +", userTel='" + userTel + '\'' +", username='" + username + '\'' +", password='" + password + '\'' +                ", registrationTime='" + registrationTime + '\'' +                '}';}
}

6. 定义操作 t_user 表的sql映射文件UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 这个XML文件其实就相当于我们三层架构中的DAO层的实现类xxxDaoImpl,如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。也就是说,有了这个配置文件,至少之前原始JDBC中经常出现的Connection,PreparedStatement,ResultSet这些接口不需要你再创建了当然要编写这个文件,需要对<mapper>标签中出现的属性和标签都要熟悉,不过没有必要去一一熟悉,用到什么我们再去查询就行了
-->
<!-- 为这个mapper指定一个唯一的namespace,namespace的值习惯上设置成包名+sql映射文件名,这样就能够保证namespace的值是唯一的
例如namespace="om.yingside.mapper.UserMapper"就是com.yingside.mapper(包名)+UserMapper(UserMapper.xml文件去除后缀)-->
<mapper namespace="com.yingside.mapper.UserMapper"><!--根据 id 查询 user 表中的数据id:唯一标识符,此文件中的id值不能重复,简单来说,就是DAO层中的方法名resultType:返回值类型,一条数据库记录也就对应实体类的一个对象,注意现在要跟上全名(包名+类名)parameterType:参数类型,也就是查询条件的类型#{}表示一个占位符即?,在使用时不需要关心参数值的类型,mybatis会自动进行java类型和jdbc类型的转换。--><select id="getUser" parameterType="int"resultType="com.yingside.bean.User">select * from t_user where id=#{id}    </select>
</mapper>

7. 在mybatis-configuration.xml配置文件中注册UserMapper.xml文件

mybatis-configuration.xml文件的<configuration></configuration>标签中加入<mappers></mappers>标签

<!-- 注册UserMapper.xml文件,UserMapper.xml位于com.yingside.mapper这个包下,所以resource写成com/yingside/mapper/UserMapper.xml--><mappers><mapper resource="com/yingside/mapper/UserMapper.xml" /></mappers>

8. 文件结构

spring和mybatis整合:使用xml方式相关推荐

  1. 【Spring】Spring SpringMVC MyBatis 整合 applicationContext.xml文件笔记

    今天主要记录在SSM整合 主要的配置文件代码内容: <?xml version="1.0" encoding="UTF-8"?><beans ...

  2. java元婴期(26)----java进阶(mybatis(5)---spring和mybatis整合(重点)逆向工程(会用))

    spring和mybatis整合 1.整合思路 需要spring通过单例方式管理SqlSessionFactory. spring和mybatis整合生成代理对象,使用SqlSessionFactor ...

  3. Spring+SpringMVC +MyBatis整合配置文件案例66666

    Spring+SpringMVC +MyBatis整合配置文件案例 标签: springspringmvcmybatismvcjava 2017-04-13 19:12 228人阅读 评论(1) 收藏 ...

  4. SSM整合之XML方式,与配置事务,拦截器,异常处理,PageHelper分页插件整合

    SSM整合之XML方式 将主流的三大框架整合一起使用 spring:将需要的bean交给IOC管理 SpringMVC:解决表现层 MyBatis:解决持久层 创建maven项目(配置文件与代码中注释 ...

  5. Spring boot Mybatis 整合(注解版)

    之前写过一篇关于springboot 与 mybatis整合的博文,使用了一段时间spring-data-jpa,发现那种方式真的是太爽了,mybatis的xml的映射配置总觉得有点麻烦.接口定义和映 ...

  6. Spring boot Mybatis 整合(完整版)

    Spring boot Mybatis 整合(完整版) 更多干货 SpringBoot系列目录 正题 本项目使用的环境: 开发工具:Intellij IDEA 2017.1.3 springboot: ...

  7. Spring、Mybatis整合Service优化思路,DAO层、Service层最终编码以及log4j日志的使用

    5. Spring.Mybatis整合Service层事务控制优化思路分析 # spring中处理事务的两种方式1. 编程式事务处理定义:通过在业务层中注入事务管理器对象,然后通过编码的方式进行事务控 ...

  8. Spring、mybatis整合,阿里短信接口

    mybatis-spring整合 一.MyBatis与Spring的集成 在学习mybatis配置时,对于mybatis-config配置的时候我们发现,大致是需要配置三个方面:setting.dat ...

  9. Spring与Mybatis整合

    一. MyBatis与Spring的集成 在学习mybatis配置时,对于mybatis-config配置的时候我们发现,大致是需要配置三个方面:setting.datasource.mappers ...

最新文章

  1. Android UI 统一修改Button控件的样式,以及其它系统控件的默认样式
  2. CF912D Fishes 期望
  3. hadoop HA集群搭建(亲测)
  4. jenkins 下载插件 一直失败_Jenkins 配置国内插件更新源
  5. MySQL - Explain深度剖析
  6. 论文笔记:Inception v1
  7. 【NLP】BERT蒸馏完全指南|原理/技巧/代码
  8. 请简要说明一下CyclicBarrier和CountDownLatch的区别?
  9. [课程相关]homework-06
  10. 搭建、使用与维护私有PyPi仓库
  11. 伙伴系统二叉树可视化笔记
  12. 安卓recovery如何传递启动参数
  13. Snacks HDU 5692 dfs序列+线段树
  14. 零一块学计算机二级题库,2017年计算机二级office题库及答案
  15. java ts视频文件转mp4格式在线求助
  16. 只懂python一门编程语言的人,可以做计算机视觉工程师吗?
  17. 搭建qnx开发环境,虚拟qnx系统+虚拟win7系统+QNX Momentics IDE 4.6
  18. Sql server中 如何用sql语句创建视图 及 视图的作用
  19. 科学论文写作工具TEX/LaTEX/CTEX
  20. 大学生餐饮主题网页制作 美食网页设计模板 学生静态网页作业成品 dreamweaver美食甜品蛋糕HTML网站制作

热门文章

  1. 离散图 java,Java实现离散Arnold变换(图像处理)
  2. 三次握手和四次挥手详细介绍
  3. c语言1 2 3 10000,在网上看到一个求2的10000次方的方法,有个地方看不懂,求大佬...
  4. 电视安卓和linux系统软件,安卓和LINUX系统哪种更适合网络电视机顶盒?
  5. linux 检测远程端口是否打开---nmap命令
  6. mysql 日期_Mysql数据库常见函数(下)——日期时间函数
  7. java连接本地oracle数据库_JAVA连接oracle数据库的三种方式
  8. c语言程序设计第二版李学刚,C语言程序设计(第2版)李学刚教学资源教学课件2-7 动态变量.pptx...
  9. php无限分类原理,php 递归无限级分类原理和实现代码
  10. c 正则表达式替换html,正则表达式替换html元素属性的方法