无奈何杨(wnhyang)

I will keep to fight

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


Java SPI简介

以下引用AI

Java SPIService Provider Interface)是一种用于实现组件化的机制,它允许软件组件以插件的形式被发现和加载。在 Java 中,SPI 是通过在META-INF/services目录下的特定文件中声明服务提供者来实现的。

下面是 Java SPI 的基本工作原理:

  1. 定义服务接口:首先,定义一个服务接口,该接口规定了一组方法或功能。
  2. 实现服务提供者:然后,编写一个或多个实现了服务接口的具体类,这些类被称为服务提供者。
  3. 创建服务配置文件:在 META-INF/services 目录下创建一个以服务接口全限定名命名的文件,其中包含了实现了服务接口的具体类的全限定名。
  4. 加载服务提供者:通过 Java SPI 机制,Java 运行时会自动加载并实例化服务提供者,并将其注入到应用程序中,使得我们可以在运行时动态地发现和使用这些服务。
阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


提要

前面已经有了几篇文章了,关于风控系统的一些设计和实现。

还是那句话完整的风控系统功能还是很复杂的,欠考虑的地方还望指正。

参考:

风控中常说的决策引擎,到底是什么?

风控笔记06:一个完整的风控引擎,需要有哪些功能?

yuque_diagram
阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


提要

参考:智能风控筑基手册:全面了解风控决策引擎

前面有可配置输入参数的接口如何设计风控系统指标计算/特征提取分析与实现01,Redis、Zset、模版方法两篇文章,分别提出:

1、风控系统服务动态选择,根据配置处理输入参数,转换为系统参数

2、使用Rediszset结构完成简单的指标计算(特征提取)

他们都是一次风控决策流程的一部分,当然完成的风控系统,比较复杂,涉及的功能模块更多,以下仅仅是我的简单梳理。

yuque_diagram

如上,服务选择和入参处理可配置输入参数的接口如何设计是这篇文章讨论的内容,风控系统指标计算/特征提取分析与实现01,Redis、Zset、模版方法讨论的是规则集内普通指标计算。

本篇文章讨论通过LiteFlow这款规则引擎框架实现风控系统的普通规则条件。

阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


背景

之前一直讲过自己独立在做一个中后台管理系统,当然这个只是开始,未来会基于此开发其他项目,因为时间的原因,这项目算是搁置了一段时间,最近又重新拾取来完善。

项目链接如下

GitHub - wnhyang/okay-boot

GitHub - wnhyang/okay-vben-admin

其前端采用vben中后台开发框架,后端就是常用的Spirng Boot那一套,用户角色菜单设计也是最常用RABC的方案。

问题

如下是菜单管理查询到的菜单列表,展示为树形结构。

image

在给角色分配菜单权限时,使用的是一个TreeSelect的组件,该组件提供了可多选的树形结构菜单,当然这个组件本身就有很多配置项,可以自定义很多内容。

阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


参考

REST Clients :: Spring Framework

【微服务|SpringBoot 3.0】 新特性——内置声明式HTTP客户端_springboot3.0 内置http服务-CSDN博客

七大主流的HttpClient程序比较

1、Java HttpURLConnection

JDK自带的标准HTTP客户端API,尽管功能相对基础,但因为内置于JDK中,无需额外依赖,所以在许多简单场景下仍然被广泛使用。

2、Java11 HttpClient

Java 11起,JDK新增了一个更现代化且功能更完善的HTTP客户端API,旨在替代原有的HttpURLConnection,支持HTTP/2和异步操作。

3、Apache HttpClient

Apache软件基金会提供的成熟的HTTP客户端库,支持同步和异步操作,具备高度可配置性,提供了强大的连接管理和认证支持。

SpringBoot下配合RestTemplate组件使用示例如下。

阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


参考

Spring Cloud Gateway CORS 方案看这篇就够了-腾讯云开发者社区-腾讯云

九种跨域方式实现原理(完整版) - 掘金

什么是跨域,有哪些解决方法

以下为AI回答

