[Spring Boot]#1 Hello World!

Spring Boot是什么?

  • Spring Boot 是简化Spring应用开发的一个框架

  • 整个Spring技术栈的一个大整合

  • J2EE开发的一站式解决方案

要注意Spring Boot入门简单,精通难,应该是有挺多前序知识点,像Spring之类的,这些东西我还真的不熟,就当作自底向上地学习了。

微服务是什么?

  • 是一种架构风格
  • 一个应用应该是一组小型服务:可以通过HTTP的方式进行互通;

单体应用:所有东西都写在一个应用里,开发测试都比较简单。问题就是牵一发而动全身。

微服务提倡把功能元素动态整合,每一个功能元素最终都是一个可独立替换的单元

前期准备

  • maven
  • spring
  • idea使用

以上都没掌握......

1、MAVEN设置;

给maven 的settings.xml配置文件的profiles标签添加

<profile>
  <id>jdk-1.8</id>
  <activation>
    <activeByDefault>true</activeByDefault>
    <jdk>1.8</jdk>
  </activation>
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
  </properties>
</profile>

还可以加个镜像,这个网上有很多

2、IDEA设置

这个要注意maven_jar也就是本地仓库要在Maven home目录下,虽然感觉不在也没关系

Spring Boot HelloWorld

要实现的功能是:浏览器发送hello请求,服务器接受请求并处理,响应Hello World字符串;

创建一个maven工程

因为之前没接触过maven,jar到底是个什么东西

百度了一下:

Jar文件的全称是Java Archive File,意思是Java档案文件。通常Jar文件是一种压缩文件,与我们常见的ZIP压缩文件兼容,通常也被称为jar包。
当开发了一个应用程序后,这个应用程序包含了很多类,如果需要把这个应用程序提供给别人使用,通常会将这些类文件打包成一个JAR文件,把这个JAR文件提供给别人使用。只要别人在系统的CLASSPATH环境变量中添加这个JAR文件,则Java虚拟机就可以自动在内存中解压这个JAR包,把这个JAR文件当做一个路径,在这个路径中查找所需要的类或包层次对应的路径结构

导入spring boot相关的依赖

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.9.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

第二步是导入依赖,这样idea就会根据这个来下载相关依赖

编写一个主程序;启动Spring Boot应用


/**
 *  @SpringBootApplication 来标注一个主程序类,说明这是一个Spring Boot应用
 */
@SpringBootApplication
public class HelloWorldMainApplication {

    public static void main(String[] args) {

        // Spring应用启动起来
        SpringApplication.run(HelloWorldMainApplication.class,args);
    }
}

编写相关的Controller、Service

@Controller
public class HelloController {

    @ResponseBody
    /*接收来自于浏览器的hello请求*/
    @RequestMapping("/hello")
    public String hello(){
        return "Hello World!";
    }
}

测试

只需要到主程序运行起来就行

然后打开浏览器输入127.0.0.1:8080/hello,就可以得到:

遇到的问题

  • 可能会遇到拒绝请求的问题:

​ 参考这篇博客 https://www.cnblogs.com/rulasann/p/9442420.html

简化部署

 <!-- 这个插件,可以将应用打包成一个可执行的jar包;-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

将上面的复制到pom.xml里,就会自动下载

然后点击右侧生命周期中的package

然后在target里找到相关jar

复制到桌面 打开终端

输入命令java -jar +文件名

然后看到127.0.0.1:8080 没有问题

这样就大概接触了Spring Boot

全部评论

相关推荐

我是秋招面的抖音电商部门,从八月开始给我打电话约面试,当时有加对应的hr微信,前几轮还好,从三面开始就是拖半个月一下在推进,面了三轮以后拖了一个月说再加一个交叉面,面完过了半个多月问hr,hr说她离职了不管我了,我连自己的流程在哪里都不清楚。在官网投诉了三次(前两次正常反馈问题,字节你像听不懂话一样),今天下午突然有其他部门约我面试,说在人才库里看见我简历了觉得很匹配,我拒了说不想面了。过了一会,声称原来那个部门的hr负责人给我回电话,表示抱歉,说因为北京hc不够了把我流程释放了,前面的hr是实习生离职了,没有和我对接非常抱歉,如果有想法可以帮我推荐给其他部门。那么我问你:1.&nbsp;从八月等到11月,三个月时间我前面不断确认还有没有hc,给我的回复都是有hc,没hc你面什么呢?2.&nbsp;作为一个大厂你流程这么一坨?让实习生对接校招流程,实习生离职了对应的候选人就不管了?不是我主动问我的流程就这样一直被卡?3.&nbsp;还说我面评没问题,帮我推荐其他部门,现在各个大厂都开奖了,你还让我从头开始面?我前面面了你们三个月啊,孩子饿死了开始装得想负责了。4.&nbsp;你们官网的流程反馈对应的人员是理解能力有问题吗,一个问题我投诉三次才能看明白是吗?套话一堆在哪里随便选了个常用语就给我回复了?不想开可以直接把入口关了
奋斗的小码农a:字节流程就是恶心死人,一次字节广告5面挂一次字节抖音电商6面挂,最后那个面试官装都不装了直接分屏聊天还外放语音家里真的私募了
投递字节跳动等公司8个岗位
点赞 评论 收藏
分享
迷茫的大四🐶:???啥意思,你放几张图片糊弄牛油们?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务