测试controller 接口

测试controller 接口

spring boot 引入测试jar包

1
2
3
4
5
6
7
8
9
10
11
<!-- spring 测试 包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- spring boot web 组件-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

创建测试类

创建一个MockMvc进行测试

1
2
3
4
5
6
private MockMvc mvc;
@Before
public void setUp() throws Exception {
mvc = MockMvcBuilders.standaloneSetup(new HelloContrller()).build();
}

具体测试方法

1
2
3
4
5
6
7
8
9
10
@Test
public void testView() throws Exception {
MvcResult result = mockMvc.perform(MockMvcRequestBuilders.get("/user/1"))
.andExpect(MockMvcResultMatchers.view().name("user/view"))
.andExpect(MockMvcResultMatchers.model().attributeExists("user"))
.andDo(MockMvcResultHandlers.print())
.andReturn();
Assert.assertNotNull(result.getModelAndView().getModel().get("user"));
}
详解:
1、mockMvc.perform执行一个请求;
2、MockMvcRequestBuilders.get("/user/1")构造一个请求
3、ResultActions.andExpect添加执行完成后的断言
4、ResultActions.andDo添加一个结果处理器,表示要对结果做点什么事情,比如此处使用MockMvcResultHandlers.print()输出整个响应结果信息。
5、ResultActions.andReturn表示执行完成后返回相应的结果。
分享到 评论

mysql 初始化

创建用户

1
2
3
4
5
6
CREATE USER 'juedefansi'@'' IDENTIFIED BY 'juedefansi';
GRANT GRANT OPTION ON *.* TO 'juedefansi'@'';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'juedefansi'@'';

创建数据库

1
2
```
## 创建表

```

分享到 评论

mysql url 连接参数

mysql url 连接参数

示例

1
2
3
jdbc.url=jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=TRUE
jdbc.username=root
jdbc.password=password

mysql JDBC URL格式如下:

1
jdbc:mysql://[host:port],[host:port].../[database][?参数名1][=参数值1][&参数名2][=参数值2]...

基本参数

  1. user 数据库用户名(用于连接数据库) 所有版本
  2. passWord 用户密码(用于连接数据库) 所有版本
  3. useUnicode 是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true false 1.1g
  4. characterEncoding 当useUnicode设置为true时,指定字符编码。比如可设置为gb2312或gbk false 1.1g
  5. autoReconnect 当数据库连接异常中断时,是否自动重新连接? false
  6. autoReconnectForPools 是否使用针对数据库连接池的重连策略 false
  7. failOverReadOnly 自动重连成功后,连接是否设置为只读? true
  8. maxReconnects autoReconnect设置为true时,重试连接的次数
  9. initialTimeout autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒
  10. connectTimeout 和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,适用于JDK 1.4及更高版本 0
  11. socketTimeout socket操作(读写)超时,单位:毫秒。 0表示永不超时 0
  12. allowMultiQueries 当此值设置为true时,mybatis 中支持出现分号(;)
引用

关于MySql链接url参数的设置

分享到 评论

项目中经常使用到的jar包

项目中使用到的jar包

在项目中使用到的jar包,会找

lombok 自动生成getter setter toString

[lomboc 官网地址,内含文档](https://projectlombok.org/features/index.html)
1
2
3
4
5
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<!--<version>1.16.14</version>-->
</dependency>

apache commons-lang 工具包

1
2

apache commons-io 工具包

1
2
分享到 评论