小新*

导航

 

7.1面向接口编程

1.注解在接口上实现

@Select("select * from user")
List<User> getUsers();

2.需要在核心配置文件中绑定接口

<!--绑定接口-->
<mappers>
    <mapper class="com.kuang.dao.UserMapper"/>
</mappers>

3.测试

本质:反射机制实现

底层:动态代理

7.2CRUD(注解的增删查改)

我们可以在工具流创建的时候自动提交事务,手动提交事务即commit()方法。

在工具类中使用

public static SqlSession getSqlSession() {
//创建一个可以执行的sql对象
    return  sqlSessionFactory.openSession(true);
}

编写接口,增加注解(对于注解声明的变量名,优先使用注解的变量名)


    @Select("select * from user")
    List<User> getUsers();

    //方法存在多个参数,参数的前面必须加上@Param("id")注解
    //从param中去取参数,并以此为准
    @Select("select *from user where id=#{id}")
    User getUserById(@Param("id")int id);

    @Insert("insert into user(id,name,pwd) values (#{id},#{name},#{password})")
    int addUser(User user);

    @Update("update user set name=#{name},pwd=#{password} where id=#{id}")
    int updateUser(User user);

    @Delete("delete from user where id=#{id} ")
    int deleteUser(@Param("id") int id);



测试类

我们必须要将接口注册到我们的核心配置文件当中

关于@Param()注解:

  • 基本类型的参数或者String类型的参数,需要加上
  • 引用类型不需要加
  • 如果只有一个基本类型的话,可以忽略,但是建议大家都加上
  • 我们在SQL中引用的就是我们在这里的@Param(“uid:)中设定的属性。
posted on 2022-12-01 19:36  小新*  阅读(59)  评论(0)    收藏  举报