Skip to content

Latest commit

 

History

History
239 lines (156 loc) · 6.85 KB

File metadata and controls

239 lines (156 loc) · 6.85 KB

第31节 Java SpintBoot框架介绍和使用

❤️💕💕java的学习指南,从入门到大师篇章。Myblog:http://nsddd.top


[TOC]

SpingBoot是一个非常非常重要的框架,对于Java从业者来说,SpingBoot是最重要求职必备技能。

  • SpingBoot官方文档

什么是SpringBoot

SpringBoot是基于Spring的基础上提供了一套全新的框架,其目的是为了在开发时简化Spring的相关配置及开发过程。在SpringBoot未出来之前,准备搭建一个Spring的开发环境需要配置一堆的XML文件,而SpringBoot就是去除了大量的XML配置文件,简化了复杂的依赖管理。

Spring Boot集成了大量常用的第三方库配置,Spring Boot 应用中这些第三方库几乎可以是零配置的开箱即用(out-of-the-box),大部分的Spring Boot应用都只需要非常少量的配置代码(基于Java 的配置),开发者能够更加专注于业务逻辑。

SpringBoot特征

  • 独立运行的Spring项目,使用jar包的形式独立运行,只需通过命令java -jar xx.jar即可运行。
  • 内嵌Servlet容器(例如TomcatJetty或者Undertow 等),应用无需打成WAR包 。
  • 提供starter简化Maven配置,提供了一系列的starter项目对象模型(POMS)来简化 Maven配置。
  • 提供了大量的默认自动配置,来简化项目的开发,开发人员也通过配置文件修改默认配置。
  • 自带应用监控(如指标、健康检查和外部化配置)。
  • 没有代码生成和XML配置。

创建SpingBoot

一般选择去官网构建,但是可能会打不开,就可以去阿里云

阿里云的版本比较低,官网一般带括号的是属于测试阶段,也不要选。

image-20220903142451893

SpingBoot中包含很多的功能逐渐,我们按照需求添加组件

image-20220903142848377

git clone "https://start.aliyun.com/type=maven-project&language=java&architecture=none&bootVersion=2.3.7.RELEASE&baseDir=moudle2&groupId=top.nsddd&artifactId=moudle2&name=moudle2&description=Demo%20project%20for%20Spring%20Boot&packageName=top.nsddd.moudle2&packaging=jar&javaVersion=1.8&dependencies=web/moudle2.git" moudle2

直接使用git就好

官网安装

image-20220903143353843

Maven Project帮助我们下载和管理第三方jar包

骨架代码

官网的版本不需要去改,阿里云的比较低,需要修改一下

image-20220921153118847

修改pom.xml文件

项目结构:

PS D:\文\git\CS_COURSE\java\code\module3> pwd

Path
----
D:\文\git\CS_COURSE\java\code\module3


PS D:\文\git\CS_COURSE\java\code\module3> tree
卷 Data 的文件夹 PATH 列表
卷序列号为 3EA4-3AC8
D:.
├─.mvn
│  └─wrapper
├─src
│  ├─main
│  │  ├─java
│  │  │  └─top
│  │  │      └─nsddd
│  │  │          └─module3
│  │  └─resources
│  │      ├─static
│  │      └─templates
│  └─test
│      └─java
│          └─top
│              └─nsddd
│                  └─module3
└─target
    ├─classes
    │  └─top
    │      └─nsddd
    │          └─module3
    └─test-classes
        └─top
            └─nsddd
                └─module3

我们看一下包的结构:

image-20220921153650215

package top.nsddd.module3;

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

@SpringBootApplication
public class Module3Application {

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

}

和我们之前的hello world程序不一样的是:

  • 之前的问候语通过println()输出到终端窗口
  • 现在的问候语输出到浏览器页面上

显示在浏览器上

新建一个文件夹

package top.nsddd.module3;

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

@Controller    //以@开头的为注解:由springboot提供的
public class HelloController { 	//控制器类 - 用来处理web程序的输入、输出
    @RequestMapping("/hello")  //路径 Localhost:8080/hello
    @ResponseBody			 //控制方法的执行结果,由浏览器显示
    String name() {
        return "hello world";
    }
}

运行后浏览器搜索 http://localhost:8080/hello

image-20220921154806650

再添加一个方法:

package top.nsddd.module3;

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

@Controller
public class HelloController {
    @RequestMapping("/hello")  //路径 Localhost:8080/hello
    @ResponseBody
    String name() {
        return "hello world <h1>Hello World</h1>";
    }

    @RequestMapping("/my")
    @ResponseBody
    String my() {
        return "<b>我叫xiongxinwei</b>很高兴认识你!!!!!!!!<del>谢谢</del>";
    }
}

image-20220921155649955

输入处理

查询参数URL的格式:

http://localhost:8080/my?名=值 & 名=值

查询参数是?后的,支持正则

但是这样的数据处理不是很友好,我们用更友好的方式处理:

把js和html放在src/main/reources/static目录下

  • static代表起点

image-20220921161053240

然后我们可以在浏览器中访问

image-20220921161203645

END 链接