zoukankan      html  css  js  c++  java
  • 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 文件了  

  • 相关阅读:
    在R语言中轻松创建关联网络
    在R语言中显示美丽的数据摘要summary统计信息
    R语言中不同类型的聚类方法比较
    R语言中的划分聚类模型
    R语言解释生存分析中危险率和风险率的变化
    Stata估算观测数据的风险比
    Stata 中Mata的st_view函数
    R语言多臂试验
    R语言使用倾向评分提高RCT(随机对照试验)的效率
    R语言在RCT中调整基线时对错误指定的稳健性
  • 原文地址:https://www.cnblogs.com/ysocean/p/7282639.html
Copyright © 2011-2022 走看看