spring boot 快速起步1(方便以后查找笔记)

快速创建spring boot项目


1 依赖配置


<!--设定父级依赖-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.RELEASE</version>
    </parent>
<dependencies>
        <!--web依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>


2 启动类


package com.ry;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//启动类
@SpringBootApplication
public class AppStarter {
    public static void main(String[] args) {
        //运行当前应用
        //工程默认会打成jar包,该方法直接run起来
        SpringApplication.run(AppStarter.class,args);
    }
}


3 控制类


package com.ry.controller;

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

/**
 * 1 spring boot 不使用jsp
 * 2 spring boot  使用http协议
 * 3 json无缝对接
 * 4 前端使用模板技术,前端页面全是HTML,数据都用json
 * 5
 */
@Controller
public class TestController {
    @RequestMapping("/hello")
    @ResponseBody
    public String sayHello() {
        return "hellospringboot";
    }
}

 

简单的创建完成
 idea可以直接创建,创建需要联网(包也需要联网,仓库有就不要网),再选择所需要的插件配置文件

resources 目录中有static和templates两个文件夹,还有application.properties配置文件,或者application.yaml(yml)
static 放css img js html 文件的
templates 放模板的地方


spring boot强烈建议不使用jsp

f老师说过,框架越来越简单,不好处就是,对程序员的要求越来越低了,对解决业务能力越来越高!
比方说你要去搞人工智能,大家都在找算法工程师,有一天,算法非常稳定了,我们只需要传一个参数就能搞定了,
越来越简单,还是得搞业务。
业务能力这块儿才是重点!

 

亲爱的f老师的干货笔记(请别转载)

 

SpringBoot

  1. SpringBoot概述

springboot不是对spring的增强,而是一个快速使用spring进行开发的框架。其产生的背景是因为随着动态语言(Scala,Groovy)的流行,Java语言开发显得尤其笨重,繁琐的配置,低下的开发效率,复杂的部署流程以及第三方技术集成难度大。

在这种情况下springboot产生了,他使用的是(习惯优于配置)项目中存在大量的配置,此外还内置一些习惯性配置,大大减少我们的工作量。使用springboot可以很容易创建一个独立运行(运行jar,内嵌servlet容器)、准生产级的基于spring框架的项目,使用springboot我们可以不用甚至只需要很少的spring配置。

    1. Spring存在的问题

虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。一开始,Spring用XML配置,而且是很多XML配置。Spring 2.5引入了基于注解的组件扫描,这消除了大量针对应用程序自身组件的显式XML配置。Spring 3.0引入了基于Java的配置,这是一种类型安全的可重构配置方式,可以代替XML。所有这些配置都代表了开发时的损耗。因为在思考Spring特性配置和解决业务问题之间需要进行思维切换,所以编写配置挤占了编写应用程序逻辑的时间。和所有框架一样,Spring实用,但与此同时它要求的回报也不少。除此之外,项目的依赖管理也是一件耗时耗力的事情。在环境搭建时,需要分析要导入哪些库的坐标,而且还需要分析导入与之有依赖关系的其他库的坐标,一旦选错了依赖的版本,随之而来的不兼容问题就会严重阻碍项目的开发进度。

    1. SpringBoot核心功能
      1. 独立运行的spring项目

springboot可以以jar包形式直接运行,如 java -jar xxx.jar  优点是:节省服务器资源

      1. 内嵌servlet容器

springboot可以选择内嵌Tomcat,Jetty,这样我们无须以war包形式部署项目。

      1.  提供starter简化Maven配置

例如引入spring-boot-starter-web时会自动引入

      1. 自动配置spring

springboot会根据在类路径中的jar包,类,为jar包里的类自动配置Bean,这样会极大减少我们要使用的配置。当然springboot只考虑了大部分开发场景,并不是所有的场景,如果在实际的开发中我们需要自动配置Bean,而springboot不能满足,则可以自定义自动配置。

      1. 准生产的应用监控

springboot提供基于http,ssh,telnet对运行时的项目进行监控

      1. 无代码生成和xml配置

springboot大量使用spring4.x提供的注解新特性来实现无代码生成和xml配置。spring4.x提倡使用Java配置和注解配置组合,而springboot不需要任何xml配置即可实现spring的所有配置。 

综上我们可以发现

springboot让开发变得简单,让部署变得简单,让监控变得简单,让配置变得更简单。

 

优点:

  1. 快速构建项目
  2. 对主流框架无缝集成
  3. 项目可以独立运行,无需依赖外部servlet容器
  4. 提供运行时的应用监控
  5. 极大提高了开发,部署效率
  6. 与Docker容器等集成方便
  7. springboot提供基于http,ssh,telnet对运行时的项目进行监控
  1. 快速入门
    1. 应用传统方式创建项目:
      1. 使用idea创建maven工程

      1. 添加SpringBoot起步依赖

根据SpringBoot官方要求,项目要继承SpringBoot的起步依赖spring-boot-starter-parent

<parent>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-parent</artifactId>

    <version>2.1.6.RELEASE</version>

</parent>

SpringBoot需要集成SpringMVC进行Controller的开发,所以项目要导入web的启动依赖

<dependencies>

    <dependency>

        <groupId>org.springframework.boot</groupId>

        <artifactId>spring-boot-starter-web</artifactId>

    </dependency>

</dependencies>

      1. 编写启动类

@SpringBootApplication

public class SpringBootApp {

 

    public static void main(String[] args) {

        SpringApplication.run(MySpringBootApplication.class);

    }

      1. 编写Controller

@Controller

public class QuickStartController {

    

    @RequestMapping("/quick")

    @ResponseBody

    public String quick(){

        return "Hello,Spring boot!";

    }

    

}

      1. 测试运行

.   ____          _            __ _ _

 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \

( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \

 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )

  '  |____| .__|_| |_|_| |_\__, | / / / /

 =========|_|==============|___/=/_/_/_/

 :: Spring Boot ::        (v2.0.1.RELEASE)

通过访问http://localhost:8080/quick,可以查看请求结果。

      1. SpringBoot工程热部署

我们在开发中反复修改类、页面等资源,每次修改后都是需要重新启动才生效,这样每次启动都很麻烦,浪费了大量的时间,我们可以在修改代码后不重启就能生效,在 pom.xml 中添加如下配置就可以实现这样的功能,我们称之为热部署。

<!--热部署配置-->

<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-devtools</artifactId>

</dependency>

在Eclipse该配置会一次成功,观察Intellij IDEA,会发现并没有变化,主要原因是因为idea没有实时编译,因此需要做以下设置:

之后,使用ctrl+shift+alt+/,点击registry,即可完成设置。

      1. 应用idea快速创建springboot工程

为了能够提高开发效率,官方为开发者提供了相关的快速构建功能和工具,例如基于eclipse的sts,而idea凭借自身强大的支持,可以帮助我们快速完成工程的搭建工作:

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值