本文主要是介绍【JavaWeb】Day47.Mybatis基础操作——删除,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Mybatis基础操作
需求
- 准备数据库表 emp
- 创建一个新的springboot工程,选择引入对应的起步依赖(mybatis、mysql驱动、lombok)
- application.properties中引入数据库连接信息 创建对应的实体类 Emp(实体类属性采用驼峰命名)
- 准备Mapper接口 EmpMapper
@Mapper注解:表示当前接口为mybatis中的Mapper接口
程序运行时会自动创建接口的实现类对象(代理对象),并交给Spring的IOC容器管理
删除
实现前端页面的删除操作时,前端页面会给服务端传递一个参数,也就是该行数据的ID。 我们接收到ID后,根据ID删除数据即可。
功能:根据主键删除数据
例如:删除ID=17的数据
@Delete("delete from emp where id = 17")
public void delete();
以上delete操作的SQL语句中的id值写成固定的17,就表示只能删除id=17的用户数据。
SQL语句中的id值不能写成固定数值,需要变为动态的数值。
解决方案:在delete方法中添加一个参数(用户id),将方法中的参数,传给SQL语句。
@Delete("delete from emp where id = #{id}")//使用#{key}方式获取方法中的参数值public void delete(Integer id);
@Delete注解:用于编写delete操作的SQL语句
如果mapper接口方法形参只有一个普通类型的参数,#{…} 里面的属性名可以随便写,如:#{id}、#{value}。但是建议保持名字一致。
测试:
在单元测试类中通过@Autowired注解注入EmpMapper类型对象
~~~java
@SpringBootTest
class SpringbootMybatisCrudApplicationTests {@Autowired //从Spring的IOC容器中,获取类型是EmpMapper的对象并注入private EmpMapper empMapper;@Testpublic void testDel(){//调用删除方法empMapper.delete(16);}
}
~~~
这篇关于【JavaWeb】Day47.Mybatis基础操作——删除的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!