OAuth2.0实战案例2

简介: 本节介绍如何创建一个基于Spring Boot的资源服务模块,包括工程搭建、依赖导入(如Web、Security、OAuth2等)、配置文件设置、启动类与Mapper扫描,以及编写简单的商品查询接口,实现基础资源访问功能。

2.创建资源模块

2.1 创建工程并导入依赖

<parent>

 <artifactId>springboot_security_oauth</artifactId>

 <groupId>com.itheima</groupId>

 <version>1.0-SNAPSHOT</version>

</parent>

<modelVersion>4.0.0</modelVersion>

<artifactId>oauth_source</artifactId>


<dependencies>

 <dependency>

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

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

 </dependency>

 <dependency>

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

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

 </dependency>

 <dependency>

   <groupId>org.springframework.cloud</groupId>

   <artifactId>spring-cloud-starter-oauth2</artifactId>

 </dependency>

 <dependency>

   <groupId>mysql</groupId>

   <artifactId>mysql-connector-java</artifactId>

   <version>5.1.47</version>

 </dependency>

 <dependency>

   <groupId>org.mybatis.spring.boot</groupId>

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

   <version>2.1.0</version>

 </dependency>

</dependencies>

2.2 创建配置文件

server:

port: 9002

spring:

datasource:

 driver-class-name: com.mysql.jdbc.Driver

 url: jdbc:mysql:///security_authority

 username: root

 password: root

main:

 allow-bean-definition-overriding: true

mybatis:

type-aliases-package: com.itheima.domain

configuration:

 map-underscore-to-camel-case: true

logging:

level:

 com.itheima: debug

2.3 创建启动类

@SpringBootApplication

@MapperScan("com.itheima.mapper")

public class OAuthSourceApplication {

   public static void main(String[] args) {

       SpringApplication.run(OAuthSourceApplication.class, args);

   }

}

2.4 创建处理器

@RestController

@RequestMapping("/product")

public class ProductController {

   @GetMapping

   public String findAll(){

       return "查询产品列表成功!";

   }

}

相关文章
|
前端开发 JavaScript 容器
|
2月前
|
SQL Java 数据库连接
MyBatis 分页机制详解:从 RowBounds 到物理分页实践
MyBatis分页策略解析:逻辑分页(RowBounds)将全量数据加载至内存,仅适用于小数据量;物理分页通过SQL层面限制返回数据,性能更优。推荐使用PageHelper插件,自动适配数据库方言,一行代码实现高效分页,避免OOM风险,提升系统稳定性。
|
2月前
|
SQL Java 关系型数据库
MyBatis 动态 SQL 详解:灵活构建复杂查询条件
MyBatis提供强大的动态SQL机制,通过`&lt;if&gt;`、`&lt;where&gt;`、`&lt;foreach&gt;`等标签实现条件判断、循环拼接,避免手动字符串处理。支持智能WHERE、SET生成,兼容多数据库模糊查询,提升代码安全性与可维护性,适用于复杂查询、批量操作等场景。
|
2月前
|
缓存 前端开发 安全
什么是跨域?一文彻底搞懂 CORS 机制
本文深入解析Web开发中的跨域问题,涵盖同源策略、CORS原理、简单请求与预检请求机制,以及前后端配置方法,帮助开发者理解并解决常见的CORS错误,安全实现跨域资源共享。
|
2月前
|
SQL 监控 安全
常见网络攻击类型详解:从原理到防御
本文系统介绍8种常见网络攻击类型,包括恶意软件、网络钓鱼、中间人攻击、DDoS、SQL注入等,剖析其原理与防御策略,助力提升个人与企业网络安全防护能力。
|
2月前
|
XML Java 数据格式
Spring Boot 是什么?—— 简化 Spring 开发的革命性工具
自2002年Spring框架兴起,企业级Java开发迎来变革。但繁重的XML配置、复杂集成与外部容器依赖等问题凸显。2013年,Spring Boot应运而生,以自动配置、起步依赖、内嵌服务器等特性,实现“约定优于配置”,极大提升开发效率。它非替代Spring,而是其现代化加速器,让开发者专注业务,成为微服务与云原生时代的首选基石。
|
2月前
|
机器学习/深度学习 Java 数据库连接
MyBatis 关联映射详解:1:1、1:N、N:1 与 N:N 实现方式
本文详解 MyBatis 中 resultMap 的四种关联映射:一对一、一对多、多对一和多对多,结合代码示例讲解实现方式与最佳实践,助你掌握复杂对象关系的数据映射技巧。
|
2月前
|
NoSQL Shell Linux
Windows 系统下的 MongoDB 单机部署
本文详细介绍 MongoDB 在 Windows 和 Linux 系统中的单机部署方法,涵盖下载安装、目录配置、服务启停、Shell 与 Compass 连接等步骤,助你快速搭建开发与生产环境。
|
6月前
|
Windows
企业微信无法正常启动,报错0xc0000142,解决办法
企业微信无法正常启动,报错0xc0000142,解决办法
1901 0
|
9月前
|
存储 人工智能 Shell
PVE开源虚拟化常见配置
PVE开源虚拟化常见配置
1326 12
PVE开源虚拟化常见配置