跨域是指由于浏览器的安全机制,当一个页面尝试通过 XMLHttpRequest 或 Fetch API 等方式向不同于当前页面源(协议、域名、端口三者之一不同的 URL)发起请求时,会被浏览器阻止,这称为“同源策略”限制。这是为了防止恶意网站通过脚本对其他网站的数据进行非法访问。

解决跨域问题的方法有很多种,以下是常见的几种:

1、CORS(Cross-Origin Resource Sharing)

CORS 是一种 W3C 标准,允许服务器表明哪些其他源可以请求资源。服务器通过设置响应头(如 Access-Control-Allow-Origin、Access-Control-Allow-Methods、Access-Control-Allow-Headers 等)来允许特定源或者所有源进行跨域请求。客户端(浏览器)在接收到响应后判断是否符合 CORS 规则,若符合则允许数据交互。

2、JSONP(JSON with Padding)

JSONP 是一种非正式传输协议,它利用script标签不受同源策略限制的特点,通过回调函数的形式来加载跨域数据。JSONP 只支持 GET 请求,并且要求服务器端配合提供 JSONP 形式的响应。

阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


官网

REST Clients :: Spring Framework

The Spring Framework provides the following choices for making calls to REST endpoints:

  • RestClient - synchronous client with a fluent API.
  • WebClient - non-blocking, reactive client with fluent API.
  • RestTemplate - synchronous client with template method API.
  • HTTP Interface - annotated interface with generated, dynamic proxy implementation.

RestClient

官方描述:RestClient是一个同步HTTP客户端,它提供了一个现代、流畅的API。它提供了对HTTP库的抽象,允许从Java对象到HTTP请求的方便转换,以及从HTTP响应创建对象。

Spring6.1版本新特性。

创建

创建RestClient非常简单,可以使用静态create方法,也可以使用builder创建,其提供了非常丰富的定制化选项,请求工厂、消息转换器、拦截器、默认头、请求初始化器等等,简单易懂。

阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


简介

如标题所言,本篇文章介绍如何使用MybatisPlus-Generator自定义模版生成CRUDDTOVOConvert等。

项目已在开源,可以通过以下Github/Gitee链接下载源码使用,目前生成器还不是很灵活,你可以下载源码自定义修改,或者真的有需要可以提Issues,我们一起来完善。

GitHub - wnhyang/crud-quickstart

Gitee - wnhyang/crud-quickstart

Mybatis官网:代码生成器配置新 | MyBatis-Plus

阅读全文 »

个人博客:无奈何杨(wnhyang)

个人语雀:wnhyang

共享语雀:在线知识共享

Github:wnhyang - Overview


引用AI对于风控系统的介绍

风控系统是一种用于在线业务的安全管理系统,它帮助企业和平台防范潜在的欺诈、信用风险以及不合规行为。简单来说,它的核心作用就是“保安全、防欺诈、控风险”。

最近也一直在研究风控系统体系、功能等,看了一些有关的文章,并且也在实践尝试中。

其实前一篇可配置“输入参数的接口如何设计”就是实践尝试的一部分,未来还会有更多的。

而本篇文章就风控系统的指标计算,或者说是特征提取做一些探讨,以下统一称呼为“指标”。

指标不仅可以作为风控系统的一部分配合风控规则或是模型/机器学习使用,而且可以用于离线分析、事后追查、用户画像标签等方面。

参考文章

风控笔记06:一个完整的风控引擎,需要有哪些功能?

风控笔记07:最常用的风控工具-特征库

指标分类

指标是由数据流支撑的,指标是时间纬度的数据提取计算。

根据指标分类举几个例子:

  • 次数统计:最近24小时\({客户号}向\){银行卡卡号}转账笔数
  • 求和:最近2天\({客户号}向\){银行卡卡号}转账金额之和
  • 平均:最近1个月\({客户号}向\){银行卡卡号}转账金额的平均数
  • 关联次数:最近72小时\({客户号}关联\){设备mac地址}的次数
  • 等等
阅读全文 »
0%