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


1、創建MySQL數據庫:mybatisDemo和表:user

  詳情參考:mybatis 詳解(二)------入門實例(基於XML) 一致

 

2、建立一個Java工程,並導入相應的jar包,具體目錄如下

   詳情參考:mybatis 詳解(二)------入門實例(基於XML) 一致

 

3、在 MyBatisTest 工程中添加數據庫配置文件 mybatis-configuration.xml

   詳情參考:mybatis 詳解(二)------入門實例(基於XML) 一致

 

4、定義表所對應的實體類

   詳情參考:mybatis 詳解(二)------入門實例(基於XML) 一致

 

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 文件了  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM