zoukankan      html  css  js  c++  java
  • 【转】 mybatis 详解(三)------入门实例(基于注解)

    【转】 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 文件了  

  • 相关阅读:
    Burp Suite Professional单文件精简版该如何使用?
    快速掌握WinDBG
    Baymax大白补丁打油诗
    学员达标后完成的作业
    5星命名法:掌握这个软件全省
    挖掘IDA不可缺少的插件
    JEB安装和使用视频教程系列
    Ollydbg/x32dbg/x64dbg堆栈回溯要点总结
    Ollydbg狩猎从入门到精通
    Ollydbg/x32dbg爆破与逆向八法
  • 原文地址:https://www.cnblogs.com/Javastudy-note/p/13806395.html
Copyright © 2011-2022 走看看