编辑
2022-09-27
项目分享
00

实现前端页面效果的方式,通过js的方式引入即可

1.引入sakana动态人物

image.png

<!-- 实现sakana动态人物 --> <div id="sakana-widget" style="position: fixed;bottom: 20px;right:40px;"></div> <script> function initSakanaWidget() { new SakanaWidget({ autoFit: true }) .setState({ i: 0.001, d: 1 }) .mount("#sakana-widget"); } </script> <script async onload="initSakanaWidget()" src="https://cdn.jsdelivr.net/npm/sakana-widget@2.2.2/lib/sakana.min.js" ></script>
编辑
2022-09-24
项目分享
00

使用的项目是Adguard Home 🍉

在介绍使用说明前先需要备案过的域名以及一台云服务器,最低配置即可如1核2g的服务器都可以

注意事项:

  • 域名和服务器最好是一个云服务商,会比较方便,不然很麻烦
  • 很多服务商都会出优惠,多看看哪个便宜用哪个
  • 博主用的是阿里云,但是我觉得腾讯云布局更加直观

1. 第一步安装宝塔面板

给服务器初始化的时候选择7.x版的centos,博主用的是7.9版本,然后进入宝塔面板官网,点击脚本在线安装,就可以输入你的服务器公网ip一键操作,这个密码是初始化服务器的时候自己设置的,如果你不知道或者忘记了,那就进入服务器的控制台重新初始化一下 image.png

编辑
2022-09-24
遇到的问题
00

多个表使用union时,又进行order by 排序会出数据顺序的位置错乱

所以需要在第二张表开始,对最后排序的字段进行起别名如oper_time 改成oper_time1等

编辑
2022-07-20
实用工具
00

意义

在时间允许的情况下,编写单元测试是程序员对代码的自测,这是对自己代码的负责。 写单元测试的两个动机:

  1. 保证或验证实现功能。
  2. 保护已经实现的功能不被破坏。

引入依赖

java
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency>

Controller层测试

对Controller层(API)做测试,这时候就用到MockMvc了,它使得你无需启动项目工程就能测试这些接口

MockMvc实现了对Http请求的模拟,能够直接使用网络的形式,转换到Controller的调用,这样可以使得测试速度快、不依赖网络环境,而且提供了一套验证的工具,这样可以使得请求的验证统一而且很方便。 基本步骤

  1. mockMvc.perform执行一个请求。
  2. MockMvcRequestBuilders.get(“XXX”)构造一个请求。
  3. ResultActions.param添加请求传值
  4. ResultActions.accept()设置返回类型
  5. ResultActions.andExpect添加执行完成后的断言。
  6. ResultActions.andDo添加一个结果处理器,表示要对结果做点什么事情,比如处使用print()输出整个响应结果信息。
  7. ResultActions.andReturn表示执行完成后返回相应的结果。
java
import com.alibaba.fastjson.JSON; import com.lhw.entity.TestEntity; import com.lhw.request.Request; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.MvcResult; import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.test.web.servlet.result.MockMvcResultMatchers; import org.springframework.test.web.servlet.setup.MockMvcBuilders; @RunWith(SpringRunner.class) @SpringBootTest public class CatalogHealthInsuranceControllerTest { @Autowired private org.springframework.web.context.WebApplicationContext context; private MockMvc mvc; @Before public void setUp() throws Exception { mvc = MockMvcBuilders.webAppContextSetup(context).build(); } @Test public void getTransferList() throws Exception { Request request = new Request(); request.setPatientId("123123"); request.setVisitId("123123"); String strJson = JSON.toJSONString(request); System.out.println(strJson); MvcResult result = mvc.perform(MockMvcRequestBuilders.post("/catalog/getTransferList") .contentType(MediaType.APPLICATION_JSON) .content(strJson) ) .andExpect(MockMvcResultMatchers.status().isOk()) .andExpect(MockMvcResultMatchers.content().contentType(MediaType.APPLICATION_JSON)) .andReturn(); result.getResponse().setCharacterEncoding("UTF-8"); System.out.println(result.getResponse().getContentAsString()); } }

解释:

  1. mockMvc.perform:执行一个请求

  2. MockMvcRequestBuilders.get(“/XXX/get”):构造一个请求,Post请求使用.post方法

  3. contentType(MediaType.APPLICATION_JSON):代表发送端发送的数据格式是application/json;charset=UTF-8

  4. content(strJson) 向接口传递的内容

  5. ResultActions.andExpect(MockMvcResultMatchers.status().isOk()):方法看请求的状态响应码是否为200如果不是则抛异常,测试不通过

  6. andExpect(MockMvcResultMatchers.content().contentType(MediaType.APPLICATION_JSON)) 判断返回值是否是json格式,因为我们接口已经规定了

  7. andReturn() 它会返回一个MvcResult对象,该对象包含了请求和响应的相关信息,例如请求参数、响应状态、响应内容等。我们可以通过调用MvcResult对象的各种方法来获取这些信息

编辑
2021-12-03
实用工具
00

简介

JDBC作为Java访问数据库的API规范,统一了各种数据库的访问方式。但是,直接在Java程序中使用JDBC还是非常复杂和繁琐的。所以Spring对JDBC进行了更深层次的封装,而JdbcTemplate就是Spring提供的一个操作数据库的便捷工具。它主要是实现了数据库连接的管理,我们可以借助JdbcTemplate来执行所有数据库操作,例如插入、更新、删除和从数据库中检索数据,并且有效避免直接使用JDBC带来的烦琐编码。

Spring Boot作为Spring的集大成者,自然会将JdbcTemplate集成进去。Spring Boot针对JDBC的使用提供了对应的Starter包:spring-boot-starter-jdbc,它其实就是在Spring JDBC上做了进一步的封装,方便在 Spring Boot 项目中更好地使用JDBC。

1.JdbcTemplate的特点

速度快,相对于ORM框架,JDBC的方式是最快的。 配置简单,Spring封装的,除了数据库连接之外,几乎没有额外的配置。 使用方便,就像DBUtils工具类,只需注入JdbcTemplate对象即可。

2.JdbcTemplate的几种类型的方法 JdbcTemplate虽然简单,功能却非常强大。它提供了非常丰富、实用的方法,归纳起来主要有以下几种类型的方法:

  • execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句。
  • update、batchUpdate方法:用于执行新增、修改与删除等语句。
  • query和queryForXXX方法:用于执行查询相关的语句。
  • call方法:用于执行数据库存储过程和函数相关的语句。

总的来说,新增、删除与修改三种类型的操作主要使用update和batchUpdate方法来完成。query和queryForObject方法中主要用来完成查询功能。execute方法可以用来执行任意的SQL、call方法来调用存储过程。