- 博客(16)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
原创 ES5好用的几个方法总结(不断增加中。。。)
1.forEch遍历数组,和jquery的each一样,但是each比它强大一些,可以遍历jquery对象和数组。var arr =[1,2,3,4,5];arr.forEach(function(value,index){ console.log(index+'==='+value)})//结果 0===1 1===2 2===3 3===4 4===5...
2021-08-27 17:35:27
224
原创 几种简单的设计模式
三、简单设计模式1.装饰模式(包装模式)装饰模式就是对某个类进行包装,目的是改写已存在的类的某个方法或某些方法,那么最有一个例子是改写jdbc链接池链接connection的关闭方法。在以前开发有手写链接池的,连接池获取连接,链接用完后应该放回到池中而不是关闭掉,如果按照原始的DriverManager.getConnection()得到的connection是MySQL驱动实现好的子类,因为connection本身是接口,只提供了标准方法,具体实现都是子类,那么close方法就是直接关闭掉,但我.
2021-06-20 16:47:23
757
原创 java基础加强五(序列化、properties、简单设计模式)
一、java的序列化序列化:可以将一些数据存储到磁盘上,或者通过网络传输到另一台计算器反序列化:将一个已被序列化的对象,从硬盘或者网络读取到程序中。Java的序列化流使用的是ObjectOutputStream,反序列化使用的是ObejctInputStream。其实就是用流的方式将java对象转换为二进制数据存储或传输。例子:把一个对象存储到磁盘的文件中。public class User { private String name; public void set
2021-06-05 16:56:50
134
原创 Java基础加强三(泛型、IO流)
1.this关键字 每个类都有一个隐式的变量this,再虚拟机实例化对象时自动赋值的,赋值为当前对象的“引用”。
2021-05-22 20:17:18
122
原创 java基础加强二(jvm内存结构)
一、Jvm内存结构 jvm的内存结构也有叫运行时数据区的,Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分为若干个不同的数据区域。每个区域都有各自的作用。
2021-05-05 09:49:22
108
原创 java基础加强一(值传递和引用传递、String类分析)
Java基础加强和补漏Java方法的值传递和引用传递值传递:调用方法时传的参数类型时基本数据类型,则不改变原本的值。引用传递:调用方法时传递的参数类型时引用数据类型,则传递的时引用地址,原本的值改变。原因:...
2021-05-05 09:48:25
209
原创 基于文件锁和redis的方案
之前有个简单的文件锁方案,这次由于操作的单量比之前大很多,又要求速度,上锁更精细了,不能只能到库,领导决定将每个库分成100份,也就是100个锁,根据sku的id取模100,再加上库的id作为文件名称上锁。但是这样就会产生一个问题,两个订单拥有的sku有重叠的部分,比如订单1:sku:1 2 3 4 5 6 7 8 9订单2:sku: 5 6 7 10 11 12订单3:sku: 5 6 7 15 19如果订单...
2020-12-11 14:19:18
307
原创 一个简单的文件锁方案
项目中难免会有需要锁的地方,尤其是库存的操作,更是需要保证数据正确,本来项目中是有一个简单的文件锁来保证库存只有一个线程来操作的,但是随着业务需求增加,操作单据的量开始变大,变多,尤其是批量操作的时候,只有一个简单的文件锁会造成卡死,效率也会降低。所以对原有的文件锁进行了升级。先看一下原始的文件锁怎么实现的过程:1.上锁 2.操作数据库 3.解锁整个过程非常简单,就是在操作前创建一个文件,当其他线程操作前也会创建文件,但是文件已经存在,无法创建成功,那么文件就是一把锁,只有文件被删除(解锁.
2020-11-28 15:08:32
291
2
原创 redis安装和集成,按照步骤你就会成功
redis安装和集成的简单示例,记录一下过程。可能的问题在最后。一、在liunx服务器上安装redis 1.下载压缩包 (1)百度搜索redis,找到官网,进去然后Download it,你会得到一个压缩包。把它传到liunx上。 (2)在liunx服务器上使用wget命令,下载资源,如下: 点进去之后往下滚,找到 把wget复制下来,作为linux命令运行,可以直接下载到服务器中。 2.解压安装...
2020-11-04 15:52:47
365
原创 java的枚举类,真的是个类
今天对接第三方支付,我用枚举规定了几个支付方式和状态。有同事看到,问我为什么用枚举,交流中我发现他们对枚举主要有两个误解,今天记录一下。 一,把枚举当成class,广义上讲枚举也是类,你肯定写过public class ...或者 public interface ...,那么interface是类吗?,当然是,只不过是特殊的类,class是最基础和原始的,同样public enum ...也是,它和class与interface在同一个位置,说明是同一个级别的,都是类,但是我们总说枚举类枚举类,...
2020-07-07 17:37:53
525
1
原创 java多线程之看图说话
说之前大家可以看看以下三篇博客https://segmentfault.com/a/1190000004694556 //线程的介绍https://segmentfault.com/a/1190000004695763 //继续介绍https://segmentfault.com/a/1190000004710242 //线程锁等高级点的介绍(看了...
2019-08-07 18:25:38
137
原创 小白这么看kafka
今天在网上看了半天关于kafka的介绍,还去了官网,但是非常遗憾,作为小白,kafka到底怎么设计的还是没搞懂,而且感觉很多的博客都是大同小异的(怀疑是复制粘贴的),上来就介绍很多专业的名词和概念,但是解释的都不清楚(正经的书都不说人话)。但是看的多了还是“破解”一些门道,下面我不抄袭他们的写法,把卡不卡的原理基础用自己的理解写一下。有个中文教程这么写的:(地址:http...
2019-07-26 13:23:39
273
原创 不正经技术研究,键盘侠,你武器可能有个坑!!
敲代码的时候你是不是感觉小手指头疼?是不是感觉手腕疼?最烦的就是上下左右的方向键。 当你戴上耳机,打开音乐,精神抖擞准备大干一场的时候,发现你无论怎么努力都无法提高码砖的速度,这不怪你,因为键盘在设计之初就是为了降低你打字速度的!没错,你所熟悉的键盘不是最优的键位设计,可能是最差的。为啥呢,因为现在的键盘是当时打字机遗留下来的,就是这个东西想不到吧,之所以...
2019-05-24 16:55:20
295
原创 利用java的Graphics2D在图片上写字
首先jsp页面:src是一个方法地址 然后在Controller如下:写一个生成方法,用流进行读写 生成方法,(关键): 注意:这种方法可行,但是需要计算文字的位置,感觉不太灵活,如果谁有更好的方法请分享一下。
2018-01-02 15:40:07
5793
1
原创 获取tomcat端口号,除了request,jmx也可以
需求描述: 有两台服务器,一个上面8个tomcat,运维将项目源码放到一个目录下,所有tomcat都跑这个目录。现在有个定时任务要执行,那么问题来了,8个tomcat就会执行8次,但是我们只要一次就够了。 解决方案: 因为是一台机器有多个tomcat跑一套代码,所以最简单的就是拿到tomcat端口号,通过限制端口号来解决。问题是平时获得端口号的途径一般是通过req
2018-01-02 14:53:37
2390
FileLockUtils.java
2020-11-28
idea如何设置编译器。
2019-04-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人