工程搭建与验证

本文涉及的产品
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 本文介绍如何基于阿里云脚手架快速搭建SpringBoot工程(选用2.7.6版本),并整合Spring Security实现基础安全控制。内容涵盖项目创建、代码导入、Web接口开发、Security依赖引入及登录验证,最终通过默认用户密码访问受保护接口,完整代码见GitHub指定分支。

1-工程搭建
1.脚手架搭建https://start.aliyun.com/bootstrap.html
借助于阿里云脚手架,我们可以快速创建一个maven或gradle工程

如上图创建完之后,点击:浏览代码。即可查看代码大致目录结构,如下图

注意:这里默认的SpringBoot版本是3.0.2,其默认使用JDK需要17,一般建议大家使用低一点的版本,这里笔者采用的:2.7.6,即上图版本中的第二个。
2.代码导入
确认无误后,我们下载代码,并完成idea的工程导入

3.代码验证
1.引入web依赖


org.springframework.boot
spring-boot-starter-web

2.编写访问入口
package com.yzxb.SpringSecurity.web;

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

@RestController
@RequestMapping("demo")
public class HelloController {

@GetMapping
public String helloWorld() {
    return "Hello Spring Security";
}

}
3.启动工程验证

2.整合SpringSecurity
1.引入依赖


org.springframework.boot
spring-boot-starter-security

2.启动验证
启动过程中会发现,日志已经有明显变化

此时我们再去浏览器访问,会发现系统自动跳转到路径:login,如下:

这就验证了我们已经完成了SpringSecurity的整合,此时我们可以用默认账户登录:
● 用户名:user
● 密码:控制台输出,这里就是:e201f3a8-3db8-4a02-b985-9f276b14c6d7
这里也说明了:默认的密码在每次重启工程后是会变化的
当输入正确的用户名密码后,将自动跳转至我们前面访问的路径:http://localhost:8080/demo,结果:

3.完整代码获取
git仓库地址:https://github.com/Herbbbb/SpringSecurity.git
git分支:Day01-整合Springboot与SpringSecurity

相关文章
|
3月前
|
消息中间件 缓存 NoSQL
秒杀系统高并发核心优化与落地全指南
本文系统阐述秒杀系统架构设计:剖析瞬时高并发、库存超卖等核心痛点,提出漏斗过滤、读写分离、强一致性等设计原则;详解前端、Nginx、网关、业务、缓存、消息队列及数据库七层优化方案;并给出Redis预扣减+异步落库等生产级解决方案与完整代码实现。
594 3
|
6月前
|
SQL Java 数据库连接
持久层框架MyBatisPlus
MyBatisPlus是MyBatis的增强工具,简化单表CRUD操作,无需编写XML,通过BaseMapper、条件构造器、分页插件等实现高效开发,支持自定义SQL、逻辑删除、枚举与JSON处理,提升开发效率。
|
6月前
|
canal 消息中间件 关系型数据库
配置数据同步环境
配置Canal+RabbitMQ实现MySQL数据同步,通过开启Binlog日志、创建专用用户并授权,部署Canal监听指定表变更,将增量数据实时发送至RabbitMQ指定队列,确保hm-item库中item_sync表的数据变更可被下游服务消费。
|
6月前
|
缓存 NoSQL Java
微服务高频面试题
本课程系统讲解微服务架构核心知识,涵盖SpringBoot与SpringCloud应用、Nacos注册与配置中心、OpenFeign远程调用、Sentinel熔断限流、Gateway网关鉴权、分布式事务Seata、RabbitMQ消息队列、Elasticsearch搜索及Redis缓存等技术,结合实战场景解析服务治理、数据同步与高并发处理方案。
|
6月前
|
XML Java 数据格式
@Configuration
被@Configuration标注的类会被Spring容器识别为配置类,作用等同于XML配置文件。通过@Bean注解可注册Bean实例,配合AnnotationConfigApplicationContext可启动IOC容器并加载配置类及其中的Bean,实现基于Java的配置管理。
|
6月前
|
Java 大数据
ArrayList扩容机制
ArrayList 添加元素时,先调用 `ensureCapacityInternal()` 确保容量,首次添加时默认扩容至 10。`grow()` 方法实现扩容,新容量为原容量的 1.5 倍(位运算优化)。当元素数超当前容量时触发扩容,保证添加高效。length 是数组属性,length() 是字符串方法,size() 是集合元素个数获取方法。
|
6月前
|
数据采集 领域建模 数据库
领域模型图(数据架构/ER图)
数据架构核心输出为ER图,包含实体、关系与属性。通过四色原型法进行领域建模:红色MI表时标事件,绿色PPT为业务对象,黄色Role示参与角色,蓝色DESC提供描述信息。以风控系统为例,从业务流程提炼MI,补充PPT实体与Role角色,添加DESC属性,最终提取绿色PPT为实体、红色MI为关系,构建ER图,明确一对一、一对多、多对多约束,形成清晰数据模型。(239字)
|
6月前
|
消息中间件 Java 数据安全/隐私保护
异步消息组件MQ基础
本课程系统讲解RabbitMQ在微服务中的应用,涵盖同步与异步调用、工作队列、发布订阅模型及Fanout、Direct、Topic交换机特性,掌握惰性队列、优先级队列配置,学习SpringAMQP集成与消息转换器优化,并通过商城项目实战实现支付、下单等场景的异步解耦。
|
6月前
|
存储 消息中间件 开发框架
应用架构图
在业务架构基础上,技术架构将需求转化为技术实现,涵盖分层设计、技术选型与关键组件关系。包括单体四层结构(表现、业务、数据、基础层)与分布式SOA架构,明确应用内外调用关系及边界,形成完整技术体系。
|
6月前
|
Java 数据库 Sentinel
服务保护、分布式事务
本课程系统讲解微服务保护与分布式事务控制,涵盖雪崩问题、熔断降级、限流隔离等核心机制,基于Sentinel实现服务防护,并结合Seata完成分布式事务管理,掌握AT、XA等模式原理与应用。

热门文章

最新文章