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 文件
<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 文件了
![](https://pic.pimg.tw/zzuyanan/1488615166-1259157397.png)
![](https://pic.pimg.tw/zzuyanan/1482887990-2595557020.jpg)
※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 實例