集中式整合之搭建Springboot环境|学习笔记

简介: 快速学习集中式整合之搭建Springboot环境

开发者学堂课程【Spring Security知识精讲与实战演示(三)集中式整合之搭建Springboot环境】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/732/detail/13058


集中式整合之搭建Springboot环境

 

SpringSecurity与SpringBoot的初步整合

在初步整合中,不使用自定义的jsp也页面,也不使用数据库。

首先创建工程,先在本地创建一个工程,再在这个空的工程下面创建一个新的项目,不一定都要创建project,可以创建module,只要代码完整就可以,也是一个新的项目。

image.png

在这里不能创建project,如果创建就会形成一个新的窗口,这里最好创建的项目都在一个文件夹下,所以选择创建module。

image.png

这里需要创建的是一个Maven工程,所以选择Maven。GroupId是公司和组织的名称(com.itheima),项目名以所用到的技术点命名,只写主要的技术名,如这里写springboot_security_jsp,然后点击下一步,点击finish,工程创建完成。

image.png

接下来在工程中导入SpringBoot相关的jar包,版本是2.1.3。

程序:

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.1.3.RELEASE</version>

<relativePath/>

</parent>

<dependencies>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

</dependencies>

第一段程序:一般使用springboot都会使用复工程,好处是以后再使用springboot的其它包的时候,就不需要再指定版本号,以后使用的版本都默认和复工程使用的版本一样。

relativePath的作用是:以后再寻找springboot的jar包的时候,从中央仓库找而不是在本地找,如果没联网的话,还是从本地找的,官网要求是加上这一句,尽量加上,不加也没有影响。

第二段程序:springboot中只要出现starter就说明当前这个系统中具有启动器,springboot有自身的tomcat插件,本身就可以使用springboot集成的tomcat插件来启动项目,如果要启动就必须带有启动器。

Web说明只要导了这样的一个包,就说明当前的项目中已经具备了web环境,通俗来说就是当前项目中已经具备了springmvc环境,虽然没有做springmvc的jar包的导入,也没有做任何springmvc相关的配置,但此时已经具备了springmvc相关环境。

这时再去创建一个配置文件,虽然这个时候配置文件中没有必要的点,但是后续会用到,所以先创建出来。

文件命名为application.yml,在这里要指定一个端口号,port:8080,在集中式项目中端口号指定不指定都无所谓,不指定就默认8080,

image.png

指定的话指定什么就是什么;一般情况下,分布式是要求必须要指定的,因为分布式启动的项目不止一个,多个端口号如果一样,可能会出现jar包冲突。

配置文件制定完成之后,指定启动类,命名

com.itheima.SpringSecu

rityApplication,在启动类上,需要增加一个注解SpringBootAppli

cation,在启动类内部写一个main方法,public static void main,再在里面写SpringApplication.run,在里面写参数SpringSecurity

Application.class,args,到此,启动类创建完成。

启动类完整程序:

package com. itheima;

import org. springframework.boot. SpringApplication;

import org.springframework.boot. autoconfigure.

SpringBootApplication;

@SpringBootApplication

public class SpringSecurityApplication

public static void main(String[] args){

SpringApplication.run(SpringSecurityApplication.class, args);

}}

启动类创建完成之后,如果想测试一下这个环境通不通,可以选一个测试的处理器,可以在com.itheima的这个包的基础上再创建一个子包叫controller.ProductController,即创建一个产品的controller,这是一个处理器类,需要将对象放入容器,所以要加上一个注解,这里加一个controller注解。

接下来写一个副路径RequestMapping(“/product”),按道理是要将业务层方法注入到controller对象中,但是这里只是一个测试的demo,没有业务层,所以这里不需要注入service。

接下来来写处理器,首先是public String findALL(尝试所有),里面加一个@RequestMapping,可以写路径也可以不写,这样的话只需要访问副路径就可以访问当前处理器。

接下来直接写return“success”,此时需要注意,如果程序写成这样,return要寻找的是名字为success的页面,这样写是找不到的。所以可以暂时不让处理器访问这样一个页面,可以先返回一个数据,就需要将字符名称返回成一个字符串,即不返回页面只返回一个数据,只要在处理器方法上加一个ResponseBody就可以了。

也可以将这个注解加到类上,加到类上的话,所有的处理器都会变成返回数据而不是跳转页面,当前只需要这一个处理器返回数据,那么将注解加到这个处理器的方法上即可。

测试完整程序:

import org. springframework. stereotype. Controller;

import org.springframework. web.bind.

annotation.Request/appin

import org. springframework. web.bind. annotation. ResponseBody;

@Controller

@Requestiapping("/product”)

public class ProductController {

@RequestMapping

@ResponseBody

public String findA11(){

return "success";

}}

此时,springboot的环境就已经搭建好了,此时并没有加入权限相关的一些内容,这个时候这个处理器应该是可以正常访问的。

测试:

启动当前项目,直接使用springboot内置的启动类直接启动。

启动完成后,打开浏览器,输入localhost:8080/product,然后回车。这样就正常访问到了处理器,此时并没有加入任何权限和相关的内容,所以必然是可以正常访问的。

 image.png

相关文章
|
6月前
|
Arthas Java 测试技术
Docker 环境中 Spring Boot 应用的 Arthas 故障排查与性能优化实战
Docker 环境中 Spring Boot 应用的 Arthas 故障排查与性能优化实战
|
5月前
|
运维 安全 Java
SpringBoot运维篇(打包,多环境,日志)
SpringBoot运维篇(打包,多环境,日志)
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的环境保护生活App附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的环境保护生活App附带文章源码部署视频讲解等
60 0
|
4月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue的营商环境行动计划管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue的营商环境行动计划管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
27 0
|
5月前
|
Java 测试技术 数据库
【单文件版本】java SpringBoot 切换不同的运行环境(生产环境、开发环境、测试环境)SpringBoot配置多个不同运营环境
【单文件版本】java SpringBoot 切换不同的运行环境(生产环境、开发环境、测试环境)SpringBoot配置多个不同运营环境
46 0
|
5月前
|
Java 测试技术 数据库
java SpringBoot 切换不同的运行环境(生产环境、开发环境、测试环境)SpringBoot配置多个不同运营环境【多文件版本】
java SpringBoot 切换不同的运行环境(生产环境、开发环境、测试环境)SpringBoot配置多个不同运营环境【多文件版本】
70 0
|
6月前
|
Java 应用服务中间件 Maven
SpringBoot概述&SpringBoot基础配置&yml的使用&多环境启动
SpringBoot概述&SpringBoot基础配置&yml的使用&多环境启动
100 2
|
5月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的环境保护生活App的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的环境保护生活App的详细设计和实现(源码+lw+部署文档+讲解等)
31 0
|
6月前
|
Java Shell 测试技术
环境切换大法:掌握Spring Boot多套配置与@Profile注解的高级技巧
环境切换大法:掌握Spring Boot多套配置与@Profile注解的高级技巧
136 2
环境切换大法:掌握Spring Boot多套配置与@Profile注解的高级技巧
|
6月前
|
消息中间件 人工智能 Java
Spring Boot+RocketMQ 实现多实例分布式环境下的事件驱动
Spring Boot+RocketMQ 实现多实例分布式环境下的事件驱动
160 1