写在前面

现在已经是八月份了,我已经荒废了半年居多,不得不说谈恋爱确实是个麻烦的事,谈好了皆大欢喜,分手了就是萎靡不振,需要很长一段时间才能缓过来。

人还是要有梦想的,至于实现只不过是一个契机,但凡不懒,你都可能是下一个被命运眷顾的幸运儿(仅限技术,追妹纸另当别论)。

一直以来就有个心愿,想使用前后端分离技术,写一个Web系统,主要技术栈Spring Boot+ Vue3 ,想一想就很兴奋那种,很久没有这种感觉了。

话不多说,开始更文了。

创建Spring Boot项目

  • 单击 File -> New -> Project… 命令,弹出新建项目框。

  • 选择 Spring Initializr 选项,单击 Next 按钮,Idea 很强大已经帮我们做了集成。

  • 选择 Web ,这里我选择的版本是2.4.0,如果无法选中,到时候在pom文件中自行修改即可,单击Next按钮,最后确定信息无误单击 Finish 按钮。

  • 删除无用的文件.mvn、 mvnw、 mvnw.cmd

项目结构

  • src/main/java:程序开发以及主程序入口
  • src/main/resources:配置文件
  • src/test/java:测试程序

简单接口编写

按照国际惯例,先整一个Hello World吧。

首先创建一个名为HelloController的类,示例代码如下:

package com.rongrong.wiki.demo;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; /**
*
* @description
* @version 1.0
* @author longrong.lang
*
*/
@RestController
public class HelloController {
@RequestMapping(method= RequestMethod.GET,value = "/hello")
public String sayHello(){
return "hello,Spring Boot!";
}
}

启动主程序

打开浏览器访问 http://localhost:8080/hello,就可以看到以下内容:

hello,Spring Boot!

单元测试

我们使用Spring Boot中自带的MockMvc进行测试,不了解的同学可以自己百度查询学习,如果对PowerMock或者其他单元测试框架Mock比较书的同学上手会很快。

在测试程序中,创建一个名为HelloControllerTest的测试类,示例代码如下:

package com.rongrong.wiki.test;

import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.MediaType;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.equalTo; /**
* @author longrong.lang
* @version 1.0
* @description
*/
@AutoConfigureMockMvc
@SpringBootTest
public class HelloControllerTest {
@Autowired
MockMvc mockMvc; @Test
@DisplayName("测试返回字符串")
public void testHello() throws Exception {
MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_FORM_URLENCODED)).andReturn();
String content = mvcResult.getResponse().getContentAsString();
assertThat(content,equalTo("hello,Spring Boot!"));
} }

说明:

  • @Autowired这个注解应该很熟悉吧,个人感觉这里采用的是Spring Mvc的思路,比如自动导入Bean
  • 关于Mock部分参考单元测试框架Mock去学习即可

运行结果

最后

到此,使用 Spring Boot 快速搭建项目完成,如果觉得对您有帮助,请关注,点赞,并转发。

聪明的人都去瞧瞧努力了,你还在犹豫什么呢?行动起来,来一起入坑!

