mybatis實戰教程(一)環境配置及簡單入門
mybatis簡介
MyBatis 是支援定製化 SQL、儲存過程以及高階對映的優秀的持久層框架。MyBatis 避免了幾乎所有的 JDBC 程式碼和手動設定引數以及獲取結果集。MyBatis 可以對配置和原生Map使用簡單的 XML 或註解,將介面和 Java 的 POJOs(Plain Old Java Objects,普通的 Java物件)對映成資料庫中的記錄。
開發環境
軟體列表
軟體 | 版本 |
---|---|
eclipse | JavaEE版本 |
mysql | 5.7 |
JDK | 1.8 |
mybatis | 3.4.4 |
maven | 3.5.0 |
資料庫配置
- 建立一個名為mybatis的資料庫,並設定編碼為UTF-8,然後再建立一個名為activity的活動表,該表包含活動標題,活動圖片,活動描述,活動開始時間,活動結束時間等資訊。執行程式碼如下:
#登入mysql,開啟命令視窗輸入一下命令
mysql -uroot -proot
#建立名為mybatis的資料庫
create database if not exists mybatis character set utf8 collate utf8_general_ci;
#切換資料庫/使用資料庫
use mybatis;
#建立activity表
create table if not exists activity(
id int not null auto_increment,
title varchar(25) not null default '',
description text not null,
imgPath varchar(255) not null,
start_time datetime not null default now(),
end_time datetime not null default now(),
primary key(id),
unique key(imgPath)
)engine=innodb charset=utf8 comment "活動表" auto_increment=10;
#向表activity中插入一條資料
insert into activity(title,description,imgPath) value("愛美麗","愛美麗","www.zhq.com/1.png");
專案配置
- 建立一個名為mybatisLearn的Java專案,然後在專案目錄下建立一個名為lib的資料夾用來放mybatis-3.4.4.jar和mysql-connector-java-6.0.5-bin.jar檔案並把兩個jar包新增到構建環境配置內
- 在source目錄下建立一個名為com.zhq.pojo包用來放置簡單物件的實體類,在該包下建立Activity類程式碼如下:
package com.zhq.pojo;
import java.util.Date;
public class Activity {
private int id;
private String title;
private String note;
private String imgPath;
private Date startTime;
private Date endTime;
public Activity() {
super();
}
public Activity(int id, String title, String note, String imgPath, Date startTime, Date endTime) {
super();
this.id = id;
this.title = title;
this.note = note;
this.imgPath = imgPath;
this.startTime = startTime;
this.endTime = endTime;
}
public Activity(String title, String note, String imgPath, Date startTime, Date endTime) {
super();
this.title = title;
this.note = note;
this.imgPath = imgPath;
this.startTime = startTime;
this.endTime = endTime;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getNote() {
return note;
}
public void setNote(String note) {
this.note = note;
}
public String getImgPath() {
return imgPath;
}
public void setImgPath(String imgPath) {
this.imgPath = imgPath;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
@Override
public String toString() {
return "Activity [id=" + id + ", title=" + title + ", note=" + note + ", imgPath=" + imgPath + ", startTime="
+ startTime + ", endTime=" + endTime + "]";
}
}
3.在source目錄下建立一個包名為com.zhq.mapper用來存放mapper的配置檔案,並在該包下建立一個名為ActivityMapper.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.zhq.dao.ActivityDao">
<select id="selectAll" resultType="Activity">
select * from activity;
</select>
<select id="selectById" parameterType="int" resultType="Activity">
select * from activity where id = #{id};
</select>
</mapper>
4.設定mybatis配置檔案資訊,在source目錄下建立一個名為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>
<!--設定類別名-->
<typeAliases>
<typeAlias alias="Activity" type="com.zhq.pojo.Activity"/>
</typeAliases>
<!--配置資料來源資訊及開發環境配置-->
<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://127.0.0.1:3306/mybatis" />
<!--資料庫使用者名稱-->
<property name="username" value="root"/>
<!--資料庫密碼-->
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<!--配置要對映的配置檔案-->
<mappers>
<mapper resource="com/zhq/mapper/ActivityMapper.xml"/>
</mappers>
</configuration>
測試
1.建立一個名為com.zhq.test包用做測試,建立一個名為ActivityTest測試類並匯入junit測試包。程式碼如下:
package com.zhq.test;
import static org.junit.Assert.fail;
import java.io.IOException;
import java.io.Reader;
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.Assert;
import org.junit.Before;
import org.junit.Test;
import com.zhq.pojo.Activity;
public class ActivityTest {
private static SqlSessionFactory sqlSessionFactory;
private static Reader reader;
@Before
public void setUp() throws Exception {
try {
reader = Resources.getResourceAsReader("mybatis_config.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
} catch (IOException e) {
e.printStackTrace();
}
}
@Test
public void test() {
SqlSession session = sqlSessionFactory.openSession();
Activity activity = session.selectOne("com.zhq.dao.ActivityDao.selectById",10);
Assert.assertNotEquals("查詢成功", "愛美麗", activity.getTitle());
}
}
原始碼
相關文章
- 【MyBatis】3:MyBatis環境搭建及入門程式示例MyBatis
- Ionic2入門教程(一)安裝和環境配置
- Redis實戰(一)Redis簡介及環境安裝(Windows)RedisWindows
- jenkins簡單安裝及配置(Windows環境JenkinsWindows
- rust學習一、入門之搭建簡單開發環境Rust開發環境
- scrapy入門教程1:scrapy環境配置以及安裝
- gitbook 入門教程之環境要求Git
- GitHub簡單入門教程Github
- mybatis入門教程MyBatis
- libev教程一:libev簡單入門
- kubernetes實戰之consul簡單測試環境搭建及填坑
- 簡單的 Go 入門教程Go
- 開發環境配置pyenv快速入門開發環境
- ReactJs環境配置簡單介紹ReactJS
- 入門(一)搭建GAE環境
- PyTorch深度學習入門筆記(一)PyTorch環境配置及安裝PyTorch深度學習筆記
- Angular環境搭建及簡單體驗Angular
- Zookeeper環境搭建及簡單練習
- 【教程】Spring+Mybatis環境配置多資料來源SpringMyBatis
- Flutter入門教程(二)開發環境搭建Flutter開發環境
- Systemd 入門教程:實戰篇
- RabbitMQ使用教程(一)RabbitMQ環境安裝配置及Hello World示例MQ
- 新手入門經典:Jsp環境配置JS
- Ajax+PHP簡單入門教程PHP
- 最簡單的 Git 入門教程Git
- 一個案例入門補環境
- Elasticsearch叢集搭建教程及生產環境配置Elasticsearch
- Docker 實戰教程之從入門到提高(一)Docker
- kafka環境安裝及簡單使用(單機版)Kafka
- MyBatis從入門到精通(一):MyBatis入門MyBatis
- MyBatis入門——瞭解配置MyBatis
- MyBatis系列(一):MyBatis入門MyBatis
- FreaMarker入門教程,環境整合到使用例項
- PYTHON 實戰完整教程1-配置VSCode開發環境PythonVSCode開發環境
- Spring Boot + Mybatis + Spring MVC環境配置(二):Mybatis Generator配置Spring BootMyBatisMVC
- Flume NG 簡介及配置實戰
- MyBatis(一) 入門MyBatis
- ASP入門教程 1小時ASP入門,非常簡單