mybatis 3.4.5 HelloWorld 01
来源:互联网 发布:电脑编程培训学校 编辑:程序博客网 时间:2024/06/11 07:05
在SSH框架盛行的时代,ORM和持久层框架都不断响彻在耳边,今天如歌就带领大家一起来认识另一种持久层框架;
官网api
搭建开发环境
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.ruge</groupId> <artifactId>mybatis</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>mybatis Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.45</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17.redhat-3</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies> <build> <finalName>mybatis</finalName> </build></project>
创建数据库
/*Navicat MySQL Data TransferSource Server : 爱丽丝、如歌Source Server Version : 50717Source Host : localhost:3306Source Database : mybatisTarget Server Type : MYSQLTarget Server Version : 50717File Encoding : 65001Date: 2017-12-20 15:23:16*/SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for `tbl_emp`-- ----------------------------DROP TABLE IF EXISTS `tbl_emp`;CREATE TABLE `tbl_emp` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, `gender` varchar(255) DEFAULT NULL, `email` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;-- ------------------------------ Records of tbl_emp-- ----------------------------INSERT INTO `tbl_emp` VALUES ('1', '张三', 'gen', '1@qq.com');
mybatis-config.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/mybatis"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="mapper/Emp.xml"/> </mappers></configuration>
Controller
package com.ruge.mybatis.controller;import com.ruge.mybatis.entity.Emp;import com.ruge.mybatis.mapper.EmpMapper;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.Test;import java.io.InputStream;import java.util.List;/** * @author 爱丽丝、如歌 * @Description: TODO * @date 2017/12/20 11:07 */public class EmpController { @Test public void Conn() throws Exception{ String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession session = sqlSessionFactory.openSession(); try { EmpMapper mapper = session.getMapper(EmpMapper.class); List<Emp> ee = mapper.select(1); System.out.println(ee); } finally { session.close(); } }}
Mapper
package com.ruge.mybatis.mapper;import com.ruge.mybatis.entity.Emp;import java.util.List;/** * @author 爱丽丝、如歌 * @Description: TODO * @date 2017/12/20 11:19 */public interface EmpMapper { public List<Emp> select ();}
entity
package com.ruge.mybatis.entity;/** * @author 爱丽丝、如歌 * @Description: TODO * @date 2017/12/20 10:56 */public class Emp { private int id; private String name; private String gender; private String email; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } @Override public String toString() { return "Emp{" + "id=" + id + ", name='" + name + '\'' + ", gender='" + gender + '\'' + ", email='" + email + '\'' + '}'; }}
Emp.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.ruge.mybatis.mapper.EmpMapper"> <select id="select" resultType="com.ruge.mybatis.entity.Emp"> select * from tbl_emp where id = #{id} </select></mapper>
总结
mybatis是Apache下的顶级项目,是一个持久层框架,是一个不完全的ORM框架;
mybatis使得程序将主要精力放在了sql上,它通过自身提供的映射方式,自由且灵活地生成满足程序需要的sql语句(半自动化,大部分需要程序员自己编写);
mybatis可以将向PreparedStatement中输入的参数自动进行输入映射,将查询结果集灵活映射成Java对象(输出映射);
以上是如歌对mybatis基础的整理,希望能帮大家更好的了解MyBatis!如有更好的建议或者意见,请留言!
阅读全文
0 0
- mybatis 3.4.5 HelloWorld 01
- MyBatis HelloWorld
- mybatis -- helloworld
- Mybatis HelloWorld
- MyBatis--HelloWorld
- MyBatis HelloWorld
- 【Mybatis】Helloworld
- MyBatis HelloWorld
- Mybatis-HelloWorld
- mybatis的HelloWorld
- HelloWorld之MyBatis
- mybatis 入门HelloWorld
- mybatis的helloworld版
- [J2EE]MyBatis HelloWorld
- Mybatis最入门---HelloWorld
- mybatis第一个helloworld
- SpringMVC MyBatis 集成 HelloWorld
- Mybatis最入门---HelloWorld
- 用css实现svg描边的动画效果
- 滑动窗口内唯一元素数量和
- Linux top命令的用法详细详解
- 省市区三级联动
- mac 端口占用 Port already in use
- mybatis 3.4.5 HelloWorld 01
- 最小公倍数和最大公约数的求法——最快的:辗转相除法
- jenkins打包android的apk包实践经验
- 南通java培训学员福音——阿里巴巴180亿云计算数据中心落户南通
- 什么是TPS,什么是QPS,区别是什么?
- thinkphp中的add(),save(),delete()返回值问题
- order by 多条件排序
- 联合金服
- JVM内存分配与回收