springboot遇见问题总结
今天开始学习创建springboot项目
问题1:
产生异常:

创建项目目录:

demo代码:
代码Controller
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; /**
* Created by andyliu on 2018/10/3.
*/
@RestController
public class LoginController { @RequestMapping(value = "/login")
public String login(){
return "success1";
}
}
测试用例采用mockMvc实现单元测试用例 mockmvc是mvc单元测试用例对象 preform(英文执行的意思)方法执行方法内部需要一个MockMvcRequestBuilders对象
MockRequestBuilders对象用来构建mockmvc的通过get方法模拟浏览器发送的get请求get方法参数为url请求地址,同时accept方法参数为指定接收的媒体类型为什么
andExpect方法为期望方法 也就是说该方法是我们期望的预期值 内部传入status()方法是对返回的状态判断通过isOk判断状态是否正确 同时可以添加多个期望比如期望内容 通过content()方法返回内容调用string()方法内容通过equalTo()方法来比较返回值内容是否相等。
@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
public class LoginTest { @Autowired
private MockMvc mockMvc; @Test
public void loginTest() throws Exception {
mockMvc.perform(MockMvcRequestBuilders.get("/login").accept(MediaType.APPLICATION_JSON))
.andExpect(status().isOk())
.andExpect(content().string(equalTo("success")));
}
}
当执行测试用例的时候这样会报出上面的错误。
为什么采用mackmvc来进行单元测试那,这样可以不通过创建httpClient来创建客户端请求 同时避免了由于网络等各种原因导致的测试问题
那么上面的异常产生原因是什么那:
在阐述上面的问题原因之前 在我说一下这个问题在使用测试用例之前就出现了 那就是创建好springboot项目后采用浏览器访问localhost:8080/login 无法访问创建好的方法。以前创建过一直认为这样写没有错误,没错代码是没有任何问题的。问题产生原因是????
答案:
springboot创建同时会创建一个启动类 因为springboot内部集成了tomcat等应用服务器 测试中也同样创建了这样一个启动类
@SpringBootApplication
public class SBootDemoApplication { public static void main(String[] args) {
SpringApplication.run(SBootDemoApplication.class, args);
}
}
springboot启动类要放在根目录下,网上都说根目录,按我说就是你所有代码的上一级目录,可以让启动类在启动的时候扫描到所有的类
正确的操作如图就解决了这个问题

springboot遇见问题总结的更多相关文章
- 学习SpringBoot中遇见的坑
1. 在搭建SpringBoot HelloWorld 时项目结构应该这样: 而不能这样: 否则访问时出现错误页面: 原因:此时还不知道,先记录下来. --已解决2018/12/11,因为Spring ...
- Springboot集成Common模块中的的全局异常处理遇见的问题
由于项目公共代码需要提取一个common模块,例如对于项目的文件上传,异常处理等,本次集成common代码时候maven引入common的全局异常处理代码之后发现不生效,由于common包路径与自己的 ...
- springboot+vue+element:echarts开发遇见问题---后端sql(三)
<select id="getSumRequestRankingCount" parameterType="java.lang.String" resul ...
- springboot+vue+element:echarts开发遇见问题---vue前端(二)
<template> <u-grid> <u-grid-item caption="服务使用统计排行"> <div class=" ...
- (一)SpringBoot基础篇- 介绍及HelloWorld初体验
1.SpringBoot介绍: 根据官方SpringBoot文档描述,BUILD ANYTHING WITH SPRING BOOT (用SPRING BOOT构建任何东西,很牛X呀!),下面是官方文 ...
- springboot添加多数据源连接池并配置Mybatis
springboot添加多数据源连接池并配置Mybatis 转载请注明出处:https://www.cnblogs.com/funnyzpc/p/9190226.html May 12, 2018 ...
- ideal中把项目打成war包,并放在tomcat运行,遇见的问题。。。
先说下我遇见的问题吧:最近做项目要把项目放在tomcat上运行,用的springboot框架, 在建项目时选择的是 jar包,项目写完要部署打包是,在pom中虽然把包改成了war ,可是每次放入to ...
- SpringBoot多模块项目打包问题
项目结构图如下: 在SpringBoot多模块项目打包时遇见如下错误: 1.repackage failed: Unable to find main class -> [Help 1] 解决步 ...
- SpringBoot系列九:SpringBoot服务整合(整合邮件服务、定时调度、Actuator监控)
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 1.概念:SpringBoot 服务整合 2.背景 在进行项目开发的时候经常会遇见以下的几个问题:需要进行邮件发送.定时的任务调 ...
随机推荐
- sharepoint 2010 FieldLookup 的更新方法
网上有,但是是错误的,稍微改一下,就可以了 第一个方法是要更新的item,其中 _fieldname 为要更新的lookup字段名字,_lookupValue为要更新的值. public void S ...
- Azure CDN:氮气加速已开启,司机们请做好准备
在上一周,我们向各位小伙伴介绍了通过 Azure CDN 高级版服务为 HTTPS 应用加速的做法,漏掉的小伙伴可以点击这里穿越回去补课哦.那我们今天讲点什么呢?当然是 CDN 最重要的价值:改善应用 ...
- nvd3基于时间轴流程图
doc http://nvd3-community.github.io/nvd3/examples/documentation.html https://github.com/mbostock/d3/ ...
- 爬虫技术框架——Heritrix
Heritrix是一个由Java开发的开源Web爬虫系统,用来获取完整的.精确的站点内容的深度复制, 具有强大的可扩展性,运行开发者任意选择或扩展各个组件,实现特定的抓取逻辑. 一.Heritrix介 ...
- 安卓手机下载YouTube视频的3种方法
作为全球最大的在线视频网站,YouTube上面的内容可真是应有尽有啊,从教学视频到个人手工艺品制作流程,从各种搞笑视频到电视连续集等等,包罗万象.如果你想下载YouTube视频到电脑上面的话,网上有很 ...
- jrtplib源码分析 第一篇 jthread的编译与分析
第一篇 jthread的编译与分析 jrtplib代码依赖库jthread,因此先从jthread开始jrtplib的学习.首先从以下链接下载jthread的源代码http://research.ed ...
- IOS 设置ipone状态栏的样式
/** 控制状态栏的样式 */ -(UIStatusBarStyle)preferredStatusBarStyle { //白色 return UIStatusBarStyleLightConten ...
- mm_struct简要解析
http://blog.chinaunix.net/uid-20729583-id-1884615.html struct mm_struct { /* 指向线性区对象的链表头 ...
- 初始化mysql数据库时提示字符编码错误的解决办法
有时候在安装完数据库并初始化的时候会出现如下错误: root@localhost mysql-5.5.19]# bash scripts/mysql_install_db --user=mysql - ...
- redis 系列 在 vs上 set,get 键值
1.启动两个 cmd,一个用于打开服务,一个用于运行客户端. 详细步骤可见上一篇文章 2.下载nuget的 ServiceStack.Redis; ,并在using中引用 ,详细步骤可见上一篇文章 ...