教你搭建Spring Boot项目,包会!

目录

 

前言

开始搭建最简单的Spring Boot工程(下文会延伸)

第一步:打开IDEA,新建项目

第二步:选择Spring Initializr

 第三步:设置项目基本信息

第四步:为项目选择依赖

 第五步:创建项目文件夹

 第六步:等待IDEA完成项目的构建

 第七步:创建一个控制器

第八步:启动项目,访问测试

延伸——搭建实用的Spring Boot+JSP环境

第一步:打开File—Project  Structrue选项

 第二步:添加Modules

 第三步:添加相关路径及文件夹名称

 第四步:创建jsp文件夹以及jsp文件

 第五步:修改pom.xml,添加所需的依赖包

第六步:修改resources文件夹下的application.properties文件

第七步:修改控制器的处理

第八步:启动浏览器,访问测试

 总结


前言

之前做项目,大家一般都是搭建SSM环境或者SSH环境,不管项目是大是小,是复杂还是简便,我们都需要维护一堆的配置文件,尽管Spring支持使用注解的方式进行各个层级的组件的装配与维护,但是一系列的配置文件好像是必不可少的,比如要在web.xml配置DispatcherServlet,要在mvc配置文件配置视图解析器,扫描包含注解组件的包……不得不说,传统的SSM项目虽然与之前的EJB相比要高效很多,但是并不是所有的项目都适合这样的工程环境,搭框架的时间足以实现系统的一大半功能了。

但是如果我不想搭建复杂的SSM环境,又想很好地运用MVC模式、在项目中的组件之间解耦,怎么办呢?

这时候,Spring Boot就应运而生了,Spring Boot的目标就是简化Spring应用程序的开发,降低其开发成本,使开发者在尽可能小的阻力下开发Spring应用。在Spring Boot中,凭借它的自动配置、起步依赖、命令行界面等特性,可以没有web.xml,没有配置文件,没有构建说明,甚至没有应用服务器(Spring Boot内部包含服务器),实现“零配置”。

关于Spring Boot的详细介绍以及教程,在这里不做过多的阐述,尽量在代码里进行讲解,想学习的朋友可以查阅官方文档或者从网上搜索相关资料,很简单,相信通过下面这个例子,不敢说对它很精通,但最起码你可以掌握它的应用!

在下面的工程中,我们在IntelliJ  IDEA中进行搭建,因为IDEA对Spring Boot有很好的支持,是一个很不错的集成开发环境。

开始搭建最简单的Spring Boot工程(下文会延伸)

第一步:打开IDEA,新建项目

第二步:选择Spring Initializr

 第三步:设置项目基本信息

第四步:为项目选择依赖

这一步是为你的项目选择一些必要的依赖,比如数据库驱动包、web、I/O组件等等,这里我们只选择Web,Spring Boot会为我们配置好所需要的环境,并且自动导入延伸的依赖包,至于数据库什么的,各位如果用到了,选上就行了。这一步其实就是在pom.xml中为我们添加一些必要的jar包。

 第五步:创建项目文件夹

 第六步:等待IDEA完成项目的构建

初次搭建Spring Boot工程的朋友,可能要稍微等那么不到一分钟,IDEA会为我们进行必要的配置,完成之后的目录是这样的:

 这就是Spring Boot的简单项目结构,我们现在把影响市容的几个文件夹或文件删掉:

 第七步:创建一个控制器

现在我们什么配置都不做,在com.boot.demo包下新建一个文件夹controller(与DemoApplication类同一级),然后新建一个HelloController类,使用@RestController注解将其定义为一个控制器。

需要注意,不管是这里定义的控制器,还是真正的项目中的服务层组件,包层级都必须要小于启动类***Application的包路径,因为在Spring Boot中,启动项目之后,将加载***Application类所在包下及其子包下所有的组件,如果你定义的组件不在这个范围内,那么你定义的组件将无法注册到Spring容器中。为了规范,我们一般将包含相关组件的包,与***Application类放在同一级目录下。

 代码内容很简单,如下:

