01_Mybatis入门
一. Mybatis介紹
1. MyBatis是一款優秀的持久層框架, 它支持定制化SQL、存儲過程以及高級映射。MyBatis避免了幾乎所有的JDBC代碼和手動設置參數以及獲取結果集。MyBatis可以使用簡單的XML或注解來配置和映射原生信息, 將接口和Java的POJO(Plain Ordinary Java Object, Java實體類)映射成數據庫中的記錄。
2. Mybatis是面向sql的持久層框架, 他封裝了jdbc訪問數據庫的過程, 我們開發, 只需專注于sql語句本身的拼裝, 其它復雜的過程全部可以交給mybatis去完成。
二. Mybatis的使用
1. Mybatis的jar包
2. 在SqlMapConfig.xml配置文件中配置數據庫環境
3. 在SqlMapConfig.xml配置文件中引入映射文件
4. 在UserMapper.xml映射文件中配置命名空間
5. 在UserMapper.xml映射文件中書寫Sql
6. Mysql自增返回配置方式一
7. Mysql自增返回配置方式二
8. Mybatis查詢數據庫代碼
9. Mybatis插入數據庫代碼, 需要主動提交(修改數據庫都需要主動提交)
三. Mybatis入門例子
1. 新建一個名為MybatisRuMen的Java工程, 拷入相關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數據庫配置文件
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);// 構建sqlSessionFactorySqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);// 獲取sqlSessionsqlSession = sqlSessionFactory.openSession();// 第一個參數: 指定statement, 命名空間+"."+statementId// 第二個參數: 指定傳入sql的參數User insertUser = new User("李衛", "男", new Date(System.currentTimeMillis()), "河南省鄭州市");int result = sqlSession.insert("com.lywgames.domain.User.insertUser2", insertUser);System.out.println("插入操作影響行數:" + result);System.out.println(insertUser);// 寫操作, 需要提交事務。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表數據
7. 運行項目
8. 運行項目后查看user表數據
四. Mybatis架構圖
總結
以上是生活随笔為你收集整理的01_Mybatis入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 009_拦截器
- 下一篇: 02_Mybatis动态代理