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

基本说明:

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

1、编写了 MonsterAnnotation.java 接口

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

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、测试

java 复制代码
  @Test
    public void testAnotation() {
        Monster monster = new Monster();

        monster.setAge(200);
        monster.setBirthday(new Date());
        monster.setEmail("[email protected]");
        monster.setGender(1);
        monster.setSalary(8928.00);
        monster.setName("大树精");

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

    }
相关推荐
Seven9728 分钟前
剑指offer-3、从尾到头打印链表
java
chanalbert32 分钟前
SpringBoot设计基石:约定优于配置与模块化架构
spring boot·spring·spring cloud
江小北42 分钟前
今天去面试了,遇到一个面试题,spring单例bean是线程安全的吗?
java·后端·spring
天天摸鱼的java工程师42 分钟前
设计一个多租户 SaaS 系统,如何实现租户数据隔离(数据库级别 / 表级别)与资源配额控制?
java·后端·面试
llwszx1 小时前
一文解决Servlet、Tomcat与HttpServletRequest
java·servlet·tomcat·httpreque
看她闹~2 小时前
javacv添加字幕 剧中显示
java·javacv·字幕
风象南3 小时前
Spring Boot 的 3 种动态 Bean 注入技巧
java·spring boot·后端
移动开发者1号3 小时前
Kotlinx序列化多平台兼容性详解
android·java·kotlin
东阳马生架构12 小时前
商品中心—6.商品考核系统的技术文档
java
晴空月明12 小时前
Java 内存模型与 Happens-Before 关系深度解析
java