Mybatis学习-helloworld(从mybatis中读出一条数据)-1
来源:互联网 发布:java etl 开源框架 编辑:程序博客网 时间:2024/06/05 03:26
1. 下载
https://github.com/mybatis/mybatis-3/releases
帮助文档
\mybatis-3.4.1\mybatis-3.4.1\mybatis-3.4.1.pdf
2. maven配置
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.1</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.6</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency>
3. 日志配置
添加log4j.properties到src目录下
log4j.rootLogger=DEBUG,Console#输出到控制台log4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.layout=org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH\:mm\:ss,SSS}][%c]%m%nlog4j.logger.java.sql.ResultSet=INFOlog4j.logger.org.apache=INFOlog4j.logger.java.sql.Connection=DEBUGlog4j.logger.java.sql.Statement=DEBUGlog4j.logger.java.sql.PreparedStatement=DEBUG
4. 创建数据库表(mysql)
create table tbl_employee( id int(11) primary key auto_increment, last_name varchar(255), gender char(1), email varchar(255) );
insert into tbl_employee values(null,'tom',0,'tom@guigu');
5.创建对应的java bean
注意,此处java bean的lastname字段与数据库中last_name字段不对应,需要在sql中起别名处理
public class Employee { private int id; private String lastname; private String email; private String gender; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getLastname() { return lastname; } public void setLastname(String lastname) { this.lastname = lastname; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } @Override public String toString() { return "Employee{" + "id=" + id + ", lastname='" + lastname + '\'' + ", email='" + email + '\'' + ", gender='" + gender + '\'' + '}'; }}
6.创建mybatis配置文件
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.cj.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost/mybatis?serverTimezone=UTC"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <mapper resource="com/stayreal/mybatis/EmployeeMapper.xml"/> </mappers></configuration>
7. 创建javabean的映射文件
EmployeeMapper.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.stayreal.mybatis.EmployeeMapper"> <select id="selectEmp" resultType="com.stayreal.mybatis.Employee"> select id,last_name lastname,email,gender from tbl_employee where id = #{id} </select></mapper>
8. 创建JunitTest测试结果
public class EmployeeTest{ private static SqlSessionFactory sqlSessionFactory; private SqlSession session; @BeforeClass public static void beforeClass() throws IOException { // 1. 根据xml创建SqlSessionFactory对象 String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); } @AfterClass public void afterClass(){ session.close(); } @Test public void testLoad() throws IOException { // 2. 获取session实例 能执行已经映射的sql语句 session = sqlSessionFactory.openSession(); // selectOne方法的两个参数: // sql的唯一标识 // 执行sql要用的参数 Employee employee = session.selectOne("com.stayreal.mybatis.EmployeeMapper.selectEmp", 1); System.out.println(employee.toString()); }}
观察console输出
[DEBUG][2017-06-06 15:59:51,056][com.stayreal.mybatis.EmployeeMapper.selectEmp]==> Preparing: select id,last_name lastname,email,gender from tbl_employee where id = ? [DEBUG][2017-06-06 15:59:51,184][com.stayreal.mybatis.EmployeeMapper.selectEmp]==> Parameters: 1(Integer)[DEBUG][2017-06-06 15:59:51,258][com.stayreal.mybatis.EmployeeMapper.selectEmp]<== Total: 1Employee{id=1, lastname='tom', email='tom@guigu', gender='0'}
阅读全文
0 0
- Mybatis学习-helloworld(从mybatis中读出一条数据)-1
- MyBatis学习(一)-HelloWorld
- mybatis 中使用association返回一条数据
- mybatis学习笔记(零)mybatis学习之HelloWorld
- mybatis学习笔记(一)helloworld
- 【Mybatis学习总结一】Mybatis的helloworld
- Mybatis入门学习一:HelloWorld
- MyBatis HelloWorld
- mybatis -- helloworld
- Mybatis HelloWorld
- MyBatis--HelloWorld
- MyBatis HelloWorld
- 【Mybatis】Helloworld
- MyBatis HelloWorld
- Mybatis-HelloWorld
- mybatis 关联查询只返回一条数据
- mybatis 一对一查询 出现一条数据总结
- MyBatis-1 概述与HelloWorld
- メール送受信
- 滚轮事件
- 浅析VO、DTO、DO、PO的概念、区别和用处
- Spring发送邮件小结(附源码)
- 数字 k 在排序数组 arr 中出现的次数
- Mybatis学习-helloworld(从mybatis中读出一条数据)-1
- 固态硬盘寿命计算公式
- EVAL的含义
- JavaScript实现数学里的排列组合的A和C运算
- 武汉首次用无人机检测锅炉 已检测出隐患221处
- 程序员基础:通信协议——Http、TCP、UDP
- 一个刁刁的卡片样式广告轮播
- 常见面试之机器学习算法思想简单梳理
- 自学Java的第二天(Windows环境下Eclipse搭建Maven环境)