暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

React全栈式开发 | Spring Boot应用开发

637

Spring Boot应用开发


01

Spring Boot开发的一般步骤

Spring Boot应用开发的一般步骤包括:

●Step 1:打开开发工具IDEA;

●Step 2:创建项目;

●Step 3:判断是否需要添加依赖;如果不需要则跳过此步骤;

●Step 4 :创建类、接口(按照实体类、数据访问接口和类、业务接口和类、控制器类等顺序);

●Step 5 :判断是否需要创建视图文件和CSS等文件;如果不需要则跳过此步骤;

●Step 6:判断是否需要创建、修改配置文件,如果不需要则跳过此步骤;

●Step 7:判断是否需要图片、语音、视频等文件,如果不需要则跳过此步骤;

●Step 8:判断是否需要下载辅助文件、包和安装工具(如数据库MySQL),如果不需要跳过此步骤;由于本书中用到的工具安装过程比较简单,本书对此步骤介绍比较少。值得注意的是,Step 3至Step 8五个步骤之间的顺序可以互换。

●Step 9:完成了开发之后,就可以运行程序了。


02

实现Hello World的Web应用

B.2.1用IDEA创建项目

打开IDEA后,在如图B-1所示的欢迎界面中选择New Projcet链接进入项目创建界面。选择Spring Initializr类型的项目,如图B-2所示(没有填写项目信息时)。


■ 图B-1 IDEA启动后的欢迎界面

■ 图B-2  IDEA创建新项目时设置项目信息的结果

如图B-2所示,在所创建项目Group后面输入edu.bookcode,Artifact后面输入springboot-helloworld。项目名称Name后面保留自动生成的springboot-helloworld;项目位置Location后面可以选择或创建项目所在的目录;所创建项目的管理工具类型Type后面选择Maven。由于Maven的参考资料比Gradle的参考资料更多且更容易获得,本书使用Maven进行项目管理。开发语言Language后面选择Java;所创建项目默认的包名Package后面可以修改为edu.bookcode;项目Project SDK后面选择(Java) 11;Java的具体版本Java后面选择11;打包方式Packaging后面选择Jar。

填写完项目的信息后,单击Next按钮就可以进入选择项目依赖(Dependencies)的界面,如图B-3所示。如图B-3所示,IDEA自动选择了创建项目时Spring Boot的最新版本(如2.5.2版),也可以手动选择所需要的版本;再手动为所创建的项目选择Web依赖。选择完Web依赖,IDEA就可以帮助开发者完成Web项目的初始化工作。创建项目时,也可以不选择任何依赖,而在文件pom.xml中添加所需要的依赖。


■ 图B-3  IDEA创建新项目时选择依赖(Dependencies)的界面

单击Finsh按钮,就可以进入到项目界面。由于所创建的项目管理类型为Maven Project;所以项目中pom.xml文件是一个关键文件,其代码如下例B-1所示。

【例B-1】pom.xml文件代码示例。
<?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.2</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>edu.bookcode</groupId>
    <artifactId>springboot-helloworld</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot-helloworld</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>11</java.version>
    </properties>
 <!--上面加粗内容和图2-2中设置的项目元数据对应-->
<!--下面加粗内容和图2-3中选择的Web依赖对应-->
    <dependencies>
        <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>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>


例B-1代码中加粗部分代码和在图B-2和图B-3中输入、选择的项目信息对应;而其他代码是IDEA自动生成的辅助内容。其中,之间的内容表示父依赖,是一般项目都要用到的基础内容;其中包含了项目中用到的Spring Boot的版本信息。之间的内容表示了项目中所用到的Java版本信息。之间信息是Maven的重点内容,包含了项目中所用到的依赖信息;例如,spring-boot-starter-web表示要用到Web依赖。之间的内容表示编译运行时要用到的相关插件。

B.2.2用IDEA实现Hello World的Web应用

IDEA创建完项目之后,项目中目录和文件的构成情况如图B-4所示。


■ 图B-4 IDEA创建项目后项目的目录和文件构成情况

Spring Boot项目中的目录、文件可以分为三大部分。其中,src\main\java目录下包括主程序入口类SpringbootHelloworldApplication,可以运行该类来启动程序;开发时需要在此目录下添加所需的接口、类等文件。src\main\resources是配置目录,该目录用来存放应用的一些配置信息,比如配置服务器端口、数据源的配置文件application.properties。由于开发的是Web应用,因此在src\main\resources产生了 static子目录与templates子目录,static子目录主要用于存放静态资源,如图片、CSS、JavaScript等文件;templates子目录主要用于存放Web页面动态视图文件。src\test\java是单元测试目录,自动生成的测试文件SpringbootHelloworldApplicationTests位于该目录下,用该测试文件可以测试Spring Boot应用。

在自动生成的目录和文件的基础上,在edu.bookcode包下新建controller子包。然后,在包edu.bookcode.controller中创建类HelloWorldController,修改类HelloWorldController的代码(一般来说创建类之后需要修改类的代码,为了叙述的简便,将创建类并修改类代码的过程简称为创建类),代码如例B-2所示。

【例B-2】类HelloWorldController代码示例。
package edu.bookcode.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController                            //返回的默认结果为字符串
public class HelloWorldController {
    @RequestMapping("/hello") 映射信息,相对路径,往往是URL的组成部分
    public String hello(){
        return "Hello World!";
    }
}


接着运行入口类SpringbootHelloworldApplication,成功启动自带的内置Tomcat。在浏览器中输入localhost:8080/hello后,浏览器中的显示结果如图B-5所示。


■ 图B-5 IDEA实现Hello World的Web应用运行结果

B.2.3配置项目属性

在实现HelloWorld应用的基础上,可以基于项目属性配置实现对HelloWorld应用的扩展。在Spring Boot中主要通过application.properties文件、application.yml文件实现对属性的配置;这两种文件的格式不同,但内容对应、作用相同。

可以修改配置文件application.properties配置项目内置属性,代码如例B-3所示。

【例B-3】修改后的配置文件application.properties代码示例。
#配置项目内置属性,修改端口
server.port=8888
server.servlet.context-path=/website


运行程序后,在浏览器中输入localhost:8888/website/hello,结果如图B-6所示。结合例B-3中代码,对比图B-5、图B-6中URL,可以发现例B-3通过配置文件修改了服务器默认的端口和路径。


■ 图B-6 修改Web应用Hello World的服务器默认端口和路径配置后的结果



实例讲解

React全栈式实战开发入门

精彩回顾

IDE安装简介


精彩预告

Python框架应用开发

Go开发入门




03

参考书籍


书名:React全栈式实战开发入门(微课视频版)

配有源码、课件、210分钟微课视频等资源,含48个知识点示例、6个整合开发案例

作者:吴胜
定价:79.90
ISBN9787302615590
出版日期:2023.01.01


⇡  点击上图查看更多图书信息 


技术背景

React(或称为React.js)作为三大前端开发框架之一,有着广泛的应用。本书由浅入深、循序渐进地介绍React的应用开发,不包含React Native的应用开发。在介绍React应用开发的基础上,考虑到开发时前后端分离的需求和React的灵活性,本书还介绍了不同的框架(语言)与React的整合开发,如Spring Boot、Python框架(Django和Flask)、Go等与React的整合开发。结合不同框架(语言)与React的整合开发还介绍了fetch、axios、把前端打包到后端、XMLHttpRequest等方式的前后端整合开发。





文章转载自清华计算机学堂,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论