[springboot] 搭建项目及单元测试
本文纯属记录自己学习的过程以及相关使用操作,使用工具Idea2018。
1.创建项目:



-- 目录结构

2.配置文件

3.pom文件

4.创建测试类并启动项目
package com.zr.demo.Controller; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; /**
* @Author: Hujh
* @Date: 2019/7/16 9:32
* @Description: 项目测试控制器
*/
@RestController
@RequestMapping("test")
public class TestController { /**
* @Title: get
* @Author : Hujh
* @Date: 2019/7/16 10:10
* @Description : 测试方法
* @param :
* @Return : java.lang.String
*/
@RequestMapping("get")
public String get(){
return "测试返回数据";
} /**
* @Title: getByParams
* @Author : Hujh
* @Date: 2019/7/16 10:11
* @Description : 测试带参方法
* @param : id
* @param : name
* @Return : java.lang.String
*/
@RequestMapping("getByParams")
public String getByParams(@RequestParam Integer id, String name){
StringBuilder sb = new StringBuilder();
sb.append(id);
sb.append("---");
sb.append(name);
return sb.toString();
}
}
5.访问接口,查看返回结果

进行单元测试:(使用 mockmvc 进行)
1.创建测试类
package com.zr.demo; import com.zr.demo.Controller.TestController;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.client.match.MockRestRequestMatchers;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MockMvcBuilder;
import org.springframework.test.web.servlet.ResultActions;
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.result.MockMvcResultHandlers;
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
import org.springframework.test.web.servlet.setup.MockMvcBuilders; /**
* @Author: Hujh
* @Date: 2019/7/16 9:38
* @Description:
*/
@RunWith(SpringRunner.class)
@org.springframework.boot.test.context.SpringBootTest
public class SpringBootTest { private Logger logger = LoggerFactory.getLogger(SpringBootTest.class); private MockMvc mockMvc; @Autowired
private TestController testController; @Before
public void setUp(){
logger.info("------初始化执行");
mockMvc = MockMvcBuilders.standaloneSetup(testController).build();
} /**
* @Title: test
* @Author : Hujh
* @Date: 2019/7/16 9:46
* @Description : 测试方法
* @param :
* @Return : void
*/
@Test
public void test() throws Exception {
MockHttpServletRequestBuilder requestBuilder = MockMvcRequestBuilders.get("/test/getByParams")
.accept(MediaType.APPLICATION_JSON,MediaType.APPLICATION_JSON_UTF8)//请求数据格式
.contentType(MediaType.APPLICATION_JSON)//接受所用数据格式
.param("id","123")
.param("name","小张三"); // 执行请求
ResultActions result = mockMvc.perform(requestBuilder); //结果解析
result.andExpect(MockMvcResultMatchers.status().isOk()) // 执行状态
// .andExpect(MockMvcResultMatchers.jsonPath("name").value("张三")) //期望值
.andDo(MockMvcResultHandlers.print()) // 打印
.andReturn(); // 返回
} }
2.启动test方法,查看返回结果


