SpringBoot的初入门(一)下

简介: SpringBoot的初入门(一)

二.二.三.四 添加 测试类 HelloApplicationTests


放置在 test 目录 下


20210409214537423.png


package org.yueshushu.learn;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class HelloApplicationTests {
    @Test
    void contextLoads() {
        System.out.println("谢谢你,我是MavenHelloWorld 部分的两个蝴蝶飞");
    }
}


点击 contextLoads() 方法进行测试


20210409214555977.png


Idea 可以通过这两种方式,创建 SpringBoot项目。 推荐使用 Maven的方式。


三. SpringBoot版的 HelloWorld


开发中,都是使用的Web 方式开发。既然我们依赖,选择了 spring-boot-starter-web, 那么就开发一个简单的 Web 项目看看。


三.一 搭建一个简单的 SpringBoot 环境


具体方式可以看 第二章节部分。


采用的是 Idea 通过 Maven 方式 创建的那个 MavenHelloWorld 项目进行演示。


三.二 添加 Controller 层 url处理类


20210409214611309.png


注意, controller层与 HelloApplication 同级。


@SpringBootApplication 注解,会扫描所在的包和子包。


如果将 HelloController 放置在 org.yueshushu.learn 包下,会扫描到。


如果 放置在 org.yueshushu 包下,不会扫描到。 org包下,也扫描不到。


package org.yueshushu.learn.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * @ClassName:HelloController
 * @Description TODO
 * @Author 岳建立
 * @Date 2021/4/9 20:55
 * @Version 1.0
 **/
//1. 添加了一个RestController的注解
@RestController
public class HelloController {
    //2.请求地址是 /
    @GetMapping("/")
    public String toHello(){
        return "谢谢你来访问我,我是两个蝴蝶飞";
    }
    //3. 请示地址是  /info
    @GetMapping("/info")
    public String info(){
        return "我是两个蝴蝶飞,目前在杭州,我是一个快乐的程序员";
    }
}


三.三 启动 HelloApplication 类


启动 HelloApplication 类,运行main() 方法


"D:\Program Files\Java\jdk1.8.0_91\bin\java.exe" -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain 
......
1.7.29.jar;G:\Jar_repository\org\springframework\spring-core\5.2.2.RELEASE\spring-core-5.2.2.RELEASE.jar;G:\Jar_repository\org\springframework\spring-jcl\5.2.2.RELEASE\spring-jcl-5.2.2.RELEASE.jar" org.yueshushu.learn.HelloApplication
  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.2.2.RELEASE)
2021-04-09 21:02:08.678  INFO 15952 --- [           main] org.yueshushu.learn.HelloApplication     : Starting HelloApplication on yuezl with PID 15952 (D:\githubBoot\springboot\MavenHelloWorld\target\classes started by 12905 in D:\githubBoot\springboot\MavenHelloWorld)
2021-04-09 21:02:08.680  INFO 15952 --- [           main] org.yueshushu.learn.HelloApplication     : No active profile set, falling back to default profiles: default
2021-04-09 21:02:09.191  INFO 15952 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2021-04-09 21:02:09.197  INFO 15952 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2021-04-09 21:02:09.197  INFO 15952 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.29]
2021-04-09 21:02:09.246  INFO 15952 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2021-04-09 21:02:09.246  INFO 15952 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 539 ms
2021-04-09 21:02:09.333  INFO 15952 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2021-04-09 21:02:09.429  INFO 15952 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2021-04-09 21:02:09.433  INFO 15952 --- [           main] org.yueshushu.learn.HelloApplication     : Started HelloApplication in 0.966 seconds (JVM running for 1.578)
欢迎我,我是两个蝴蝶飞,我启动了!!!!


控制台可以正常的打印输出


输入网址: http://localhost:8080/


20210409214626928.png


http://localhost:8080/info


20210409214637451.png


可以通过网址,正常的访问。


三.四 启动控制台打印的输出语句


//1.  启动的虚拟机位置,启动的参数,启动时依赖的jar包 和启动类
"D:\Program Files\Java\jdk1.8.0_91\bin\java.exe" -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain 
......
1.7.29.jar;G:\Jar_repository\org\springframework\spring-core\5.2.2.RELEASE\spring-core-5.2.2.RELEASE.jar;G:\Jar_repository\org\springframework\spring-jcl\5.2.2.RELEASE\spring-jcl-5.2.2.RELEASE.jar" org.yueshushu.learn.HelloApplication
//2. 启动成功的图案。 显示 版本号。可以修改
  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.2.2.RELEASE)
