创建springboot程序的两种方式

第一个SpringBoot程序

官网中创建

官方提供了一个快速生成springboot应用的网站,IDEA中也集成了这个网站。进入到spring的官网,点击Projects中的springboot,滑倒界面的最下方点击Spring Initializr https://start.spring.io/

image

在其中填入一些相应的内容,在右边栏中加入依赖,这里我们只加一个spring web的依赖先,然后点击GENERATE生成

image

之后就可以下载他的zip压缩包,我们将其解压,就可以得到我们刚创建的工程

image

将其导入idea,可以看下其工程结构,这是一个标准的maven的工程结构。其中src/main/java/com.plokit.helloworld/HelloWorldApplication这个是我们程序的主入口,不能改,还有src/main/resources/application.properties这是我们spring的核心配置文件。

在其下载好它的依赖之后,我们可以直接启动其中的HelloWorldApplication其中的main函数。

image

启动完成后,可以在浏览器中来到localhost:8080

image

一个错误提示页,我们的项目目前什么都没有,所以这里也是啥也没有,停下程序。

我们在HelloWorldApplication同级处新建几个包:controller、dao、service、pojo,在controller中新建一个HelloController的类

@RestController
public class HelloController {

    //接口 http://localhost:8080/hello
    @RequestMapping("/hello")
    public String hello(){
//        调用业务,接收前端参数
        return "Hello World";
    }
}

这样很快的我们一个接口就好了,我们启动程序后,就可以直接访问这个接口 http://localhost:8080/hello

image

可以看到我们几乎什么都没有做,都是使用其默认的配置,没自己做什么配置,可以很快的进入开发,这都是基于它的自动装配原理。

我们可以看下我们目前的pom.xml文件,可以看到spring-boot-starter所有的springboot依赖都是使用这个开头的。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.5.3</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
	<groupId>com.plokit</groupId>
	<artifactId>helloworld</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>helloworld</name>
	<description>Demo project for Spring Boot</description>
	<properties>
		<java.version>1.8</java.version>
	</properties>
	<dependencies>
		<!--web依赖:tomcat,dispatcherServlet,xml....-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<!--单元测试-->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>
	<!--spring-boot-starter所有的springboot依赖都是使用这个开头的-->

        <build>
            <!--打jar包插件-->
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>
  • 项目元数据信息:创建时候输入的Project Metadata部分,也就是Maven项目的基本元素,包括: groupld、artifactld,version、name、description等
  • parent:继承spring- boot-starter-parent的依赖管理,控制版本与打包等内容
  • dependencies:项目具体依赖,这里包含了spring-boot-starter-web用于实现HTTP接口(该依赖中包含了Spring MVC),官网对它的描述是:使用Spring MVC构建Web (包括RESTful)应用程序的入门者,使用Tomcat作为默认嵌入式容器。; spring-boot-starter-test用于编写单元测试的依赖包。更多功能模块的使用我们将在后面逐步展开。
  • build:构建配置部分。默认使用了spring-boot-maven-plugin,配合spring-boot-starter-parent就可以把Spring Boot应用打包成JAR来直接运行。

我们可以将其直接打包成一个jar包在本地运行

image

我们就可以直接到目标文件夹中在命令行中运行这个jar包 java -jar .\目标jar包名.jar

image

之后就可以直接在浏览器中进入localhost:8080/hello 就能出现和上面相同的界面,微服务就是把服务拆成这样一个个的jar包。


IDEA中创建

我们一般在开发过程中直接在IDEA中直接创建springboot项目

image

image

之后填入自己的一些信息

image

这里我们试着什么依赖也不放,直接Next,之后就是工程的放置位置,自己放置。(可能因个人原因会很慢。。)

完成后,删掉其中一些不用的,剩下这些就好了(删不删无所谓

image

我们到pom.xml中,我们可以手动加入springboot-start-web的依赖,然后在maven中下载相应的包

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

有了这个依赖才能启动我们的网络服务,pom.xml中的starter是我们的启动器。

测试下是否创建成功,创建一个controller包,其中创建一个HelloController

@Controller
@RequestMapping("/hello")
public class HelloController {
    @GetMapping("/hello")
    @ResponseBody
    public String hello(){
        return "hello Plokit!";
    }
}

启动程序,来到 localhost:8080/hello/hello

image

成功显示,则项目搭建成功。

修改项目的端口号

在文件application.properties中可以直接修改项目的端口号为8081,其中加上

#更改项目的端口号
server.port=8081

这时我们重启我们的项目就只能在 localhost:8081/hello/hello这个地方才能访问到刚才的网页。

我们还能更改我们的这个启动图标 banner https://www.bootschool.net/ascii

image

比如,我们在那里拷贝一个佛祖的过来,然后在resources目录中新建一个banner.txt的文件,将其黏贴进去

////////////////////////////////////////////////////////////////////
//                          _ooOoo_                               //
//                         o8888888o                              //
//                         88" . "88                              //
//                         (| ^_^ |)                              //
//                         O\  =  /O                              //
//                      ____/`---'\____                           //
//                    .'  \\|     |//  `.                         //
//                   /  \\|||  :  |||//  \                        //
//                  /  _||||| -:- |||||-  \                       //
//                  |   | \\\  -  /// |   |                       //
//                  | \_|  ''\---/''  |   |                       //
//                  \  .-\__  `-`  ___/-. /                       //
//                ___`. .'  /--.--\  `. . ___                     //
//              ."" '<  `.___\_<|>_/___.'  >'"".                  //
//            | | :  `- \`.;`\ _ /`;.`/ - ` : | |                 //
//            \  \ `-.   \_ __\ /__ _/   .-` /  /                 //
//      ========`-.____`-.___\_____/___.-`____.-'========         //
//                           `=---='                              //
//      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^        //
//            佛祖保佑       永不宕机     永无BUG                   //
////////////////////////////////////////////////////////////////////

然后我们再次启动的时候就可以在控制台看到它的显示

image

(我愿称之为《程序猿核心技术》(手动狗头))

posted @ 2021-08-08 23:36  Plokit  阅读(162)  评论(0)    收藏  举报