缓存 算法java lru

Java 获取最近12个月数据,包含当月数据

List<String> dateList = new ArrayList<>(); Calendar calendar = Calendar.getInstance(); // 月份最大为11 最小为0 所以设置初始月份时加1,需要获取到当前月份所以设置初始月份时需要加2 calendar.set ......
数据 Java

Java有BufferOverflow吗?

Since Java Strings are based on char arrays and Java automatically checks array bounds, buffer overflows are only possible in unusual scenarios: If yo ......
BufferOverflow Java

Java之JasyptUtil类的使用

在配置文件中,我们通常会对中间件密码进行加密。手动加密可以使用JasyptUtil类,代码如下: package com.cmit.kapok.system.utils; import org.jasypt.encryption.pbe.StandardPBEStringEncryptor; imp ......
JasyptUtil Java

Java第一次作业

1. 定义圆形半径,求面积。int r =5。 public class ljh { public static void main(String[] args) { // TODO Auto-generated method stub int a=3 ,r=5; int s; s=a*r*r; S ......
第一次 Java

Java基本类型和包装类什么情况下判断相等(“==“或“equals“)?

Java中判断两个变量是否相等有两种方式:一种是利用 == 运算符,另一种是利用equals方法。如果变量是基本类型,那么使用 == 和使用equals会得到相同的结果,都是判断变量的值是否相对。 如果变量是引用类型,== 运算符判断变量是否指向同一引用对象,equals判断变量"值"是否相等。 = ......
类型 情况 equals Java

react的diff算法

diff策略 React用 三大策略 将O(n^3)复杂度 转化为 O(n)复杂度 策略一(tree diff): Web UI中DOM节点跨层级的移动操作特别少,可以忽略不计。 策略二(component diff): 拥有相同类的两个组件 生成相似的树形结构, 拥有不同类的两个组件 生成不同的树 ......
算法 react diff

JAVA -适合新手和复习(Restart)

作为22届专科生,在没有经历和学历的情况下找一份得体的工作 是多么“奢侈”,世上岂无千里马,人中难得九方皋. 废话太多我们开始吧! JAVA从这里开始 Java的历史(不感兴趣直接跳过) Java 的历史要追溯到 1991 年,项目“Green”启动!帕特里克、詹姆斯·高斯林、麦克·舍林丹和其他几个 ......
Restart 新手 JAVA

【Socket】基于 Java NIO 的 HTTP 请求过程

1 前言 这节我们自己动手感受一下 HTTP的东西,我们知道 HTTP 协议是在应用层解析内容的,只需要按照它的报文的格式封装和解析数据就可以了,具体的传输还是使用的 Socket,我们基于上节的NIO Socket自己做一个简单的实现了HTTP协议的例子。 2 源码分析 因为HTTP 协议是在接收 ......
过程 Socket Java HTTP NIO

Java入门_一维数组_第一题_升序数组

声明 咱是个新手,没啥技术只会最基础的,见谅哈。 更简化的方法还请大佬指教。 题目: 已知有个升序数组的数组,要插入一个元素,该数组顺序依然是升序。 例如:{ 25 , 49 , 74 , 99 },添加‘ 77 ’后,数组为{ 25 , 49 , 74 , 77 , 99 }。 思路: 建立第一个 ......
数组 升序 Java

java 执行 同一个项目不同的main方法

1、多个main方法,通过idea的方式打包 2、在执行的时候 java -cp /data/dolphinscheduler-install/jars/dolphoinscheuler-demo.jar cn.iullor.TestExceptionMain java -cp /data/dolp ......
方法 项目 java main

Mybatis缓存体系分析(转载)

前言 在 Web 应用中,缓存是必不可少的组件。通常我们都会用 Redis 或 memcached 等缓存中间件,拦截大量奔向数据库的请求,减轻数据库压力。作为一个重要的组件,MyBatis 自然也在内部提供了相应的支持。通过在框架层面增加缓存功能,可减轻数据库的压力,同时又可以提升查询速度,可谓一 ......
缓存 体系 Mybatis

值得收藏的Java 命名规范参考!

一、Java中常用到的命名形式共有三种 既首字母大写的UpperCamelCase,首字母小写的lowerCamelCase以及全部大写的并用下划线分割单词的UPPERCAMELUNSER_SCORE。 通常约定,类一般采用大驼峰命名,方法和局部变量使用小驼峰命名,而大写下划线命名通常是常量和枚举中 ......
Java

Java实现记录对象修改前后的变化

需求描述今天接到一个需求,修改数据时需要记录修改详情。详情包括,被修改的字段,修改前的值和修改后的值。 解决思路分别比较修改前后两个Bean实例的所有成员变量,当值不一致时,记录变量名称,以及修改前后的值。 对于该方案,可以解决特定类型的Bean。 如果有其它类型的Bean也有这种需求,则需要新写一 ......
对象 Java

读后笔记 -- Java核心技术(第11版 卷I )Chapter1-2 Java 程序设计

本书源码(下载对应版本的代码):https://horstmann.com/corejava/index.html Java 17 API 文档:https://docs.oracle.com/javase/17/docs/api 配套视频讲解(卷一):https://space.bilibili. ......
读后 Java 程序设计 Chapter1 核心

IDEA Rebuild项目错误:Information:java: java.lang.AssertionError: Value of x -1

模仿lombok工具,我的enumgen工具写完了。 公司的项目emax-rpcapi-list依赖了enumgen后,IDEARebuild Project时,或者maven package/install的时候,出现报错→Information:java: java.lang.Assertion ......

算法笔记

算法笔记 10个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie 树; 10个算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法 股票问题系列通解(转载翻译) - 力扣(LeetCode) 数据结构和容器 基本类型: int,lo ......
算法 笔记

Can not set java.lang.String field com.jsedc.log.pojo.entity.voSyslogV0.happenTime to java.util.LinkedHashMap

未加泛型约束的result,其List中的实体对象会被序列化为LinkedHashMap,实际结构为Result<List<LinkedHashMap<String,String>>> 导出excel时对象赋值失败 ......

剑指 Offer 07. 重建二叉树(java解题)

leetcode《图解数据结构》剑指 Offer 07. 重建二叉树(java解题)的解题思路和java代码,并附上java中常用数据结构的功能函数。 ......
Offer java 07

Java开发学习(四十九)----MyBatisPlus更新语句之乐观锁

1、概念 在讲解乐观锁之前,我们还是先来分析下问题: 业务并发现象带来的问题:秒杀 假如有100个商品或者票在出售,为了能保证每个商品或者票只能被一个人购买,如何保证不会出现超买或者重复卖 对于这一类问题,其实有很多的解决方案可以使用 第一个最先想到的就是锁,锁在一台服务器中是可以解决的,但是如果在 ......
MyBatisPlus 语句 Java

算法总结--动态规划

声明(~~叠甲~~):鄙人水平有限,本文为作者的学习总结,仅供参考。 ##1.动态规划介绍 动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。其中每一个状态一定是由上一个状态推导出来,这是DP的一个重要标志。 ##2.DP大法的使 ......
算法 动态

Java:数据表的字段设计了默认值0不生效的原因

在数据表里给字段设置了默认值为0,但是在插入的时候不生效,数据表设计如下 通过数据表生成的实体类 查看代码 @Data @TableName(value = "user") @NoArgsConstructor @AllArgsConstructor public class UserEntity{ ......
数据表 字段 原因 数据 Java

Net DB Web多级缓存的实现

1、客户端缓存(浏览器缓存) HTTP有一套控制缓存的协议-RFC7234,其中最重要的就是cache-control这个相应报文头,服务器返回时,如果Response带上 cache-control:max-age=5 #表示允许浏览器缓存5秒(仅是允许,浏览器是否缓存还看浏览器本身机制是否要遵循 ......
缓存 Net Web DB

带你深入Java Log框架,彻底搞懂Log4J、Log4J2、LogBack,SLF4J

最近系统被扫出来还在使用老旧的log4j,需要升级到最新的log4j。但是在升级的发现,Java相关的日志处理库有log4j, log4j2,slf4j和logback,初一看确实有点头大,那么区别是啥呢?之前也大概知道一些,查找了大量相关资料,这里好好总结一下,相信你读完就会熟练掌握 Log4J、 ......
Log Log4 框架 4J LogBack

机器学习算法(一): 基于逻辑回归的分类预测

逻辑回归(Logistic regression,简称LR)虽然其中带有"回归"两个字,但逻辑回归其实是一个分类模型,并且广泛应用于各个领域之中。虽然现在深度学习相对于这些传统方法更为火热,但实则这些传统方法由于其独特的优势依然广泛应用于各个领域中。 ......
算法 逻辑 机器

Tars-Java网络编程源码分析

作者:vivo 互联网服务器团队- Jin Kai 本文从Java NIO网络编程的基础知识讲到了Tars框架使用NIO进行网络编程的源码分析。 一、Tars框架基本介绍 Tars是腾讯开源的支持多语言的高性能RPC框架,起源于腾讯内部2008年至今一直使用的统一应用框架TAF(Total Appl ......
网络编程 Tars-Java 源码 网络 Tars

Java多线程开发CompletableFuture的应用

​做Java编程,难免会遇到多线程的开发,但是JDK8这个CompletableFuture类很多开发者目前还没听说过,但是这个类实在是太好用了,了解它的一些用法后相信你会对它爱不释手(呸渣男,咋对谁都爱不释手呢),好了我先简单举个列子,告诉你用它有多好。Single Dog拿一个Appointme ......
CompletableFuture 线程 Java

Java中的String类真的不可变吗?java面试常见问题

其实在Java中,String类被final修饰,主要是为了保证字符串的不可变性,进而保证了它的安全性。那么final到底是怎么保证字符串安全性的呢?接下来就让我们一起来看看吧。 一. final的作用 1. final关键词修饰的类不可以被其他类继承,但是该类本身可以继承其他类,通俗地说就是这个类 ......
常见问题 常见 String 问题 Java

算法 | 中缀表达式转后缀表达式并计算结果(利用栈)

1.手动实现中缀转后缀 2.代码实现中缀转后缀并计算表达式结果 为了简化问题,假设算术运算符仅由加、减、乘、除4种运算符和左、右括号组成。 step1: 声明栈结构 #include <iostream> #include <string> using namespace std; #define ......
表达式 中缀 后缀 算法 结果

【分布式技术专题】「分布式技术架构」一文带你厘清分布式事务协议及分布式一致性协议的算法原理和核心流程机制(Paxos篇)

概念简介 Paxos是一种基于消息传递具有高度容错特性的一致性算法,是目前公认的解决分布式一致性问题最有效的算法之一。 发展历史 Paxos算法的发展历史追溯到古希腊,当时有一个名为“Paxos“的小岛, 岛上采用一会的形式通过法令, 议会中议员通过信使进行消息传递,议员与信使都是兼职的,他们随时都 ......
分布式 技术 一致性 算法 架构

复杂度分析:如何分析、统计算法的执行效率和资源消耗

我们都知道,数据结构和算法本身解决的是“快”和“省”的问题,即如何让代码运行得更快,如何让代码更省存储空间。所以,执行效率是算法一个非常重要的考量指标。那如何来衡量你编写的算法代码的执行效率呢?这里就要用到我们今天要讲的内容:时间、空间复杂度分析。 ......
复杂度 算法 效率 资源