MyBatis配置使用
我这里用的环境说明:
jdk-10.0.1+apache-tomcat-9.0.1+apache-maven-3.5.2 + Eclipse PHOTON
mysql数据库,数据库testdb中表user包含id和name
用户名和密码都是root
新建maven的quickstart项目,名称abc
依赖
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.6</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
</dependency>
实体类
新建包com.test.domain
包中新建类User
package com.test.domain;
public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
mapper
创建包com.test.mapper
==========新建userMapper接口
package com.test.mapper;
import com.test.domain.User;
public interface userMapper {
public User fun(int id) throws Exception;
}
==========新建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">
<mapper namespace="com.test.mapper.userMapper">
<select id="fun" parameterType="int"
resultType="com.test.domain.User">
select name from user where id=#{id}
</select>
</mapper>
==========新建cfg.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://localhost:3306/testdb?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
<mappers>
<package name="com/test/mapper"/>
</mappers>
</configuration>
调用
package com.test.abc;
import java.io.IOException;
import java.io.Reader;
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 com.test.domain.User;
public class App{
public static void main(String[] args) throws IOException {
Reader reader = Resources.getResourceAsReader("com/test/mapper/cfg.xml");
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
SqlSession session = sessionFactory.openSession();
String statement = "com.test.mapper.userMapper.fun";
int id = 0;
User user = session.selectOne(statement, id);
System.out.println(user.getName());
}
}
数据库表结构如图
运行结果及目录结构如图
MyBatis配置使用相关推荐
- springboot下使用mybatis配置
springboot下使用mybatis配置 1. 依赖安装 pom.xml文件 <dependency><groupId>org.mybatis.spring.boot< ...
- Spring Boot——MyBatis配置带下划线命名的字段自动转换驼峰命名解决方案
问题描述 MyBatis无法查询出属性名和数据库字段名不完全相同的数据. 即:属性名和数据库字段名分别为驼峰命名和下划线命名时查出的数据为NULL. 问题分析 MyBatis默认是属性名和数据库字段名 ...
- 【spring boot】 mybatis配置双数据源/多数据源
前言 spring boot 2.0.0.RELEASE maven 3.5 eclipse 4.9.0 mybatis 1.3.2 mybatis generator 1.3.2 pagehelpe ...
- MyBatis配置错误
MyBatis配置错误 "C:\Program Files\Java\jdk1.8.0_144\bin\java" -ea -Didea.test.cyclic.buffer.si ...
- Spring Boot MyBatis配置多种数据库
mybatis-config.xml是支持配置多种数据库的,本文将介绍在Spring Boot中使用配置类来配置. 1. 配置application.yml # mybatis配置 mybatis:c ...
- mybatis 配置 mysql连接池_spring 5.x 系列第5篇 —— 整合 mybatis + druid 连接池 (xml配置方式)...
项目目录结构 1. 导入依赖 创建 maven 工程,除了 Spring 的基本依赖外,还需要导入 Mybatis 和 Druid 的相关依赖: org.springframeworkgroupId& ...
- mybatis支持驼峰自动转换sql吗_SpringBoot整合mybatis——配置mybatis驼峰命名规则自动转换...
一.简述 mybatis驼峰式命名规则自动转换: 使用前提:数据库表设计按照规范"字段名中各单词使用下划线"_"划分": 使用好处:省去mapper.xml文件 ...
- SpringBoot中mybatis配置多数据源
首先需要创建多个数据库 简单的user表 CREATE TABLE `user` (`id` int NOT NULL AUTO_INCREMENT,`name` varchar(255) DEFAU ...
- mybatis 配置详解
mybatis 配置详解 mybatis-config.xml 核心配置文件 mybatis-config.xml 包含的内容如下 configuration(配置) properties(属性) s ...
- Mybatis配置信息浅析 MyBatis简介(二)
官方文档入门篇中有明确说明 每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的. SqlSessionFactory 的实例可以通过 SqlSessionF ...
最新文章
- ios面试数据结构与算法
- 插上翅膀,让Excel飞起来——xlwings(一)
- WinForm连接数据库
- 从LiveVideoStackCon 2019北京看多媒体技术趋势
- 【渝粤教育】电大中专学前儿童语言教育 (6)作业 题库
- 苹果编程套餐更新,新增创意课程,十一拿起吃灰的iPad学起来!
- 【C++入门】C++多态
- Zookeeper之集群安装
- c语言自动计费工作,c语言编程实现话单计费实例
- SpringBoot配置redis
- 酷睿i7 8750h相当于什么水平 i78750h属于什么级别
- 下拉列表dropdown取消默认点击隐藏及修复需要二次点击的方法
- 我的Java开发学习之旅------Java经典面试题
- 7.03maven和网络
- 重磅!京东云自研第四代云主机发布;曝国外物理学家开发出用于量子计算机的汇编语言...
- java内部错误2203,win7系统安装Java出现"内部错误2203"问题的解决方法
- 开发一款系统软件大概需要多少钱呢
- PC网站微信扫码支付,Native支付,“当前商户号暂不支持关联该类型的appid“,“签名错误,请检查后再试““springBoot 微信支付“
- 财政收入影响因素分析及预测
- MySQL数据库,数据的约束
热门文章
- hdu4521 线段树+dp
- 活动目录的物理结构逻辑结构
- 利用DataGrid的超级联接传值
- mysql视图的更新 条件_MySQL进阶16 - 视图的创建/修改/删除/更新--可更新性的不适用条件...
- http重定向到https
- ELK filebeat或logstash修改规则之后重写记录到ElasticSearch
- php foeeach页面输出,PHP数组foreach遍历输出例子详解
- python使用长ping命令_在Python中调用Ping命令,批量IP的方法
- i7-9700与E5 2667 V2空载功耗对比
- 吹嘘自己,只是想别人从吾这里学点东西