//3. 启动app
2021-04-09 21:02:08.678  INFO 15952 --- [           main] org.yueshushu.learn.HelloApplication     : Starting HelloApplication on yuezl with PID 15952 (D:\githubBoot\springboot\MavenHelloWorld\target\classes started by 12905 in D:\githubBoot\springboot\MavenHelloWorld)
//4. 找配置环境文件,可以选择的。没有的话,走默认
2021-04-09 21:02:08.680  INFO 15952 --- [           main] org.yueshushu.learn.HelloApplication     : No active profile set, falling back to default profiles: default
//5. 启动的服务器 tomcat初始化 和端口号 8080 
2021-04-09 21:02:09.191  INFO 15952 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
//6. 开启 tomcat 服务 
2021-04-09 21:02:09.197  INFO 15952 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
//7. 启动 Servlet 引擎
2021-04-09 21:02:09.197  INFO 15952 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.29]
//8. 初始化 Spring 上下文
2021-04-09 21:02:09.246  INFO 15952 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
//9.初始化完成时间
2021-04-09 21:02:09.246  INFO 15952 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 539 ms
//10. 初始化服务任务
2021-04-09 21:02:09.333  INFO 15952 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
//11. tomcat 启动时的端口号和路径 path(目前为 空)
2021-04-09 21:02:09.429  INFO 15952 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
//12. 服务启动成功,启动的总时间 
2021-04-09 21:02:09.433  INFO 15952 --- [           main] org.yueshushu.learn.HelloApplication     : Started HelloApplication in 0.966 seconds (JVM running for 1.578)
欢迎我,我是两个蝴蝶飞,我启动了!!!!


三.五 打包并控制台方式运行


Terminal 控制台 进行安装


20210409214649993.png


静静等待,直到运行成功。


20210409214702602.png


查看磁盘目录,发现确实有这么一个jar包,时间上也是符合的.


20210409214826335.png


通过 cmd 的 java -jar Xxx.jar 的方式进行运行程序。


D:\githubBoot\springboot\MavenHelloWorld\target>java -jar learn-0.0.1-SNAPSHOT.jar


20210409214839810.png


浏览器访问时,可以正常的响应


20210409214914365.png

关闭 cmd 窗口后,再次请求,就请求不到了。


20210409214925413.png


本章节的代码放置在 github 上:


https://github.com/yuejianli/springboot/tree/main/MavenHelloWorld


谢谢您的观看,如果喜欢,请关注我,再次感谢 !!!


相关文章
|
Java 测试技术 Spring
Gradle从0入门到实战系列【八】SpringBoot集成Junit单元测试
JUnit 是一个 Java 编程语言的单元测试框架。JUnit 在测试驱动的开发方面有很重要的发展,是起源于 JUnit 的一个统称为 xUnit 的单元测试框架之一。
1421 1
Gradle从0入门到实战系列【八】SpringBoot集成Junit单元测试
|
XML Java 测试技术
SpringBoot入门篇 01、Springboot入门及配置(二)
SpringBoot入门篇 01、Springboot入门及配置(二)
|
XML Java 应用服务中间件
SpringBoot 快速入门(保姆级详细教程)
SpringBoot快速入门,保姆级别超详细,解决IDEA创建SpringBoot项目一直转圈圈。
478 0
SpringBoot 快速入门(保姆级详细教程)
|
存储 Java 测试技术
Idea工具中创建 SpringBoot工程及入门详解
Idea工具中创建 SpringBoot工程及入门详解
1316 4
Idea工具中创建 SpringBoot工程及入门详解
|
Java 关系型数据库 MySQL
MyBatis-Plus 入门 【SpringBoot版】
今天来带大家入门学习MyBatis-Plus,MyBatis-Plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
|
druid Java 关系型数据库
《SpringBoot篇》01.Springboot超详细入门(基础篇)(三)
《SpringBoot篇》01.Springboot超详细入门(基础篇)(三)
472 0
《SpringBoot篇》01.Springboot超详细入门(基础篇)(三)
|
JSON Java 应用服务中间件
《SpringBoot篇》01.Springboot超详细入门(基础篇)(二)
《SpringBoot篇》01.Springboot超详细入门(基础篇)(二)
160 0
《SpringBoot篇》01.Springboot超详细入门(基础篇)(二)
|
Java 应用服务中间件 Maven
《SpringBoot篇》01.Springboot超详细入门(基础篇)(一)
《SpringBoot篇》01.Springboot超详细入门(基础篇)(一)
214 0
《SpringBoot篇》01.Springboot超详细入门(基础篇)(一)
|
开发框架 负载均衡 前端开发
SpringBoot入门篇 01、Springboot入门及配置(一)
SpringBoot入门篇 01、Springboot入门及配置(一)
|
Java 应用服务中间件 数据库连接
springboot入门demo详解(解决跨域)
微服务自问世以来就一直很火。天天耳听Springboot,Springcloud,docker,这些名词,以前没学Springboot的时候刚学ssm的时候,,说实话头都炸了。单独一个个学习Spring,Springmvc,mybatis还能将就配置,记得当初把三个整合的时候可是费了好大的功夫,然后又将ssm转成idea的maven项目又转了一大圈,找了好久,n个bug才把ssm搭成功。
207 0
springboot入门demo详解(解决跨域)