Live My Life

一入Java深似海

SaaS开发模式:一般化前后端开发约定与提示

接手开发的时候,错误码五花八门,不知道如何传,且错误提示不规范,每次都是在联调的时候,如果不合适前后端再改正,不了解其对接原理 第一种 发现字段可以高亮且对8进行了国际化(8为必填通用型错误码) 无法解析,可以看到不是errortext作为高亮约定 MgError国际化字符会被流处理赋值到mgdto的errortext上,但是直接赋webapierror的message上,不走流,也会最......

基础思维:内外网排查思路

内网报错:先查看响应的具体错误和查内网日志,打印栈信息直接定位到目标代码位置。 内网直接连debug,如果有人展占用端口了,启动本地debug 外网报错 ...

简单理解什么是协程

1. 多线程中的切换: 假设有两个线程: 线程 A:负责播放歌曲。 线程 B:负责下载歌曲。 如果 线程 B 由于 I/O 阻塞(比如下载过程中等待服务器响应)而暂停,那么操作系统会进行 线程切换。操作系统会将 CPU 的控制权交给 线程 A,这样 线程 A 就可以继续播放歌曲,不会因为 线程 B 的 I/O 阻塞而浪费 CPU 资源。 这种切换是操作系统层面的,通常是由 时间片耗尽 或......

如何进行逆向分析与破解网络验证

关于基础的破解网络验证,这里有一个经验帖 https://www.52pojie.cn/thread-343419-1-1.html 抓包我们的软件,可以看到login请求指向了某个域名,百度这个域名可以很快的找到对应的卡密验证系统。 :::info 只要不是作者自己写的验证,一般都是开源公开的,直接搜抓出来的域名即可 ::: 可以看到是华网验证系统 首先看登录功能 尝试抓包拦截请求和响应,......

Mybatis-bind标签优化模糊查询

今天在写模糊查询的时候,想使用bind标签替换掉旧的concat拼接方式 1concat('%',concat('%',{#paream})) 结果发现报错: 提示bind类型标签必须匹配空?这是怎么回事,查看例子: 发现bind其实是一个自闭合标签,和Html等Xml语法一致,分为 成对标签 和 自闭合标签 :::succes......

使用Jackson反序列化时的一些注意点

今天碰到一个问题,后端使用LocalDate mDate接收,看起来很正常,但是后台一直接收不到参数,猜想是DateFormat(pattern = ‘yyyy-MM-dd’),结果还是不生效 发现是Jackson反序列化失败了 这里不会提示报错信息,仅仅映射不上值为null而已 :::info 我们知道,boolean属性使用is开头会存在冲突,原因就是boolean的set方法(比如......

Oracle连接串解读

我们在常常在SpringBoot配置文件中配置连接数据库,如图: 首先:Oracle JDBC连接一共有三种方式,分别是:SERVICE_NAME、SID和TNSName。 我们常常使用的是服务名,只有在旧版本使用SID,原因是一个SID对应一个一个Oracle实例,而服务名是在集群多实例的情况下诞生的,所以一个服务对应多个实例,我们连接串port后的默认就是服务名 :::succes......

策略模式代码怎么简化

策略模式可以避免大量的if-else或者switch,因为相当于直接传入了策略标识,一般使用map作为存储策略的容器。 而可以使用函数式接口继续改进,仍然是使用map作为函数式接口的存储容器。 什么时候使用函数式接口Function<>? 函数式接口当然最多只能有一个抽象方法,当我们需要使用某个“动作”的时候,就需要使用函数式接口,因为再调用apply方法就相当于执行对应的动作。......

Linq如何进行数据的聚合和度量

问题演示: ...

国产数据库信创:多数据库对比

脚本 TDSQL: 腾讯MySQL内核,语法通用 MySQL: 12345678910DELIMITER $$DROP FUNCTION IF EXISTS NVL;CREATE FUNCTION NVL (expression VARCHAR(255), replacement VARCHAR(255)) RETURNS VARCHAR(255) DETERMINISTI......