當前位置:
首頁 > 知識 > mybatis 詳解(三)------入門實例(基於註解)

mybatis 詳解(三)------入門實例(基於註解)

1、創建MySQL資料庫:mybatisDemo和表:user2、建立一個Java工程,並導入相應的jar包,具體目錄如下3、在 MyBatisTest 工程中添加資料庫配置文件 mybatis-configuration.xml4、定義表所對應的實體類5、定義操作 user 表的註解介面 UserMapper.java

package com.ys.annocation;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import com.ys.po.User;

public interface UserMapper {
//根據 id 查詢 user 表數據
@Select("select * from user where id = #{id}")
public User selectUserById(int id) throws Exception;

//向 user 表插入一條數據
@Insert("insert into user(username,sex,birthday,address) value(#{username},#{sex},#{birthday},#{address})")
public void insertUser(User user) throws Exception;

//根據 id 修改 user 表數據
@Update("update user set username=#{username},sex=#{sex} where id=#{id}")
public void updateUserById(User user) throws Exception;

//根據 id 刪除 user 表數據
@Delete("delete from user where id=#{id}")
public void deleteUserById(int id) throws Exception;

}

6、向 mybatis-configuration.xml 配置文件中註冊 UserMapper.java 文件

mybatis 詳解(三)------入門實例(基於註解)

<mappers>
<mapper class="com.ys.annocation.UserMapper"/>
</mappers>

7、創建測試類

package com.ys.test;

import java.io.InputStream;

import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Before;
import org.junit.Test;

import com.ys.annocation.UserMapper;
import com.ys.po.User;

public class UserAnnocationTest {
//定義 SqlSession
SqlSession session =null;

@Before
public void init{
//定義mybatis全局配置文件
String resource = "mybatis-configuration.xml";
//載入 mybatis 全局配置文件
InputStream inputStream = CRUDTest.class.getClassLoader
.getResourceAsStream(resource);
//構建sqlSession的工廠
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder.build(inputStream);
//根據 sqlSessionFactory 產生 session
session = sessionFactory.openSession;
}

//註解的增刪改查方法測試
@Test
public void testAnncationCRUD throws Exception{
//根據session獲取 UserMapper介面
UserMapper userMapper = session.getMapper(UserMapper.class);
//調用selectUserById方法
User user = userMapper.selectUserById(1);
System.out.println(user);

//調用 insertUser 方法
User user1 = new User;
user1.setUsername("aliks");
user1.setSex("不詳");
userMapper.insertUser(user1);

//調用 updateUserById 方法
User user2 = new User;
user2.setId(6);
user2.setUsername("lbj");
userMapper.updateUserById(user2);

//調用 方法
userMapper.deleteUserById(6);

session.commit;
session.close;
}
}

注意:註解配置我們不需要 userMapper.xml 文件了

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 達人科技 的精彩文章:

spring boot 項目筆記2一自定義配置文件的讀取
Linux常用命令——顯示文件列表
es6系列教程-函數的默認參數詳解
AVR開發 Arduino方法(一)埠子系統

TAG:達人科技 |

您可能感興趣

jQuery UI 實例-縮放(Resizable)
jQuery UI 實例-選擇(Selectable)
jQuery UI 實例-放置(Droppable)
Vue.js 2.0從入門到放棄-入門實例(二)
jQuery UI 實例-日期選擇器(Datepicker)
Vue.js2.0從入門到放棄-入門實例(一)
jQuery UI 實例-對話框(Dialog)
實例分割的進階三級跳:從 Mask R-CNN 到 Hybrid Task Cascade
jQuery UI 實例-自動完成(Autocomplete)
jQuery UI 實例-摺疊面板(Accordion)
Ember.js-對象篇 類和實例的續定義
詳解Linux命令-sed語法和實例講解
如何利用wpscan入侵WordPress-實例演示
AWS為其Snowball Edge及EC2增加新實例
VBScript 實例
jQuery Mobile 實例
Python可視化:顏色 圖例 實例(matplotlib餅狀圖)總結
由西雲數據運營的 AWS 中國區域現提供 Amazon EC2 P3 實例
毒物/Triumph Street Twin改裝Rizoma套件實例
Web Service 實例