< 一 > 主配置文件

<?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://localhost:3306/test?useUnicode=true&amp;characterEncoding=UTF-8" /><property name="username" value="root" /><property name="password" value="920619" /></dataSource></environment></environments><!-- 将 SQL 语句的配置文件导入 MYBATIS 的主配置文件 --><mappers><mapper resource="mybatis/sqlxml/UserDao.xml" /></mappers>
</configuration>

< 二 > 接口 UserDao

package mybatis.dao;import mybatis.model.User;public interface UserDao {public User getOne(int userId);
}

< 三 > 对应接口的 SQL 配置文件 UserDao.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"><!-- 命名空间为绑定接口的全类名 -->
<mapper namespace="mybatis.dao.UserDao"><!-- id 为接口定义的方法名  resultType 为实体类的全类名  #{userId} 中的参数和方法名一致 --><select id="getOne" resultType="mybatis.model.User">select * from User where UserId = #{userId}</select>
</mapper>

< 四 > 调用配置文件的方法

package mybatis.service;import java.io.IOException;
import java.io.InputStream;import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;import mybatis.dao.UserDao;
import mybatis.model.User;public class UserService {public static void main(String[] args) {SqlSession session = null;try {// 读取配置文件InputStream inputStream = Resources.getResourceAsStream("mybatis.xml");// 实例化 SQlSESSION 的工厂对象 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);// 打开 SESSIONsession = sqlSessionFactory.openSession();// 将接口的字节码注入到配置文件UserDao userDao = session.getMapper(UserDao.class);// 调用配置文件的方法, 获取结果User user = userDao.getOne(1);System.out.println(user);} catch (IOException e) {e.printStackTrace();} finally {if(session != null){session.close();}}}
}

Mybatis 基本配置, 面向接口相关推荐

  1. MyBatis运行原理(三)接口式编程及创建代理对象原理分析

    一.面向接口开发步骤 定义代理接口,将操作数据库的方法定义在代理接口中. 在SQL 映射文件中编写SQL 语句. 将SQL 映射文件注册在MyBatis 的全局配置文件中. 编写测试代码. 二.环境准 ...

  2. 什么是Mybatis?Mybatis能干什么?Mybatis怎么配置?

    简介 什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.My ...

  3. 【教程】Spring+Mybatis环境配置多数据源

    做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开! 文章目录 一.简要概述 二.代码详解 2.1 `DataSourceConstants` 数据源常量类 2.2 `Data ...

  4. MyBatis——XML配置解析

    目录 1. 环境配置(environments) 2. 属性(properties) 3. 类型别名(typeAliases) 方式一:通过typeAlias起别名 方式二:通过package起别名 ...

  5. 万事开头难!最新MyBatis程序配置教程(IDEA版)

    目录 1.搭建实验数据库 2.IDEA新建项目,连接数据库 3.编写MyBatis核心配置文件 4.编写MyBatis工具类 5.创建表对应实体类 6.编写Mapper接口 7.编写Mapper.xm ...

  6. 微服务实战之春云与刀客(三)—— 面向接口调用代码结构实例

    2019独角兽企业重金招聘Python工程师标准>>> 概述 在上一篇中提到了spring cloud 面向接口调用的开发风格,这一篇会举一个简单的但完整的例子来说明整个代码结构. ...

  7. MyBatis 实践 -配置

    MyBatis 实践 标签: Java与存储 Configuration mybatis-configuration.xml是MyBatis的全局配置文件(文件名称随意),其配置内容和顺序例如以下: ...

  8. SpringMVC+Mybatis+MySQL配置Redis缓存

    SpringMVC+Mybatis+MySQL配置Redis缓存 1.准备环境: SpringMVC:spring-framework-4.3.5.RELEASE-dist Mybatis:3.4.2 ...

  9. swift 组件化_打造完备的iOS组件化方案:如何面向接口进行模块解耦?

    作者 | 黑超熊猫zuik,一个修行中的 iOS 开发,喜欢搞点别人没搞过的东西,钻研过逆向工程.VIPER 架构和组件化. 关于组件化的探讨已经有不少了,在之前的文章 iOS VIPER架构实践(三 ...

最新文章

  1. ios转向前端进阶之:html标签类型
  2. PHP读取微信超时,'curl出错,错误码:28'
  3. 图像处理常用边缘检测算子
  4. cookie和session的讲解
  5. 【DP】翻硬币(jzoj 3921)
  6. 走近北京后厂村程序员的真实生活:“拿命换钱”
  7. PPDet:减少Anchor-free目标检测中的标签噪声,小目标检测提升明显
  8. Web前端开发要掌握的技能有哪些?
  9. mysql odbc 没有_如何解决mysql odbc安装丢失的问题
  10. 集体智慧编程学习笔记(2.1)提供推荐
  11. 协议分析_qvod_获取快播视频的下载地址_20120203
  12. JAVA MONGODB 查询时间段
  13. trivy【1】漏洞扫描工具安装
  14. 2019 年第 33 周 DApp 影响力排行榜 | TokenInsight
  15. 五行代码搞定微信授权登录
  16. c语言错误中numeric,LC_NUMERIC
  17. 域用户绑定计算机,域批量绑定用户帐户与计算机帐户
  18. 编译原理个人作业--第五章——基于 编译原理 国防工业出版社 第三版
  19. 如何实现ps的批量处理图片
  20. EJB是个什么东东?

热门文章

  1. Android不同分辨率和不同密度适配
  2. 了解黑客的关键工具---揭开Shellcode的神秘面纱
  3. Android应用工程文件组成
  4. Java实现HTTP文件下载(转)
  5. MySQL 性能调优的10个方法
  6. Mozilla开源了VR框架A-Frame
  7. Python 多进程开发与多线程开发
  8. MahApps.Metro
  9. 工厂模式(Factory)(转)
  10. android-轻松监听来电和去电