总结
使用 Spring Boot 可以非常方便、快速搭建项目,使我们不用关心框架之间的兼容性,适用版本等各种问题,我们想使用任何东西,仅仅添加一个配置就可以,所以使用 Spring Boot 非常适合构建微服务。
[springboot] 搭建项目及单元测试的更多相关文章
- springboot web项目的单元测试
不废话,直接上代码. //// SpringJUnit支持,由此引入Spring-Test框架支持! @RunWith(SpringJUnit4ClassRunner.class) //// 指定我们 ...
- springboot搭建项目,实现Java生成随机图片验证码。
这篇文章主要介绍了如何通过Java如何生成验证码并验证.验证码的作用我想必大家都知道,话不多说开始实施! 首先创建一个springboot项目以下是项目结构,内有utli工具类.存放生成图片验证码方法 ...
- @Springboot搭建项目controller层接收json格式的对象失败
今天在使用swagger2测试的时候出错 1.@requestBody注解常用来处理content-type不是默认的application/x-www-form-urlcoded编码的内容,比如说: ...
- SpringBoot(一)_快速实战搭建项目
现在在学习springboot 相关的知识,感觉真的很好用,用idea 进行开发,根据慕课网和纯洁的微笑的课程.进行总结下. 使用idea创建springboot项目 (1)单击 File | New ...
- Springboot搭建SSM+JSP的web项目
Springboot搭建SSM+JSP的web项目 一:创建项目结构: 项目结构分为三个部分: 1 后端项目开发文件: 包: Util 工具包 Mapper db层 Serv ...
- 手把手教你从零开始搭建SpringBoot后端项目框架
原料 新鲜的IntelliJ IDEA.一双手.以及电脑一台. 搭建框架 新建项目 打开IDE,点击File -> New Project.在左侧的列表中的选择Maven项目,点击Next. 填 ...
- springBoot 搭建web项目(前后端分离,附项目源代码地址)
springBoot 搭建web项目(前后端分离,附项目源代码地址) 概述 该项目包含springBoot-example-ui 和 springBoot-example,分别为前端与后端,前后端 ...
- springboot成神之——springboot+mybatis+mysql搭建项目简明demo
springboot+mybatis+mysql搭建项目简明demo 项目所需目录结构 pom.xml文件配置 application.properties文件配置 MyApplication.jav ...
- springboot搭建web项目(转)
转:http://blog.csdn.net/linzhiqiang0316/article/details/52589789 这几天一直在研究IDEA上面怎么搭建一个web-mvc的SpringBo ...
随机推荐
- D7下FastMM的使用
原文出处:http://hi.baidu.com/showwindows/blog/item/5b7ac601c487c605728da573.html FastMM 快速MM:-),在D2006和2 ...
- DUI-Windows消息机制要点(34篇)
[隐藏] 1窗口过程概念 2消息类型 2.1系统定义消息 2.1.1窗口消息 2.1.2命令消息 2.1.3控件通知消息 2.1.4程序定义消息 3消息队列 3.1系统消息队列 3.2线程消息队列 4 ...
- 事务 ( 进程 ID 60) 与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品
Select * FROM [TableName] With(NoLock) .....
- JAVA 拼接了一个sql 语句,但是最后运行报错——SQL 命令未正确结束
错误原因: 拼接的时候因为引号里的部分是直接引起来的,所以将这些语句整个拼接起来的时候就会成为一个“没有断句”的sql语句,如下面我的错误 将整句话拼接起来就相当于 select * from B ...
- 3012C语言_数据
第二章 数据 2.1 数据类型 2.1.1 数据类型决定 1. 数据占内存字节数 2. 数据取值范围 3. 其上可进行的操作 2.2基本数据类型 2.2.1分类 基本类型 类型 符号 关键字 字节 1 ...
- Spark学习之路(十四)—— Spark Streaming 基本操作
一.案例引入 这里先引入一个基本的案例来演示流的创建:获取指定端口上的数据并进行词频统计.项目依赖和代码实现如下: <dependency> <groupId>org.apac ...
- Mysql索引优化之索引的分类
Mysql的历史 简单回顾一下Mysql的历史,Mysql 是一个关系型数据库管理系统,由瑞典 Mysql AB 公司开发,目前属于 Oracle 公司.关系型数据库将数据保存在不同的表中,而不是将 ...
- 学习体验centos7 下根目录扩容操作(步骤详细!!!)
转自 苗尼玛乔 感谢你!
- C# 死锁 Task/AutoResetEvent
与之前<C# 死锁 TaskCompletionSource>类似,还有很多死锁的案例 使用Task异步转同步时,使用不当造成的死锁 private void Task_OnClick(o ...
- Java并发框架:Executor
介绍 随着当今处理器中可用的核心数量的增加, 随着对实现更高吞吐量的需求的不断增长,多线程 API 变得非常流行. Java 提供了自己的多线程框架,称为 Executor 框架. 1. Execut ...