• 我的订阅
  • 科技

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

类别:科技 发布时间:2023-01-18 10:00:00 来源:书圈
React全栈式开发 | Spring Boot应用开发

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所示(没有填写项目信息时)。

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

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

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

■ 图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中添加所需要的依赖。

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

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

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

【例B-1】pom.xml文件代码示例。

< projectxmlns= "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/>

parent>

< groupId> edu.bookcode groupId>

< artifactId> springboot-helloworld artifactId>

< version> 0.0.1-SNAPSHOT version>

< name> springboot-helloworld name>

< deion> Demo project for Spring Boot deion>

< properties>

< java.version> 11 java.version>

properties>

< 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所示。

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

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

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

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

【例 B-2】类 HelloWorldController代码示例。

packageedu.bookcode.controller;

importorg.springframework.web.bind.annotation.RequestMapping;

importorg.springframework.web.bind.annotation.RestController;

@ RestController//返回的默认结果为字符串

public class HelloWorldController {

@ RequestMapping("/ hello") //映射信息,相对路径,往往是URL的组成部分

public String hello{

return" HelloWorld!";

}

}

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

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

■ 图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通过配置文件修改了服务器默认的端口和路径。

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

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

实例讲解

React全栈式实战开发入门

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

精彩回顾

IDE安装简介

精彩预告

Python框架应用开发

Go开发入门

03

参考书籍

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

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

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

技术背景

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

责任编辑:

以上内容为资讯信息快照,由td.fyun.cc爬虫进行采集并收录,本站未对信息做任何修改,信息内容不代表本站立场。

快照生成时间:2023-01-18 10:45:11

本站信息快照查询为非营利公共服务,如有侵权请联系我们进行删除。

信息原文地址:

