首页 > 其他分享 >SpringBoot 第一个demo

SpringBoot 第一个demo

时间:2023-04-25 23:13:31浏览次数:46  
标签:00 java SpringBoot 04 demo 4040654 main 第一个

前奏

最近在面试,有一家公司在谈的时候,发了一份后端笔试题给我,是java的......

我TMD是个运维诶,你给我一套SRE题不行嘛......

玛德现在都这么卷了吗,SRE要去卷java啦......

 

SpringBoot

对于Java的很多东西我并不懂,但是我知道写java的后端都会用到Spring全家桶,包括SpringBoot、SpringCloud、SpringSecurity等等。

那怎么办呢,跟着卷呗。

于是我就查了SpringBoot官网,写出了第一个demo -- helloworld
 

HelloWorld

以下内容摘抄自Spring官网

运行环境:Ubuntu22.04
 

前提条件

  1. 安装jdk17
apt install openjdk-17-jre-headless -y

如果机器上有多个jdk版本,需要将其设置为jdk17

root@ubuntu-linux-22-04-desktop:~# update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-arm64/bin/java      1711      auto mode
  1            /usr/lib/jvm/java-17-openjdk-arm64/bin/java      1711      manual mode
  2            /usr/lib/jvm/java-8-openjdk-arm64/jre/bin/java   1081      manual mode

Press <enter> to keep the current choice[*], or type selection number: 0

 

正式步骤

  1. 打开spring打包器(https://start.spring.io/) ,选择相应的选项与版本,并选择Spring Web做为依赖并下载。

    下载之后,是一个zip包,解压后得到项目本体。

  2. 修改src/java/com/example/demo/DemoApplication.java,复制以下内容:

package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class DemoApplication {
    public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
    }
    @GetMapping("/hello")
    public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
      return String.format("Hello %s!", name);
    }
}
  1. 运行,之后就会启动项目
young@ubuntu-linux-22-04-desktop:~/demo$ ./gradlew bootRun

> Task :bootRun

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v3.0.6)

2023-04-25T22:53:19.088+08:00  INFO 4040654 --- [           main] com.example.demo.DemoApplication         : Starting DemoApplication using Java 17.0.6 with PID 4040654 (/home/young/demo/build/classes/java/main started by young in /home/young/demo)
2023-04-25T22:53:19.090+08:00  INFO 4040654 --- [           main] com.example.demo.DemoApplication         : No active profile set, falling back to 1 default profile: "default"
2023-04-25T22:53:19.838+08:00  INFO 4040654 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2023-04-25T22:53:19.843+08:00  INFO 4040654 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2023-04-25T22:53:19.843+08:00  INFO 4040654 --- [           main] o.apache.catalina.core.StandardEngine    : Starting Servlet engine: [Apache Tomcat/10.1.8]
2023-04-25T22:53:19.905+08:00  INFO 4040654 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2023-04-25T22:53:19.912+08:00  INFO 4040654 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 693 ms
2023-04-25T22:53:20.135+08:00  INFO 4040654 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2023-04-25T22:53:20.139+08:00  INFO 4040654 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 1.34 seconds (process running for 1.725)
  1. 使用http://:8080/hello去访问8080端口

第一个项目就跑起来了。
 

后记

目前这个就业环境真的很糟糕啊,裁员的裁员,降薪的降薪,作为一个小菜狗,能做的也只是提升自己的能力,扩展自己的眼界,开拓自己的心胸,保持良好的生活习惯,保持健康,保持向上,保持尊严。

与诸君共勉!

标签:00,java,SpringBoot,04,demo,4040654,main,第一个
From: https://www.cnblogs.com/young233/p/17354293.html

相关文章

  • SpringBoot项目使用Junit进行单元测试
    SpringBoot项目使用Junit进行单元测试环境:Springboot2.6.7POM.xml文件添加如下内容:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency><dependency>&l......
  • 第十一天第一个问题
    问题描述:编写模板函数max5(),他将由一个T类型元素组成的数组作为参数,并返回数组中最大的元素(由于长度固定,因此可以在循环中使用硬编码,而不必通过参数来传递)。在一个程序中使用该函数,将T替换为一个包含5个int值的数组和一个包含5个double值的数组,以测试该函数。解决方法:1.建立一个模......
  • springboot自动装配大概原理
    自动装配:pom.xmlspring-boot-dependence:核心都依赖在父类工程中!我们在写入或者引入springboot依赖的时候,不需要指定版,因为有这些仓库的版本启动器:------springboot的启动场景比如spring-boot-starter-web,他就会帮我们导入web环境苏需要的依赖。springboot会将所有的功能......
  • Springboot 在linux后台运行的方法
    1、后台运行程序nohupjava-jar自己的springboot项目.jar>日志文件名.log2>&1&命令详解:nohup:不挂断地运行命令,退出帐户之后继续运行相应的进程。>日志文件名.log:是nohup把command的输出重定向到当前目录的指定的“日志文件名.log”文件中,即输出内容不打印到屏幕上,而......
  • Springboot日期注解失败:while it seems to fit format ‘yyyy-MM-dd‘T‘HH:mm:ss.SSS
    提交字符串到后台映射为Date类型可以加上@DateTimeFormat(pattern="yyyy-MM-ddHH:mm:ss")注解,但是报错了!前端提交字符串到后台,出现如下错误:whileitseemstofitformat'yyyy-MM-dd'T'HH:mm:ss.SSSZ',parsingfails(leniency?null))错误的大致意思就是字符串映射到Da......
  • 使用Dockerfile部署springboot打包jar包
    1、docker下载JDK1.8镜像dockerpulljava:82、编写Dockerfile文件#依赖的父镜像FROMjava:8#作者MAINTAINERdocker-admin#jar包添加到镜像中ADDxxl-job-admin-2.1.2.jarxxl-job-admin.jar#容器暴露的端口即jar程序在容器中运行的端口EXPOSE8080#容器启动之后......
  • java面试题--springboot
    一、SpringBoot自动装配原理是什么?@SpringBootApplication@EnableAutoConfigration\@SpringBootConfigration\@ComponentScan@AutoConfigrationPackage\@ImportMETA-INF\spring.factories二、说一下@Configuration中的属性proxyBeanMethods的作用?首先,引入两个概念:Full全......
  • SpringBoot 使用 Sa-Token 完成权限认证
    一、设计思路所谓权限认证,核心逻辑就是判断一个账号是否拥有指定权限:有,就让你通过。没有?那么禁止访问!深入到底层数据中,就是每个账号都会拥有一个权限码集合,框架来校验这个集合中是否包含指定的权限码。例如:当前账号拥有权限码集合["user-add","user-delete","user-get"]......
  • 直播平台软件开发,一个简单的Android登录实现demo
    直播平台软件开发,一个简单的Android登录实现demo一、登录活动 packagecom.example.login; importandroid.content.Intent;importandroid.os.Bundle;importandroid.text.TextUtils;importandroid.view.View;importandroid.widget.Button;importandroid.widget.EditText......
  • SpringBoot 日志切面
    SpringBoot日志切面在SpringBoot中搞一下AOP切面,复习一下。太详细的概念就不用说了,直接看SpringAOP实现吧,当时写的除了有点模糊也没什么大问题。AOP概念在SpringBoot中使用AOP,直接引入spring-boot-starter-aop的包即可:<dependency><groupI......