01-MyBatis_搭建第一个应用
来源:互联网 发布:mysql中获取当前时间 编辑:程序博客网 时间:2024/05/07 09:08
0. 下载
MyBatis3用户指南中文版_.pdf
mybatis-3.1.1-bundle.zip
mybatis-spring-1.0.0-bundle.zip
注: junit4 需自行导入
搭建第一个mybatis.zip
目录结构
1. 准备
① mybatis-3.1.1-bundle.zip② mysql-connector-java-5.1.21-bin.jar
③ MySQL数据库
-- drop database mybatis;CREATE DATABASE mybatis;USE mybatis;CREATE TABLE USER( id VARCHAR(36) PRIMARY KEY , NAME VARCHAR(64), address VARCHAR(128))INSERT INTO USER (id, NAME, address) VALUES("0001", "zhangsan", "Wuhan");INSERT INTO USER (id, NAME, address) VALUES("0002", "lisi", "Shanghai"); SELECT * FROM USER;
2. 参考
文档 : mybatis-3.1.1 中自带3. 配置文件
① 总配置文件-- sqlMapConfig.xml<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configurationPUBLIC "-//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/mybatis" /><property name="username" value="root" /><property name="password" value="root" /></dataSource></environment></environments><mappers><!-- 映射文件的位置 --><mapper resource="com/hehe/mybatis/domain/User.xml" /></mappers></configuration>
② 映射文件--User.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.hehe.mybatis.domain.User"><!-- 根据ID查询User --><!-- id: 当前sql语句的唯一标识 ,namespace+SQL-id 唯一标识一条SQLparameterType: SQL语句中的参数类型, 即"#{id}"的类型, 可写成java.lang.StringresultType: 结果类型(返回值类型)--><select id="selectUserById" parameterType="string" resultType="com.hehe.mybatis.domain.User">select * from user where id = #{id}</select><select id="selectAllUsers" resultType="com.hehe.mybatis.domain.User">select * from user</select></mapper>
4. 实体-- User
package com.hehe.mybatis.domain;public class User {private String id;private String name;private String address;@Overridepublic String toString() {return "id=" + id + "\tname="+name+"\taddress="+address;} // set / get 已省略}
5. 测试
① 测试MyBatis是否能启动② 测试SQL
package com.hehe.mybatis.test;import java.io.InputStream;import java.util.List;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 org.junit.Before;import org.junit.Test;import com.hehe.mybatis.domain.User;public class UserTest {SqlSessionFactory sqlSessionFactory = null;@Test @Beforepublic void testInitMyBatis() throws Exception {// 装载总配置文件String resource = "sqlMapConfig.xml";InputStream inputStream = Resources.getResourceAsStream(resource);sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);System.out.println(sqlSessionFactory);}/*<select id="selectUserById" parameterType="string" resultType="com.hehe.mybatis.domain.User">select * from user where id = #{id}</select>*/@Test public void testSelectUserById() throws Exception {SqlSession session = sqlSessionFactory.openSession();// namespace + SQL-id 唯一标识一条SQL// namespace : com.hehe.mybatis.domain.User// SQL-id : selectUserByIdUser user = session.selectOne("com.hehe.mybatis.domain.User.selectUserById", "0001");System.out.println(user);session.close();}/*<select id="selectAllUsers" resultType="com.hehe.mybatis.domain.User">select * from user</select>*/@Test public void testSelectAllUsers() throws Exception {SqlSession session = sqlSessionFactory.openSession();// namespace + SQL-id 唯一标识一条SQL// namespace : com.hehe.mybatis.domain.User// SQL-id : selectUserByIdList<User> users = session.selectList("com.hehe.mybatis.domain.User.selectAllUsers");for (User user : users) {System.out.println(user);}session.close();}}
- 01-MyBatis_搭建第一个应用
- Django搭建第一个应用
- 开始搭建第一个JavaWeb应用
- 黑莓开发者的第一个BlackBerry应用开发--搭建环境
- React + ES6环境搭建与第一个应用
- 聊聊SpringBoot | 第一章:快速搭建SpringBoot第一个应用
- 01:搭建第一个springboot项目
- 搭建第一个struts2
- 第一个Servlet应用
- Hibernate第一个应用
- 第一个小应用
- 第一个struts应用
- 第一个Django应用
- 第一个Struts2应用
- 第一个Android应用
- 第一个Mac应用
- 第一个NetBeans应用
- flex第一个应用
- 不要为客户规划完美的企业知识建设
- CF 356A
- sicily 1443.Printer Queue
- Bitmap 简介
- Prism是一个超轻量的开源框架
- 01-MyBatis_搭建第一个应用
- JS设计模式之装饰者模式
- 用文件逐行处理A+B问题
- 软件过程的价值观、原则以及实践——从敏捷说起
- 儿子眼中的宝藏
- Makefile选项CFLAGS,LDFLAGS,LIBS
- 平方数的约数个数
- 71道经典面试题和答案
- 用word 2003制作毕业论文从正文开始加页码的页眉页脚,去掉页眉横线