网站制作设计教程,用html制作淘宝网页,版式设计素材网站,网站改版 影响google 404跳首页一、SpringBoot单元测试
1.1什么是单元测试
单元测试是指对软件中的最小测试单元进行检查和验证的过程。 执行单元测试就是为了证明某段代码的执行结果是否符合我们的预期。如果测试通过则是符合预期#xff0c;否则测试失败。
1.2单元测试的好处
1.单元测试不用启动Tomca…一、SpringBoot单元测试
1.1什么是单元测试
单元测试是指对软件中的最小测试单元进行检查和验证的过程。 执行单元测试就是为了证明某段代码的执行结果是否符合我们的预期。如果测试通过则是符合预期否则测试失败。
1.2单元测试的好处
1.单元测试不用启动Tomcat 2.如果中途改动了代码在项目打包的时候发现错误因为打包的时候会自动执行测试单元单元测试的错误就会发现。
1.3单元测试的使用
1.3.1生成测试类和方法 1.3.2修改单元测试的类添加单元测试的方法 二、添加的功能
2.1增加用户操作
默认情况下返回的是受影响的行数 1.UserMapper中添加方法接口 2.UserMapper.xml中进行用户添加 3.单元测试
2.2特殊的添加返回自增id 三、修改功能 四、删除
4.1删除功能实现 4.2扩展功能Transactional
单元测试之后将数据进行回滚
五、查询
5.1单表查询多条数据
单条数据的查询在上一篇博客已写 5.1.1 参数占位符#{}和${}
#{}预编译处理 ${}:字符直接替换 #{}预执行sql,不存在安全问题 ${}:直接替换存在安全问题
5.1.2 ${}使用场景
当传递的参数是一个SQL语句时不是某个参数的值则只能使用${}的形式例如传递的是desc或者asc时它是一个SQL语句而不是某一个参数的值
5.1.3 SQL注入问题
sql 注⼊代码“’ or 11” 5.1.4 like查询
1.使用#
//程序最终执行的sql:
select * from userinfo where username like %?%
//替换后在mysql中执行报错select * from userinfo where username like %admin%;2.使用$ 程序正确执行
//将#替换为$执行的语句
select * from userinfo where username like %admin%3.使用MySQL提供的内置函数concat()处理 拼接处理 综上
5.1.5 ResultMap:结果集映射字典
使用场景 1.数据库中字段名和程序中的属性名不一致时只能使用ResultMap才能查询出结果。 2.多表关联查询时一对一、一对多如果不使用ResultMap那么关联的对象将为空查询不出来结果。
5.2、多表查询
5.2.1一对一关系
一篇文章对应一个作者 使用association标签表示⼀对⼀的结果映射
5.2.2一对多关系
一个作者对应多篇文章 使用collection标签表示一对多结果映射