1.前言相信参与使用Oracle数据库进行项目开发、运维的同学常常被OracleJDBC驱动的Maven依赖折磨。现在这一情况在今年二月份得到了改变,甲骨文这个老顽固终于开窍了。一位甲骨文的工程师发布博客:在Maven中央仓库中,现在不单单最新版本的OracleJDBC驱动程序,而且还可以找到以往所有的OracleJDBC驱动发行版,包括19.6.0.0、19.3.0.0、18.3.0.0、12.
分类:
数据库 时间:
2020-08-24 16:44:57
阅读次数:
65
1.简介三月份已经介绍过R2DBC,它是一种异步的、非阻塞的关系式数据库连接规范。尽管一些NoSQL数据库供应商为其数据库提供了反应式数据库客户端,但对于大多数项目而言,迁移到NoSQL并不是一个理想的选择。这促使了一个通用的响应式关系数据库连接规范的诞生。作为拥有庞大用户群的关系式数据库MySQL也有了反应式驱动,不过并不是官方的。但是Spring官方将其纳入了依赖池,说明该类库的质量并不低。所
分类:
数据库 时间:
2020-08-24 16:44:43
阅读次数:
77
1.前言MySQL一对多的数据分页是非常常见的需求,比如我们要查询商品和商品的图片信息。但是很多人会在这里遇到分页的误区,得到不正确的结果。今天就来分析并解决这个问题。2.问题分析我们先创建一个简单商品表和对应的商品图片关系表,它们之间是一对多的关系:一对多关系然后我分别写入了一些商品和这些商品对应的图片,通过下面的左连接查询可以看出它们之间具有明显的一对多关系:SELECTP.PRODUCT_I
分类:
数据库 时间:
2020-08-24 16:44:25
阅读次数:
63
1.前言在Java开发中我们为了避免过多的魔法值,使用枚举类来封装一些静态的状态代码。但是在将这些枚举的意思正确而全面的返回给前端却并不是那么顺利,我们通常会使用Jackson类库序列化对象为JSON,今天就来讲一个关于使用Jackson序列化枚举的通用性技巧。2.通用枚举范式为了便于统一处理和规范统一的风格,建议指定一个统一的抽象接口,例如:/***TheinterfaceEnumerator.
分类:
编程语言 时间:
2020-08-24 16:44:06
阅读次数:
52
TCP 协议是一个非常重要的协议,而且非常复杂,在使用中也可以说是我们最常见的报文之一了,但是使用了这么久,还是有很多人不是很了解,下面这篇文章给大家介绍下**TCP包头**,来帮助大家更好的理解TCP。
分类:
其他好文 时间:
2020-08-24 16:43:42
阅读次数:
121
1.前言老板突然要上线一个需求,获取当前位置方圆一公里的业务代理点。明天上线!当接到这个需求的时候我差点吐血,这时间也太紧张了。赶紧去查相关的技术选型。经过一番折腾,终于在晚上十点完成了这个需求。现在把大致实现的思路总结一下。图12.MySQL不合适遇到需求,首先要想到现有的东西能不能满足,成本如何。MySQL是我首先能够想到的,毕竟大部分数据要持久化到MySQL。但是使用MySQL需要自行计算G
分类:
其他好文 时间:
2020-08-24 16:43:25
阅读次数:
67
1.前言欢迎阅读SpringSecurity实战干货系列文章。最近有开发小伙伴提了一个有趣的问题。他正在做一个项目,涉及两种风格,一种是给小程序出接口,安全上使用无状态的JWTToken;另一种是管理后台使用的是Freemarker,也就是前后端不分离的Session机制。用SpringSecurity该怎么办?2.解决方案我们可以通过多次继承WebSecurityConfigurerAdapte
分类:
编程语言 时间:
2020-08-24 16:43:03
阅读次数:
56
1.前言最近很多人私下询问我常用的Java开发技术栈,所以今天就总结一波平常使用的Java技术栈。2.JDKJDK的版本现在大部分转移到了8,超前一点的使用11,请认准LTS版本!不要生产上使用9、10、12、13、14。在OracleJDK和OpenJDK之间推荐使用OpenJDK,避免引起不必要的商业纠纷。AmazonCorretto、AlibabaDragonwell都不错。7以上不用太考虑
分类:
编程语言 时间:
2020-08-24 16:42:47
阅读次数:
55
1.前言快手前天发布了《看见》一时间好评如潮,盖过了之前的《后浪》。现如今搞内容创作都要开始玩价值观导向了。不过互联网真是一个神奇的东西,我们足不出户就可以看到你想看的东西。不管是时下火热的抖音、快手,还是微信公众号、知乎。你只需要关注订阅你喜欢的领域,你就可以获取你想要的内容,甚至和创作者进行互动。创作者只需要创作的内容发布到对应的平台上,用户只需要在对应的平台上订阅自己喜欢的领域或者作者就可以
分类:
其他好文 时间:
2020-08-24 16:42:22
阅读次数:
41
列表(List)是你使用Python过程中接触最为频繁的数据结构,也是功能最为强大的几种数据结构之一。Python列表非常的万能且蕴含着许多隐藏技巧,下面我们就来探索一些常用的列表技巧。一、列表元素的过滤filter()的使用filter()函数接受2个参数:1个函数对象以及1个可迭代的对象,接下来我们定义1个函数然后对1个列表进行过滤。首先我们创建1个列表,并且剔除掉小于等于3的元素:图1?回顾
分类:
编程语言 时间:
2020-08-24 16:42:10
阅读次数:
51
最简单的使用方式(记得安装Unity NuGet包呀) Console.WriteLine("***************Unity容器的初步应用***************"); IUnityContainer container = new UnityContainer();//1 声明一个 ...
分类:
编程语言 时间:
2020-08-24 16:41:57
阅读次数:
62
以下内容为学习记录,可以参考 MDN 原文。 环境 node v12.18.1 npm 6.14.5 vscode 1.46 Microsoft Edge 83 概念 symbol 是一种基本数据类型 (primitive data type)。Symbol()函数会返回 symbol 类型的值,该 ...
分类:
编程语言 时间:
2020-08-24 16:41:40
阅读次数:
57
##1.主要思想 简单来说就是将大问题划分为小问题,并解决小问题重复计算的问题。 ##2.适用场景 常常适用于有重叠子问题和最优子结构性质的问题。 ##3.模板步骤 确定动态规划状态 写出状态转移方程(画出状态转移表) 考虑初始化的条件 考虑输出状态 考虑对时间和空间复杂度的优化(Bonus) ## ...
分类:
其他好文 时间:
2020-08-24 16:41:14
阅读次数:
55
什么是拉链表? 一张表中的数据每日既有可能新增,也有可能修改,但是频率并不高,属于缓慢变化的维度,因此可以使用拉链表存储维度数据。 那么什么是拉链表呢? 拉链表:记录每条信息的生命周期,所以拉链表中都会有一个起始时间、一个结束时间、以及一个业务主键。当插入一条记录的时候,会将起始时间设置为插入时间、 ...
分类:
其他好文 时间:
2020-08-24 16:40:47
阅读次数:
53
Makefile的介绍与使用(一)中,我简单总结了一下关于子目录下的Makefile的一些运用,而这次的Makefile的介绍与使用(二)中,就对Makefil顶层目录进行一个剖析,简单分析一下Makefile的构造。 就拿最近做的hello目录下的Makefile为示例 include $(TOP ...
分类:
其他好文 时间:
2020-08-24 16:40:34
阅读次数:
54
Set 对象存储的值总是唯一的 Set 对象方法 方法描述 add 添加某个值,返回Set对象本身。 clear 删除所有的键/值对,没有返回值。 delete 删除某个键,返回true。如果删除失败,返回false。 forEach 对每个元素执行指定操作。 has 返回一个布尔值,表示某个键是否 ...
分类:
其他好文 时间:
2020-08-24 16:40:06
阅读次数:
50
#在#include<stdio.h>中存在sscanf函数能将字符串中分成多个部分,分别转化为不同类型进行返回; ##sscanf(char *s,type,destination) //s为字符数组名,type为转化的种类(与scanf中的格式相同),destination为返回的目标 inst ...
分类:
编程语言 时间:
2020-08-24 16:39:46
阅读次数:
59