不说废话直接上代码,首先看下我的目录机构:

红色部分,表明你所需的jar包,已经配置文件.

创建用户表,以及插入数据.

create table books(id int (11) not null auto_increment,
image_url varchar(100) not null,
book_name varchar(50) not null,
author varchar(20) not null,
description varchar(255) not null,
primary key (id))ENGINE=InnoDB DEFAULT CHARSET=utf8; insert into books(image_url,book_name,author,description) values('resources/images/english.jpg','考研英语','孙悟空','内容系统而全面,英语学习的好帮手!内容系统而全面,英语学习的好帮手!内容系统而全面,英语学习的好帮手!内容系统而全面,英语学习的好帮手!');
insert into books(image_url,book_name,author,description) values('resources/images/english.jpg','考研数学','刘诗诗','内容系统而全面,数学学习的好帮手,内容系统而全面,数学学习的好帮手内容系统而全面,数学学习的好帮手内容系统而全面,数学学习的好帮手');

创建Book.java

package com.mybatis.model;

public class Book {
private int id;
private String imageUrl;
private String name;
private String author;
private String description; public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getImageUrl() {
return imageUrl;
}
public void setImageUrl(String imageUrl) {
this.imageUrl = imageUrl;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
} }

设置mybatis 配置文件:configuration.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>
<typeAliases>
<!-- 给实体类去一个别名 -->
<typeAlias type="com.mybatis.model.Book" alias="Book"/>
</typeAliases> <!-- 数据源配置,这里用MySQL数据库 -->
<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://127.0.0.1:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments> <mappers>
<!-- book.xml装载进来,等同于把Dao的实现类装载进来 -->
<mapper resource="com/mybatis/model/book.xml"/>
</mappers> </configuration>

建立与Book.java对应的映射文件 book.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">
<!--这块等于Dao接口的实现 namespace必须和接口的类路径一样--> <mapper namespace="com.mybatis.model.BookMapper">
<!-- queryEmpById必须和接口中的方法名一样, 返回一个Emp 就是刚才的别名 ,如果不用别名要连路径一起写,麻烦-->
<select id="selectBookById" parameterType="int" resultType="Book">
select * from books where id=#{id}
</select>
</mapper>

最后就让我们编写一个测试类,运行我们的程序

package com.mybatis.test;

import java.io.IOException;

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.mybatis.model.Book; public class Test { /***
* 获得MyBatis SqlSessionFactory
* SqlSessionFactory 负责创建SqlSession ,一旦创建成功,就可以用SqlSession实例来执行映射语句
* ,commit,rollback,close等方法
* @return
*/ private static SqlSessionFactory getSessionFactory(){
SqlSessionFactory sessionFactory=null;
String resource="configuration.xml";
try {
sessionFactory=new SqlSessionFactoryBuilder().build(Resources.getResourceAsReader(resource));
} catch (IOException e) {
e.printStackTrace();
}
return sessionFactory;
}
public static void main(String[] args) {
SqlSession session=getSessionFactory().openSession();
Book book=session.selectOne("com.mybatis.model.BookMapper.selectBookById", 2);
System.out.println(book.getAuthor());
}
}

最新文章

  1. Integer to Roman -- LeetCode 012
  2. WPF系列:画图
  3. JLOI2016 方
  4. Springmvc整合tiles框架简单入门示例(maven)
  5. 关于UIMenuController的使用 弹出菜单 UIMenuItem
  6. OpenJudge计算概论-求出e的值
  7. Javascript中的Bind 、Call和Apply
  8. [前端JS学习笔记]JavaScript CallBack
  9. Microsoft Dynamics CRM4.0编程---说明
  10. MiniUI学习笔记1
  11. Table的分割线偏移量设置 及其 UIEdgeInset详解
  12. RxVolley使用文档 —— RxVolley = Volley + RxJava + OkHttp
  13. An SDN-NFV Platform for Personal Cloud Services
  14. java 新手必看大全
  15. django restframework jwt
  16. ActiveMQ-为什么需要消息中间件?
  17. mysql计算两个日期相差的天数
  18. Tomcat架构解析(二)-----Connector、Tomcat启动过程以及Server的创建过程
  19. vue中使用promise.all发送多个请求
  20. MD Test

热门文章

  1. Android简易实战教程--第十九话《手把手教您监听EditText文本变化,实现抖动和震动的效果》
  2. Cocos2D瓦块地图高清屏(retina)显示比例问题的解决
  3. 一个简单的安卓+Servlet图片上传例子
  4. linux中的网络通信指令
  5. 成员函数的const到底修饰的是谁
  6. [GitHub]第七讲:GitHub issues
  7. mysql进阶(二十二)MySQL错误之Incorrect string value: &#39;\xE7\x81\xAB\xE7\x8B\x90...中文字符输入错误
  8. RxVolley使用文档 —— RxVolley = Volley + RxJava + OkHttp
  9. Uva - 12174 - Shuffle
  10. UI设计切忌墨守成规,但改变也须用数据说话