Java
文章平均质量分 50
养家糊口的猫
这个作者很懒,什么都没留下…
展开
-
aop pointcut 12种用法
pointcut 12种用法转载 2023-02-10 09:42:52 · 254 阅读 · 0 评论 -
来吧,Jenkins+git+mvn+shell一键部署实践起来
Jenkins+git+mvn+shell一键部署原创 2023-01-20 14:41:41 · 1278 阅读 · 2 评论 -
java 本地缓存
Guava cache使用:https://www.cnblogs.com/rickiyang/p/11074159.html原创 2021-06-23 17:22:40 · 133 阅读 · 0 评论 -
@ConfigurationProperties与@value笔记
1、@ConfigurationProperties(prefix="") 通过prefix前置匹配,将配置文件中的配置项绑定到某一个类的所有属性中; 需要配合@EnableConfigurationProperties或者@import或者@Component等才会生效;2、@value 是将配置文件中某一个配置绑定到一个属性上;3、@ConfigurationProperties(prefix="") 与@value 一起使用时,会出现两种情况,如下:@Configur...原创 2021-05-07 20:54:21 · 1605 阅读 · 0 评论 -
笔记:一致性hash
1、利用hash函数对2的32次方取模(hash(x) % 2^32)得到0到2^32-1之间的一个整数,后面数据查找节点时,顺时针取hash环上最近的节点。2、为什么是2的32次方?因为,java中int的最大值是2^31-1最小值是-2^31,2^32刚好是无符号整形的最大值;而且又因为int的最大值最小值范围设定是因为一个int占4个字节,一个字节占8位,二进制中刚好是32位。(ip地址分为4段,每段8位,刚好占用32位)扩展:dubbo源码中hash()也是切分4段的原理来做的(第一原创 2021-04-15 11:00:30 · 268 阅读 · 0 评论 -
Thread.sleep(0) 到底有什么用?
最近看到一篇有意思的文章,转载一下,转载地址:https://mp.weixin.qq.com/s/AIk6jKrOCDxl6YgnYn88-Q我们可能经常会用到 Thread.Sleep 函数来吧使线程挂起一段时间。那么你有没有正确的理解这个函数的用法呢?思考下面这两个问题:假设现在是 2008-4-7 12:00:00.000,如果我调用一下 Thread.Sleep(1000) ,在 2008-4-7 12:00:01.000 的时候,这个线程会不会被唤醒?某人的代码中用了一句看似莫明转载 2021-04-01 10:32:47 · 151 阅读 · 0 评论 -
java 调用R 语言生成图片是空白解决方法
在绘图语句外层,嵌套一层print()函数,例如绘图函数是:ggsurvplot(),要生成完整图片,需要使用形如:print(ggsurvplot(...))这种方式,否则,生成的图片一片空白原创 2020-11-06 17:10:36 · 1651 阅读 · 2 评论 -
ExecutorService 接口学习
ExecutorService 接口是线程池扩展功能服务接口,它的定义如下:public interface ExecutorService extends Executor {// 停止线程池void shutdown();// 立即停止线程池,返回尚未执行的任务列表List<Runnable> shutdownNow();// 线程池是否停止boolean isShutdown();// 线程池是否终结boolean isTerminated();// 等待线程池终结原创 2020-08-19 17:09:41 · 789 阅读 · 1 评论 -
Java调用R语言RConnection客户端连接池
由于项目需要利用R语言的脚本进行一些数学运算,在使用R语言客户端时,最开始用了RserverConf,但发现还是原生的RConnection我更喜欢用,所以,根据资料,手写了一个简单的R语言客户端管理的连接池,记录一下以备后用。1、RConnectionPoolUtil 为连接池的简单实现:import org.rosuda.REngine.Rserve.RConnection;import org.rosuda.REngine.Rserve.RserveException;import or原创 2020-06-08 16:19:55 · 1318 阅读 · 1 评论 -
java开发者手册泰山版
紧跟技术前沿,2020年4月22日,阿里放送出java开发者手册泰山版,多看看少踩坑,说不定以后面试还能用上。下载地址:https://developer.aliyun.com/topic/java2020?utm_content=g_1000113439;注:如果上面阿里提供的地址失效了(概率还是比较小哈),可以私信我给你提供。...原创 2020-04-23 10:44:35 · 976 阅读 · 0 评论 -
java 中String字符串算术表达式进行Boolean判断
最近遇到一个需求,将形如:String str = "value>8 || (value <= 5 && value > 1)";这种字符串算术表达式进行true或false的判断,通过 ScriptEngineManager 类成功解决这个问题。方法:String str = "value>8 || (value <= 5 &am...原创 2020-03-10 15:49:38 · 1615 阅读 · 2 评论 -
前端证书:springboot 项目使用自制的https证书,前端基于node.js的前端证书配置
前言:上一篇解决了后端证书问题,这一偏解决前端配置问题,完美解决谷歌浏览器的疑难杂症(其他浏览器没有问题。。。)如证书无效:一、下载openssl:(window版本)建议下载1.0.2版本,下载地址:http://slproweb.com/products/Win32OpenSSL.html二、前期配置:参考博客:https://blog.csdn.net/youyouyo...原创 2019-11-14 16:25:18 · 923 阅读 · 0 评论 -
后端证书:springboot 项目使用自制的https证书,将http转换成https请求
背景:将前端http请求换成https请求,并以https请求后端,在开发环境中进行测试;后端项目:Spring Cloud全家桶,利用Spring Gateway作为网关服务;前端项目:利用node.js作为前端服务器请求后端;一、后端:1、利用keyTool生成自制证书;1.1、打开cmd,输入命令:keytool -genkey -alias client -key...原创 2019-11-06 10:46:29 · 1503 阅读 · 1 评论 -
设计模式之工厂模式—简单工厂模式
工厂模式分为:简单工厂模式、工厂方法模式、抽象工厂模式三种类型,本篇内容主要介绍简单工作模式的实现,很多理论学习就不过多阐述,我的博客希望尽量不要用过多理论来占据过长的篇幅(主要是我觉得篇幅太长实在没有毅力,集中力看下去),所以重点在于真实有效,拿来即用。一、简单工厂模式:由一个工厂对象决定创建哪一种产品类型的实例创建一个书籍总接口Book,分别由JavaBook、RedisBook具体子...原创 2019-08-27 15:21:26 · 110 阅读 · 0 评论 -
设计模式之工厂模式—工厂方法模式
接着上一篇设计模式之工厂模式—简单工厂模式进一步学习工作方法模式;工厂方法模式:指定义一个创建对象的接口,但让实现这个接口的类来决定实例化哪个类,工厂方法让类的实例化在子类中进行;核心思想:单一职责的工厂类(JavaBookFactory),该类进行具体类的实例化(JavaBook类的实例化) ------实现------》一个总的工厂接口(BookFactory);1、一个总的工...原创 2019-08-27 16:16:13 · 98 阅读 · 0 评论 -
设计模式之工厂模式—抽象工厂模式
接着上一篇设计模式之工厂模式—抽象工厂模式进一步学习工作方法模式;本文的学习,我推荐一篇博客https://blog.csdn.net/zyhlwzy/article/details/80707488,该博友的阐述很形象易懂,推荐学习0.v.0;...转载 2019-08-27 16:50:06 · 85 阅读 · 0 评论 -
设计模式之代理模式—静态代理
代理模式:利用一个代理对象将具体需要代理的对象包装起来,然后利用代理对象来取代具体对象,当需要操作具体对象时,都是通过代理对象来完成对具体对象的操作;静态代理的核心:1、代理类与具体类实现同一个接口,以便具有相同的行为;2、代理类要持有具体类的引用,以便控制具体类进行操作;以下是代码演示:1、总接口:Person 定义其子类具有的相同的行为;public interfa...原创 2019-08-28 17:06:48 · 97 阅读 · 0 评论 -
设计模式之代理模式—动态代理(重点是cglib的两大注意事项)
这些什么设计模式啊,什么这样那样的原理啊,网上真的一大堆,我都在怀疑我为什么要写这些文章,明明别人写得更好,这一篇文章点进来了的朋友们请移步:https://cloud.tencent.com/developer/article/1461796,我实在不想写了,一个月总有那么几天心情不好,蛋疼。这里还是重点说两个东西吧,对于使用cglib方式时,要注意以下两个方面(当然无法代理final类就...原创 2019-09-03 10:36:20 · 415 阅读 · 0 评论 -
设计模式之代理模式—委派模式(重点区分说明与代理模式的区别)
虽然老板->经理->员工这个例子用在委派模式已经是烂大街的例子了,但是足以说明这个例子的经典,能够很好的解释委派模式,本篇依旧用这个例子来简单说明一下委派模式,但是本文重点是在最后说清楚委派模式与代理模式的区别;委派模式:你找我,我作为中间人,我又根据你的需求去找别人,这就是委派模式下图很好的说明了委派模式这个过程:图是网上一个博友那儿找的。。。(图片地址:yinni11博...原创 2019-09-06 11:24:19 · 1300 阅读 · 0 评论 -
spring源码之spring各大模块主要功能(基于spring5)
spring源码部分,都是基于spring5进行学习;1、spring5模块结构图:spring核心模块在Core Container中,有:Beans、Core、Context、Expression四大模块,组成了spring的核心模块;其余部分都是对整个spring框架的支持;2、spring5各核心模块及组件的主要功能:核心模块:2.1、spring-core:...原创 2019-09-10 10:27:58 · 882 阅读 · 0 评论 -
spring源码之源码构建
本次构建利用idea进行构建,如果是eclipse,需要帮助可以留言;Spring5 源码下载注意事项:JDK 需要升级到 1.8 以上。Spring3.0 开始,Spring 源码采用 github 托管,不再提供官网下载链接。这里不做过多赘述,大家可自行去 github 网站下载,我们使用的版本5.0.2.RELEASE下载链接为: https://github.com/spring...原创 2019-09-11 14:54:35 · 615 阅读 · 1 评论 -
synchronized(从偏向锁到重量级锁)
转载一篇文章,直接搞懂synchronized锁机制,个人认为文章质量比较高,地址:https://www.cnblogs.com/kubidemanong/p/9520071.html转载 2019-10-08 11:26:37 · 143 阅读 · 0 评论 -
List中subList方法抛出异常java.util.ConcurrentModificationException原理分析
1、首先从测试代码开始:public class Test { public static void main(String[] args) { List<Integer> list = new ArrayList<>(); for (int i = 0;i<6000;i++){ list.add(...原创 2019-10-09 14:43:59 · 1151 阅读 · 0 评论 -
记录一下系统初始化即执行方法或者初始化某些属性值的方法@PostConstruct、CommandLineRunner、static{}静态块
本文以供自己记录而已,不做过多理论学习参考;1、@PostConstruct:@PostConstruct注解的方法在项目启动的时候执行这个方法,也可以理解为在spring容器启动的时候执行,可作为一些数据的常规化加载,比如数据字典之类的。spring中Constructor、@Autowired、@PostConstruct的顺序:Constructor >> @Autow...原创 2019-08-22 11:06:04 · 814 阅读 · 0 评论