博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第 14 章 MyBatis
阅读量:7049 次
发布时间:2019-06-28

本文共 3424 字,大约阅读时间需要 11 分钟。

14.1. Mybatis 入门

创建数据库与表并插入测试数据

CREATE DATABASE `mybatis` /*!40100 COLLATE 'utf8_general_ci' */;CREATE USER 'mybatis'@'192.168.%' IDENTIFIED BY 'mybatis';GRANT USAGE ON *.* TO 'mybatis'@'192.168.%';GRANT SELECT, EXECUTE, SHOW VIEW, ALTER, ALTER ROUTINE, CREATE, CREATE ROUTINE, CREATE TEMPORARY TABLES, CREATE VIEW, DELETE, DROP, EVENT, INDEX, INSERT, REFERENCES, TRIGGER, UPDATE, LOCK TABLES  ON `mybatis`.* TO 'mybatis'@'192.168.%' WITH GRANT OPTION;FLUSH PRIVILEGES;SHOW GRANTS FOR 'mybatis'@'192.168.%';CREATE TABLE IF NOT EXISTS `user` (  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,  `name` varchar(50) DEFAULT NULL,  `age` int(10) unsigned DEFAULT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;INSERT INTO `user` (`id`, `name`, `age`) VALUES	(1, 'Neo', 35),	(2, 'Jerry', 36);

Maven pom.xml 中加入依赖包

org.mybatis
mybatis
3.3.0
mysql
mysql-connector-java
5.1.37

pom.xml

4.0.0
MyBatis
MyBatis
0.0.1-SNAPSHOT
junit
junit
3.8.1
test
org.mybatis
mybatis
3.3.0
mysql
mysql-connector-java
5.1.37
src
maven-compiler-plugin
3.3
1.8
1.8

src/mybatis.xml

src/cn/netkiller/mapping/userMapping.xml

resultType 文件

package cn.netkiller.model;public class User {	private String id;	private String name;	private int age;	public String getId() {		return id;	}	public void setId(String id) {		this.id = id;	}	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public int getAge() {		return age;	}	public void setAge(int age) {		this.age = age;	}	@Override	public String toString() {		return "User [id=" + id + ", name=" + name + ", age=" + age + "]";	}}

测试代码

package cn.netkiller.test;import java.io.InputStream;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import cn.netkiller.model.*;public class Tests {	public static void main(String[] args) {		// TODO Auto-generated method stub		String resource = "mybatis.xml";		InputStream is = Tests.class.getClassLoader().getResourceAsStream(resource);		SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);		SqlSession session = sessionFactory.openSession();		String statement = "cn.netkiller.mapping.UserMapping.getUser";// 映射sql的标识字符串		User user = session.selectOne(statement, "2");		System.out.println(user.toString());	}}

原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

你可能感兴趣的文章
小程序组件封装
查看>>
Flutter教程-自定义无限滚动轮播器infinity_slider
查看>>
Glide 使用Transformation 时 placeholder、error 无效解决方法
查看>>
StudyFlutter——我的第一个APP
查看>>
基于three.js的3D粒子动效实现
查看>>
swift中 Selector的使用
查看>>
自用ES6笔记
查看>>
Spring源码解析-applicationContext.xml加载和bean的注册
查看>>
没有产生强烈“化学反应”的物联网产业,缺的究竟是什么?
查看>>
vue[源码]之数组处理与拦截变异
查看>>
实现promise.all方法
查看>>
前后端分离与Node和NPM的那些事
查看>>
移动端响应式
查看>>
日本公司争相打造遥控机器人抗核辐射
查看>>
AS插件利器,实现依赖库自动补全,支持变量提取和JetPack
查看>>
iOS面试题05-数据结构算法篇
查看>>
微信小程序 跳坑
查看>>
五个你可能不了解的killall选项
查看>>
编程小技巧
查看>>
微服务间的方法调用和应用内方法调用有啥区别
查看>>