MyBatis-注解的方式实现接口声明的方法

基本说明:        

        说明:我们可以将MonsterMapperjava接口方法在对应的MonsterlMapper.xml文件中实现外,也可以直接组织MonsterMappere.java接口中声明的方法,直接使用注解来实现,可以作为一种补充的机制在项目中使用.

1、编写了 MonsterAnnotation.java 接口


public interface MonsterAnnotation {
    @Insert("INSERT INTO mybatis_monster_ (monster_id,age,birthday,email,gender,name,salary)\n" +
            "        VALUES (#{monster_id},#{age},#{birthday},#{email},#{gender},#{name},#{salary})")
    public void addMonster(Monster monster);
        @Delete("DELETE FROM mybatis_monster_ WHERE monster_id=#{monster_id}")
    public void delMonster(Integer monster_id);
    @Update(" UPDATE mybatis_monster_ SET age=#{age},birthday=#{birthday},email=#{email},gender=#{gender},name=#{name},salary=#{salary}\n" +
            "        WHERE monster_id=#{monster_id}")
    public  void updateMonster(Monster monster);
    @Select("SELECT * FROM mybatis_monster_ WHERE monster_id=#{monster_id}")
    public Monster findById(Integer monster_id);
    @Select("SELECT * FROM mybatis_monster_")
    public List<Monster> findAllMonster();
}

2、将Monster.Annotation 注册到mybatis-config.xml文件中

 <mappers>
<!--        这里引入或者说注册我们的MonsterMapper.xml文件-->
        <mapper resource="com/bin/mybatis/mapper/MonsterMapper.xml"/>
        <mapper class="com.bin.mybatis.mapper.MonsterAnnotation"/>
<!--        <package name="com.bin.mybatis.mapper"/>-->

    </mappers>

3、测试

  @Test
    public void testAnotation() {
        Monster monster = new Monster();

        monster.setAge(200);
        monster.setBirthday(new Date());
        monster.setEmail("123@qq.com");
        monster.setGender(1);
        monster.setSalary(8928.00);
        monster.setName("大树精");

        MonsterAnnotation annotation = sqlsession.getMapper(MonsterAnnotation.class);
        annotation.addMonster(monster);

    }

相关推荐

  1. MyBatis-注解方式实现接口声明方法

    2024-01-02 01:58:02       68 阅读
  2. Spring Boot顶层接口实现注入项目方法

    2024-01-02 01:58:02       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-02 01:58:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-02 01:58:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-02 01:58:02       82 阅读
  4. Python语言-面向对象

    2024-01-02 01:58:02       91 阅读

热门阅读

  1. C++判定终端ip和目标ip是否在同一局域网内

    2024-01-02 01:58:02       39 阅读
  2. SpringBoot 整合 JWT

    2024-01-02 01:58:02       55 阅读
  3. Router 面试题及答案

    2024-01-02 01:58:02       56 阅读
  4. LeetCode——链表

    2024-01-02 01:58:02       56 阅读
  5. centos 编译安装 git

    2024-01-02 01:58:02       59 阅读
  6. codeforces 118 div2(a,b,c)

    2024-01-02 01:58:02       59 阅读
  7. 28 Singleton Object in UVM

    2024-01-02 01:58:02       52 阅读