寻找写代码感觉(一)之使用 Spring Boot 快速搭建项目的更多相关文章

  1. spring boot+mybatis搭建项目

    一.创建spring boot项目 1.File->New->Project 2.选择 Spring Initializr ,然后选择默认的 url 点击[Next]: 3.修改项目信息 ...

  2. 寻找写代码感觉(二)之 Spring Boot 项目属性配置

    一.前言 写代码就和恋爱一样,有反馈就要趁热打铁,搞完了项目搭建,接下来就来搞搞项目配置. 二.IDEA设置 1.编码配置 这里所说的就是代码的编码格式,你可以不设置,但是可能要面临的是,很多未知的麻 ...

  3. 寻找写代码感觉(三)之使用 Spring Boot 编写接口

    一.前言 项目配置完之后,接着就是写接口了,那咱们就开始吧. 二.项目配置补充知识点 上篇文章写的是关于项目属性配置的一些知识,这里针对上次遗忘内容进行补充如下: 2.1.获取配置文件的值 在appl ...

  4. 寻找写代码感觉(八)之SpringBoot过滤器的使用

    一.什么是过滤器? 过滤器是对数据进行过滤,预处理过程,当我们访问网站时,有时候会发布一些敏感信息,发完以后有的会用*替代,还有就是登陆权限控制等,一个资源,没有经过授权,肯定是不能让用户随便访问的, ...

  5. Spring Boot快速搭建Web工程

    先想一下,正常我们想要创建一个web服务,首先需要下载tomcat,创建web工程,配置各种web.xml,引入spring的配置,各种配置文件一顿倒腾.....下载有了spring boot,你创建 ...

  6. Spring Boot快速搭建Spring框架

    Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development a ...

  7. Spring Boot 快速搭建的三种方式

    方式一:http://start.spring.io/ 打开浏览器,在地址栏中输入http://start.spring.io/ 如下图:  点击generate project 然后就会有一个zip ...

  8. 寻找写代码感觉(十六)之 集成Validation做参数校验

    写在前面 今天是大年初五了... 不知不觉,又要上班了,美好的假期只剩一天了,有点不舍呢! 也不知道为什么,总感觉像在做梦一样,像没睡醒一样,并不是因为眼睛小,更多应该是自寻烦恼,想得多罢了. 参数校 ...

  9. 寻找写代码感觉(五)之Mybatis官方代码生成器的使用

    一.Mybatis Generator生成器 见名知意,官方给出的代码生成器.好处就是不用自己写实体类.接口.xml文件了,应对简单增删改查是可以的.复杂的还是需要自己手写sql的. 二.Mybati ...

随机推荐

  1. 使用Linux Deploy将闲置的安卓手机改造简易服务器

    本文将介绍我在自己闲置的小米4手机安装CentOS系统的过程.手机配置信息:MIUI 9开发板(方便ROOT).Android 6.架构 ARMv7(arm32) 准备工作 1.手机必须ROOT!!! ...

  2. 使用Vue-Cli搭建Ant Design Vue前端开发环境

    如果文章有帮助到你,还请点个赞或留下评论 搭建脚手架 环境准备 nodeJS vue-cli 如果没有安装点击此处查看安装方法 进入 vue ui 1.打开终端,输入命令 vue ui 2.选择项目存 ...

  3. PDO之MySql持久化自动重连导致内存溢出

    前言 最近项目需要一个常驻内存的脚本来执行队列程序,脚本完成后发现Mysql自动重连部分存在内存溢出,导致运行一段时间后,会超出PHP内存限制退出 排查 发现脚本存在内存溢出后排查了一遍代码,基本确认 ...

  4. 3、集成springfox-swagger 3.0.0 + 集成knife4j

    集成springfox-swagger 3.0.0 + 集成knife4j 1.基本用法 1.1.导入依赖 <!-- web接口 --> <dependency> <gr ...

  5. awk中printf的用法

    printf函数   打印输出时,可能需要指定字段间的空格数,从而把列排整齐.在print函数中使用制表符并不能保证得到想要的输出,因此,可以用printf函数来格式化特别的输出. printf函数返 ...

  6. Android系统编程入门系列之界面Activity交互响应

    在上篇文章中已经了解到界面Activity的绘制完全依赖其加载的视图组件View,不仅如此,用户的每次触摸操作都可以在界面Activity内接收并响应,也可以直接传递给其中的某个视图View响应.本文 ...

  7. 5000字2021最新Python基础知识第一阶段:数据类型

    1 编程规范 注释 python注释也有自己的规范,在文章中会介绍到.注释可以起到一个备注的作用,团队合作的时候,个人编写的代码经常会被多人调用,为了让别人能更容易理解代码的通途,使用注释是非常有效的 ...

  8. SuperEdge 易学易用系列-SuperEdge 简介

    关于 SuperEdge SuperEdge 是由腾讯.Intel.VMware.虎牙直播.寒武纪.首都在线和美团等多家公司共同发起的边缘容器管理系统,它基于原生 Kubernetes.针对边缘计算和 ...

  9. ScienceDirect内容爬虫

    爬虫违法,本贴方法只限于个人对数据的分析使用,其爬虫程序已作相关设置,以减小服务器压力.不适宜长期使用. 一.前期准备 1.使用chrome打开ScienceDirect网站(https://www. ...

  10. Spring总结之AOP

    一.Spring AOP简介(百度百科) 面向切面编程(也叫面向方面编程):Aspect Oriented Programming(AOP),是软件开发中的一个热点,也是 Spring 框架中的一个重 ...