python的基础知识和应用
...应用Python可以用于处理音频和视频文件,尤其是在多媒体应用开发中。通过使用OpenCV和Pydub等库,开发者可以实现音视频的编辑和处理功能
2024-10-12 10:41:00
用Playwright 进行组件测试
在软件开发生命周期(SDLC)中及早发现错误可以节省时间和成本。在组件测试中,该方法涉及单独测试单个组件或模块以验证它们的功能并确保它们满足要求。这种类型的测试可以在开发过程的早
2023-04-23 15:38:00
安卓15开发者预览版发布
...官网今日发文表示,我们今天高兴地发布了第一版Android15开发者预览版,期待您与我们携手,共同构建更优质的Android平台
2024-02-17 20:59:00
...它是网站或应用程序中为消费者设计的部分。什么是前端开发人员?前端开发人员,也称为前端web开发人员,是负责界面设计和实现的专业人员。用户需要这个接口,以便他们可以访问相关的应
2022-12-19 10:00
...发布会上表示,全年生态环境部审批重大基础设施和资源开发、煤炭保供、重大产业项目、海洋工程、核与辐射等项目环评共180个,涉及总投资超过1.9万亿元。对具备条件的2700多个政
2023-01-17 17:51:00
...从而实现各种自定义修改和应用侧载等功能。而现在一名开发者设法利用iOS16中发现的漏洞,在不需要越狱的情况下就能更改iOS系统的默认字体
2022-12-28 19:09:00
微软集成开发环境visualstudio2022正式发布
微软集成开发环境(IDE)工具VisualStudio2022于今天发布了17.5正式版更新,适用于Windows和macOS平台的版本已开放下载
2023-02-22 12:43:00
谷歌新增安卓/ios模拟器支持,添加了一系列开发模板
...React、等多款热门框架及一系列AI模型、编程语言,允许开发者使用浏览器跨平台开发应用,从而“统一全平台开发流程”
2024-01-30 03:03:00
数据要素市场前景势头强劲——2024年“数据要素×”大赛圆满
...据赋能,乘数而上”为主题,作为国内首个聚焦数据要素开发应用的全国性大赛,它不仅展示了我国在数据要素开发利用方面的最新成果,更为推动数据要素市场化配置注入了强劲动力。数据要素×
2024-11-05 17:46:00
更多关于科技的资讯:
兰研荣登2024年度泉州创新企业十强
3月20日,由泉州市委宣传部、市委金融办、市发改委、市工信局、市住建局、市商务局、市退役军人事务局、市数据管理局、市工商联
2025-04-02 14:01:00
SU7事故遇难者家属回应雷军:鲜活生命已离世 车企应对事故有足够的敬畏之心
快科技4月2日消息,昨晚雷军在其个人微博发文对小米SU7近日事故回应,而这也被冲上了热搜。他表示,我代表小米,表示最深切的哀悼
2025-04-02 14:10:00
3月20日,金融科技公司小赢科技发布了其截至2024年12月31日的第四季度及年度未经审计的财务业绩。财务数据显示:截至2024年12月31日的在贷余额为523
2025-04-02 14:26:00
汤臣倍健:跨越性价比,用户爱上“质价比”
鲁网4月2日讯过去几年,流量红利降临,众多低质低价的白牌迎风而起。然而如今流量红利退潮,消费者更加清醒,“性价比”策略也逐渐陷入困境
2025-04-02 14:30:00
传小米汽车内测“安全分Beta”:可评估驾驶行为 降低事故风险
快科技4月2日消息,近日,有媒体报道,小米汽车App正在内测“安全分Beta”系统。该系统将为车主提供全方位的安全评估与优化建议
2025-04-02 14:40:00
李斌回应沈斐接手乐道:首要任务是做好销售基本功
快科技4月2日消息,今日,乐道汽车总裁艾铁成宣布离职,不再担任乐道汽车总裁和蔚来高级副总裁。蔚来还对乐道汽车进行新的人事任命
2025-04-02 14:40:00
宁德时代中国石化达成合作协议:要建10000座换电站
快科技4月2日消息,宁德时代官宣,近日,其与中国石化在北京签署合作框架协议。根据协议,双方将全面深化长期战略合作关系,共同建设覆盖全国的换电生态网络
2025-04-02 14:40:00
Etsy开店的优劣势分析
Etsy作为一个专注于手工艺品、古董以及独特商品的电子商务平台,为创作者和小型企业提供了一个展示和销售产品的机会。开设Etsy店铺可以带来许多好处
2025-04-02 14:42:00
CMEF医疗器械展必看!富丽康液态镜头如何破解手术光学难题?
2025年中国国际医疗器械展览会(CMEF)即将于4月8日-11日在上海国家会展中心震撼启幕!作为全球医疗行业的顶级盛会
2025-04-02 14:45:00
海信空调易省电Pro空调预售:AI省电41%!告别“电费刺客”
3月31日,海信空调正式发布易省电E370Pro,以APF值5.5、AI省电41%的创新突破将空调节能标准提升至全新维度
2025-04-02 14:46:00
近日,作为2025中关村论坛年会的重要组成部分,中关村国际技术交易大会“全球高校科技成果转化促进大会”在北京工业大学举行
2025-04-02 14:54:00
泸州老窖携手《三体》推出联名白酒 开启科幻与传统文化跨界新纪元
2025年3月31日,北京,当千年酒香邂逅宇宙星辰,一场跨越时空的文化碰撞在北京首钢园香格里拉酒店璀璨上演。泸州老窖与科幻巨作《三体》联袂打造的“泸州老窖|三体”与“国窖1573|三体”全球发布会盛大启幕
2025-04-02 15:05:00
智元机器人与顶尖具身智能公司Pi合作:加速具身智能技术落地
快科技4月2日消息,据报道,智元机器人宣布与国际顶尖具身智能公司Physical Intelligence(Pi)建立深度合作伙伴关系
2025-04-02 15:10:00
君乐宝加速科研成果转化,为全球消费者提供科学健康方案
在健康食品产业蓬勃发展的今天,科研创新无疑是推动行业进步的关键力量。以“科学营养”为核心理念的君乐宝乳业集团,始终站在科研创新的前沿
2025-04-02 15:14:00
携手广州领矿,开启多元商业机遇
在广州天河区的商业浪潮中,广州领矿化工产品有限公司宛如一颗闪耀的明星,自2013年扬帆起航以来,不断拓展业务版图,凭借多元产品与优质服务
2025-04-02 15:31:00