摘要:Github OAuth 第三方登录示例 1、第三方登录原理 第三方登录的原理是借助OAuth授权来实现,首先用户先向客户端提供第三方网站的数据证明自己的身份获取授权码,然后客户端拿着授权码与授权服务器建立连接获得一个Access Token,之后客户端就可以通过Access Token来与资源服务
阅读全文
摘要:# SpringBoot对接OpenAI 随着人工智能技术的飞速发展,越来越多的开发者希望将智能功能集成到自己的应用中,以提升用户体验和应用的功能。OpenAI作为一家领先的人工智能公司,提供了许多先进的自然语言处理和语言生成模型,其中包括深受欢迎的GPT-3.5模型。本文将介绍如何利用Spring
阅读全文
摘要:# Dozer对象转换 ## 介绍 Dozer 是一个 Java Bean 到 Java Bean 的映射器,它可以递归地将数据从一个对象复制到另一个。通常情况下,这些Java Beans将是不同的复杂类型。 Dozer支持简单的属性映射,复杂的类型映射,双向映射,隐式-显式映射,以及递归映射。这包
阅读全文
摘要:# Spring-Boot-Starter ## 自定义Starter 案例一:读取application.yml中的参数 ### 1、创建 1、创建maven工程hello-spring-boot-starter  2、创建一个bucket 的首字母缩写,是一种编程范式,它的目的是通过**分离横切关注点(cross-cutting concerns)**来提升代码的模块化程度。 AOP中提到的关注点,其实就是一段特定的功能,有些关注
阅读全文
摘要:在使用Spring开发时,Spring提供了五种scope,分别为singleton,prototype,request,session,global session。 上图为各个scope描述的官方文档截图。Spring在一开始的时候只提供了singleton和prototype两种bean sc
阅读全文
摘要:代理模式 代理模式(Proxy Pattern):是指为其他对象提供一种代理,以控制对这个对象的访问。 代理对象在客户端和目标对象之间起到中介作用,代理模式属于结构型设计模式。 使用代理模式主要有两个目的: 一是保护目标对象 二是增强目标对象 静态代理 package org.example.spr
阅读全文
摘要:原型模式 原型模式(Prototype Pattern),是指原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。 原型模式主要适用于以下场景: 类初始化消耗资源较多 使用new生成一个对象需要非常繁琐的过程(数据准备、访问权限等) 构造函数比较复杂 在循环中产生大量对象 浅拷贝 先创建原
阅读全文
摘要:单例模式 单例模式(Singleton Pattern)是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。 单例模式是创建型模式。 饿汉单例模式 饿汉单例模式在类的加载时候就立即初始化,并且创建对象。 它绝对线程安全,在线程还没出现以前就实例化了,不可能存在访问安全问题 优点:没有
阅读全文
摘要:JWT_SpringSecurity SpringBoot3.0 + SpringSecurity6.0+JWT Spring Security 是 Spring 家族中的一个安全管理框架。 一般Web应用的需要进行认证和授权。 认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户
阅读全文
摘要:application.yml配置信息 spring: profiles: active: dev application: name: jwt-token-security # Jackson 配置项 jackson: serialization: write-dates-as-timestamp
阅读全文
摘要:SpringBoot解决跨域的几种方式 跨域资源共享(CORS):通过修改Http协议header的方式,实现跨域。说的简单点就是,通过设置HTTP的响应头信息,告知浏览器哪些情况在不符合同源策略的条件下也可以跨域访问,浏览器通过解析Http协议中的Header执行具体判断。具体的Header如下:
阅读全文
摘要:统一返回对象Result 项目中我们会将响应封装成json返回,一般我们会将所有接口的数据格式统一, 使前端(iOS Android, Web)对数据的操作更一致、轻松。 一般情况下,统一返回数据格式没有固定的格式,只要能描述清楚返回的数据状态以及要返回的具体数据就可以。但是一般会包含状态码、返回消
阅读全文
摘要:整合Swagger2 1、Swagger介绍 前后端分离开发模式中,api文档是最好的沟通方式。 Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。 1、及时性 (接口变更后,能够及时准确地通知相关前后端开发人员) 2、规范性 (并且保证接口
阅读全文
摘要:纯Java搭建webapp QuickStart 使用纯 Java 来搭建一个 SSM 环境,即在项目中,不存在任何 XML 配置,包括 web.xml 1创建一个Maven工程 引入依赖 <!-- TODO 【Java创建SSM】1、引入依赖 --> <dependency> <groupId>o
阅读全文
摘要:如何搭建一个传统的webapp项目【Java后端】 使用xml 来搭建 SSM 环境,要求 Tomcat 的版本必须在 7 以上 QuickStart 1创建工程 创建一个新模块【普通的 Maven 工程】 这里我们选择webapp作为maven的archetype 创建完成之后,项目默认的层级如下
阅读全文