這篇文章主要為大家展示了“mybatis怎么使用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“mybatis怎么使用”這篇文章吧。
為永嘉等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及永嘉網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為成都網(wǎng)站建設、做網(wǎng)站、永嘉網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
首先來說一下什么是Mybatis,MyBatis 是一款優(yōu)秀的持久層框架,它支持自定義 SQL、存儲過程以及高級映射。MyBatis 免除了幾乎所有的 JDBC 代碼以及設置參數(shù)和獲取結果集的工作。MyBatis 可以通過簡單的 XML 或注解來配置和映射原始類型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 對象)為數(shù)據(jù)庫中的記錄。
下面我們來做個Mybatis的簡單入門(項目使用Idea進行構建)
準備工作,創(chuàng)建對應的數(shù)據(jù)庫和表
create database lagou; create table users(id int primary key, username varchar(20), password varchar(10));
創(chuàng)建一個maven工程
命名mybatis-start
整體項目結構如圖
2.引入mybatis
的jar包,為了方便給實體類創(chuàng)建set/get方法我們引入lombok
工具包,為了方便測試我們引入junit
4.0.0 org.example mybatis-start 1.0-SNAPSHOT MySQL mysql-connector-java 8.0.21 org.mybatis mybatis 3.5.5 org.projectlombok lombok 1.18.12 junit junit 4.12 test
首先我們來創(chuàng)建實體類User@Data
注解可以幫我們自動創(chuàng)建get/set方法,@ToString
注解可以幫我們創(chuàng)建toString方法
@Data @ToString public class User { private Integer id; private String username; private String password; }
創(chuàng)建User 的Mapper接口
里面包含三個方法,兩個查詢,一個添加,如果需要可以自己添加更多方法
public interface IUserDao { ListgetUserList(); User getUserById(Integer userId); void addUser(User user); }
創(chuàng)建User實體的映射文件userMapper.xml
注意
這里resultType我們使用了user這個名字,是因為我們在mybatis的配置文件中起了別名,如果沒有起別用,要使用 User.java
的全路徑
namespace要和我們的IUserDao.java
全路徑一直
標簽select以及insert中的id要和IUserDao.java
中定義的方法名保持一致
insert into users values (#{id}, #{username}, #{password})
創(chuàng)建Mybatis的配置文件sqlMapConfig.xml
這里為了不對數(shù)據(jù)庫配置硬編碼,我們引入了jdbc.properties
配置文件,專門針對jdbc參數(shù)做配置
創(chuàng)建jdbc.properties
配置文件
jdbc.driver=com.mysql.jdbc.Driver jdbc.ur=jdbc:mysql://localhost:3306/lagou jdbc.username=root jdbc.password=root
8.接下來我們創(chuàng)建測試類來進行測試
public class IUserDaoTest { private SqlSession sqlSession; private IUserDao userDao; @Before public void getMapper() { InputStream resourceAsStream = null; try { resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml"); } catch (IOException e) { System.out.println("加載配置失敗"); } SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream); this.sqlSession = sqlSessionFactory.openSession(); this.userDao = sqlSession.getMapper(IUserDao.class); } @Test public void addUser() { User user = new User(); user.setId(1); user.setUsername("lagou"); user.setPassword("123456"); userDao.addUser(user); //提交事務 sqlSession.commit(); } @Test public void getUserList() { ListuserList = userDao.getUserList(); for (User user : userList) { System.out.println(user); } } @Test public void getUserById() { User user = userDao.getUserById(1); System.out.println(user); } }
我們可以先插入一條數(shù)據(jù),然后查詢數(shù)據(jù)是否插入成功
日志正常打印,我們可以看到插入的數(shù)據(jù)已經(jīng)在數(shù)據(jù)庫中了
以上是“mybatis怎么使用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!