01_Mybatis入门
一. Mybatis介紹
1. MyBatis是一款優(yōu)秀的持久層框架, 它支持定制化SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。MyBatis避免了幾乎所有的JDBC代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis可以使用簡(jiǎn)單的XML或注解來(lái)配置和映射原生信息, 將接口和Java的POJO(Plain Ordinary Java Object, Java實(shí)體類)映射成數(shù)據(jù)庫(kù)中的記錄。
2. Mybatis是面向sql的持久層框架, 他封裝了jdbc訪問(wèn)數(shù)據(jù)庫(kù)的過(guò)程, 我們開(kāi)發(fā), 只需專注于sql語(yǔ)句本身的拼裝, 其它復(fù)雜的過(guò)程全部可以交給mybatis去完成。
二. Mybatis的使用
1. Mybatis的jar包
2. 在SqlMapConfig.xml配置文件中配置數(shù)據(jù)庫(kù)環(huán)境
3. 在SqlMapConfig.xml配置文件中引入映射文件
4. 在UserMapper.xml映射文件中配置命名空間
5. 在UserMapper.xml映射文件中書寫Sql
6. Mysql自增返回配置方式一
7. Mysql自增返回配置方式二
8. Mybatis查詢數(shù)據(jù)庫(kù)代碼
9. Mybatis插入數(shù)據(jù)庫(kù)代碼, 需要主動(dòng)提交(修改數(shù)據(jù)庫(kù)都需要主動(dòng)提交)
三. Mybatis入門例子
1. 新建一個(gè)名為MybatisRuMen的Java工程, 拷入相關(guān)jar包
2. 新建User.java
package com.lywgames.domain;import java.util.Date;public class User {private Integer id;private String name;private String sex;private Date birthday;private String address;public User() { }public User(String name, String sex, Date birthday, String address) {this.name = name;this.sex = sex;this.birthday = birthday;this.address = address;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}@Overridepublic String toString() {return "User [id=" + id + ", name=" + name + ", sex=" + sex + ", birthday=" + birthday + ", address=" + address+ "]";}}3. 在src目錄下新建UserMapper.xml映射文件
4. 在src目錄下新建SqlMapConfig.xml數(shù)據(jù)庫(kù)配置文件
5. 新建Test.java
package com.lywgames;import java.io.InputStream; import java.util.Date; 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 com.lywgames.domain.User;public class Test {public static void main(String[] args) {SqlSession sqlSession = null;try {// 指定全局配置文件String resource = "SqlMapConfig.xml";// 讀取配置文件InputStream inputStream = Resources.getResourceAsStream(resource);// 構(gòu)建sqlSessionFactorySqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);// 獲取sqlSessionsqlSession = sqlSessionFactory.openSession();// 第一個(gè)參數(shù): 指定statement, 命名空間+"."+statementId// 第二個(gè)參數(shù): 指定傳入sql的參數(shù)User insertUser = new User("李衛(wèi)", "男", new Date(System.currentTimeMillis()), "河南省鄭州市");int result = sqlSession.insert("com.lywgames.domain.User.insertUser2", insertUser);System.out.println("插入操作影響行數(shù):" + result);System.out.println(insertUser);// 寫操作, 需要提交事務(wù)。sqlSession.commit();List<User> users = sqlSession.selectList("com.lywgames.domain.User.selectUser", "李");for (User user : users) {System.out.println(user);}} catch (Exception e) {e.printStackTrace();} finally {if(sqlSession != null) {// 釋放資源sqlSession.close();}}} }6. 查看user表數(shù)據(jù)
7. 運(yùn)行項(xiàng)目
8. 運(yùn)行項(xiàng)目后查看user表數(shù)據(jù)
四. Mybatis架構(gòu)圖
總結(jié)
以上是生活随笔為你收集整理的01_Mybatis入门的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 009_拦截器
- 下一篇: 02_Mybatis动态代理