热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

玩转springboot快速开始(1)

玩转springboot,快速开始springboot学习,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

开发环境:

IED环境:Eclipse

JDK版本:1.8

maven版本:3.3.9  

一、创建一个spring boot的mcv web应用程序

打开Eclipse,新建Maven项目

选择quickstart模板

完成Maven项目的创建

参照spring的官方例子:http://spring.io/guides/gs/testing-web/

在pom.xml增加maven依赖


 4.0.0

 com.github.carter659
 spring01
 0.0.1-SNAPSHOT
 jar

 spring01
 http://maven.apache.org

 
  UTF-8
  1.8
 
 
  org.springframework.boot
  spring-boot-starter-parent
  1.4.2.RELEASE
 

 
  
   org.springframework.boot
   spring-boot-starter-web
  
 

 
  
   
    org.springframework.boot
    spring-boot-maven-plugin
   
  
 
 


添加一个控制器文件“HomeController.java”

package com.github.carter659.spring01;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HomeController {

 @RequestMapping("/")
 public @ResponseBody String index() {
  return "你好,这是第一个spring boot应用";
 }

}

修改App.java文件

package com.github.carter659.spring01;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class App {
 public static void main(String[] args) {
  SpringApplication.run(App.class, args);
 }
}

在App.java文件处,点击右键Run As运行java程序

当控制台处显示运行结果后

在浏览器输入“http://localhost:8080/”网站访问第一个spring boot的应用

二、我们如何对spring boot做单元测试?

pom.xml中增加单元测试的依赖


 org.springframework.boot
 spring-boot-starter-test
 test


在src/test/java中新建测试类“HttpRequestTest.java”

package com.github.carter659.spring01;

import static org.assertj.core.api.Assertions.assertThat;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.embedded.LocalServerPort;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;
import org.springframework.boot.test.web.client.TestRestTemplate;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest(webEnvirOnment= WebEnvironment.RANDOM_PORT)
public class HttpRequestTest {

 @LocalServerPort
 private int port;

 @Autowired
 private TestRestTemplate restTemplate;

 @Test
 public void greetingShouldReturnDefaultMessage() throws Exception {
  assertThat(this.restTemplate.getForObject("http://localhost:" + port + "/",
    String.class)).contains("你好,这是第一个spring boot应用");
 }
}

并运行单元测试

出现绿色表示断言成功

三、我们怎么部署spring boot?

我们会按照以下这几个步骤:

1.下载maven

在maven的官方网站下载maven的bin包:http://maven.apache.org/download.cgi

2.配置环境变量:

我这里是把maven解压到d盘的Program Files (x86)目录

在环境变量中输入:MAVEN_HOME -->D:\Program Files (x86)\maven

Path中追加:;%MAVEN_HOME%\bin;

在CDM窗口中输入“mvn -v”命令来测试maven是否安装成功

这里显示的是3.3.9版本

3.打包

在程序所在目录(与pom.xml同级)输入“mvn package”命令:

出现“BUILD SUCCESS”则表示打包成功

会在tatget目录下出现打包后的jar文件

4.运行

在CMD中输入命令“java -jar target/spring01-0.0.1-SNAPSHOT.jar”

这时程序就部署好了,是不是发现spring boot程序不仅开发和测试非常简单,部署也非常容易?

代码下载:https://github.com/carter659/spring-boot-01.git

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


推荐阅读
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细介绍了Java中org.w3c.dom.Text类的splitText()方法,通过多个代码示例展示了其实际应用。该方法用于将文本节点在指定位置拆分为两个节点,并保持在文档树中。 ... [详细]
  • 本文详细介绍了 Java 中 org.apache.xmlbeans.SchemaType 类的 getBaseEnumType() 方法,提供了多个代码示例,并解释了其在不同场景下的使用方法。 ... [详细]
  • 本文详细介绍了如何在ECharts中使用线性渐变色,通过echarts.graphic.LinearGradient方法实现。文章不仅提供了完整的代码示例,还解释了各个参数的具体含义及其应用场景。 ... [详细]
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • 解决JAX-WS动态客户端工厂弃用问题并迁移到XFire
    在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ... [详细]
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
  • 资源推荐 | TensorFlow官方中文教程助力英语非母语者学习
    来源:机器之心。本文详细介绍了TensorFlow官方提供的中文版教程和指南,帮助开发者更好地理解和应用这一强大的开源机器学习平台。 ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • Android LED 数字字体的应用与实现
    本文介绍了一种适用于 Android 应用的 LED 数字字体(digital font),并详细描述了其在 UI 设计中的应用场景及其实现方法。这种字体常用于视频、广告倒计时等场景,能够增强视觉效果。 ... [详细]
  • RecyclerView初步学习(一)
    RecyclerView初步学习(一)ReCyclerView提供了一种插件式的编程模式,除了提供ViewHolder缓存模式,还可以自定义动画,分割符,布局样式,相比于传统的ListVi ... [详细]
  • VSCode与Gitee集成:项目提交的高效实践
    本文介绍如何利用VSCode内置的Git工具将项目提交到Gitee,简化Git命令的使用,提升代码管理效率。同时分享一些常见的踩坑经验和解决方案。 ... [详细]
  • 本文详细介绍了如何解决MyBatis中常见的BindingException错误,提供了多种排查和修复方法,确保Mapper接口与XML文件的正确配置。 ... [详细]
  • 本文探讨了在通过 API 端点调用时,使用猫鼬(Mongoose)的 findOne 方法总是返回 null 的问题,并提供了详细的解决方案和建议。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
author-avatar
渭南电信贺平
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有