package com.boot.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {
    @RequestMapping("index.html")
    public String index(){
        return "Hello,World!";
    }
}

第八步:启动项目,访问测试

直接点击这个按钮进行启动,

当看到控制台打印出如下信息,说明启动成功(此时Spring Boot内置服务器的端口是8080,当然我们可以进行配置修改,下文介绍) :

 然后我们打开浏览器,输入localhost:8080/index.html,会出现如下页面:

 到这里,我们的Hello World程序就进行完了,可以看到,我们几乎什么都没有做,项目创建好之后只写了一个控制器,就可以进行页面访问了。

但是,一个Web系统绝对不是这么简单,通常我们会有JSP页面,MVC模式的请求处理……然而,Spring Boot本身是不支持JSP页面的,它比较提倡使用HTML进行编程,那么我们怎样才能达到自己的目的呢?

这就需要搭建Spring Boot+JSP的开发环境,很简单,只需要在前面的基础上进行小的修改,下面我们就开始!

延伸——搭建实用的Spring Boot+JSP环境

首先我们需要在src\main路径下添加一个webapp文件夹(注意不要乱起名,就叫webapp,而且与java、resource同级),但是这个文件夹可不是随便就能添加的,必须按照以下步骤进行部署:

第一步:打开File—Project  Structrue选项

 第二步:添加Modules

 第三步:添加相关路径及文件夹名称

首先是上边的内容:

 

然后是下半部分:

 点击OK,会弹出一个框,询问是否创建该文件夹,点击OK,然后点击右下角的Apply,然后点击OK退出此对话框。

然后你就会看到这样的一个结构(三者同级目录):

 第四步:创建jsp文件夹以及jsp文件

在webapp下创建jsp文件夹,并在此文件夹下新建文件index.jsp:

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" %>
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Hello</title>
</head>
<body>
你好,${name},这是你的第一个有模有样的Spring Boot应用程序。
</body>
</html>

 第五步:修改pom.xml,添加所需的依赖包

因为我们这是JSP文件,而且使用了表达式,所以我们必须在pom.xml中添加如下内容:

<dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <scope>provided</scope>
        </dependency>

如果它不能自动下载,你可以在左面目录结构那里,选中你的项目名右键,然后选中菜单栏里的“maven”选项,点击“Reimport”重新进行导入。

第六步:修改resources文件夹下的application.properties文件

这个文件是Spring Boot的配置文件,在这里我们可以进行相关的配置,比如端口号、视图解析器等等,下面我们将端口号指定为8088,并且设置视图解析器的前缀、后缀:

server.port=8088
spring.mvc.view.prefix=/jsp/
spring.mvc.view.suffix=.jsp

第七步:修改控制器的处理

将注解换为@Controller,因为@RestCotroller注解其实是@Controller和@ResponseBody两个的粘合版,所以刚才我们返回的字符串直接作为JSON数据打印在了页面上,并不会作为视图名做处理。

package com.boot.demo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;


@Controller
public class HelloController {
    @RequestMapping("index.html")
    public String index(Model model){
        model.addAttribute("name","老王");
        return "index";
    }
}

第八步:启动浏览器,访问测试

需要注意,我们将端口设置为了8088,所以输入localhost:8088/index.html,页面上会打印:

“你好,老王,这是你的第一个有模有样的Spring Boot应用程序。”

 总结

以上就是Spring Boot环境的搭建以及使用,有没有感觉很方便?我们没有写Spring的配置文件,也没有写web.xml文件,就实现了SSM环境的功能,只不过我们没有用数据库,就算用数据库,只要在创建项目时选上依赖即可,然后同样可以创建三层架构的目录,创建SQL映射文件,使用注解定义组件……这不就是一个使用Spring Boot开发的Web项目吗?我们没有引入复杂的配置文件,只在application.properties中设置了三行代码,就完成了同样的功能,这就是Spring Boot的极简理念,比Spring还要简。

以后博主会继续更新相关的知识,做出分享,希望可以与大家交流!

猜你喜欢

转载自blog.csdn.net/wzy18210825916/article/details/83311265