自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (13)
  • 收藏
  • 关注

原创 AtomicReference自旋加CAS保证对象引用原子性

AtomicReference类提供了对象引用的非阻塞原子性读写操作,并且提供了其他一些高级的用法,对象的引用其实是一个4字节的数字,代表着在JVM堆内存中的引用地址,对一个4字节数字的读取操作和写入操作本身就是原子性的。

2024-01-06 15:52:46 411

原创 多线程分批处理数据

在工作中经常会遇到一个业务操作要处理成千上万的数据,耗时非常严重,性能严重不达标,这个时候就会想到采用多线程来执行业务来提高执行效率,在改背景下本人下了一个d可以直接套用业务的demo,在此记录,以备随时用到来copy代码。下面代码为调用代码,调用逻辑为定义了一批data英雄分批次开启多线程进入战场大乱斗,最后各个英雄的耗时及战绩。再创建一个构建线程池的工具类,代码如下,线程池参数可以根据自己需要做成可配置。然后创建一个用于执行批量计算的工具类,如下。首先定义个执行业务任务的接口。

2023-12-23 15:58:45 104

原创 Spring Aop

在Spring Boot应用程序中使用@Aspect注解来定义切面类,注意使用@Component注解,一开始我没有追加,运行起来不生效。通过注解实现,定义注解,实现切面类,内部通过一个Pointcut来指定在带有我们上面自定义注解类AopLog注解的所有方法上进行拦截。改切面类作用于我自己写的controller中的function。springboot项目 pom.xml追加。

2023-05-08 11:14:17 95

原创 nginx相关

简介nginx是一个高性能的HTTP和反向代理服务器,特点占用内存少,并发能力强反向代理客户端对代理无感知,因为客户端不需要任何配置就可以访问,只需要将请求发送给反向代理服务器,由反向代理服务器去选择目标服务器获取数据,再返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器的ip地址,隐藏了真实的服务器地址。负载均衡单个服务器解决不了,我们增加服务器数量,然后将请求分发到各个服务器上,将原先请求集中到一个服务器上的情况改为分发到多个服务器上,将负载分发到不同

2022-07-19 10:45:01 79

原创 Redis哨兵、复制、集群的设计原理及区别

Redis哨兵、复制、集群的设计原理及区别

2022-04-07 20:53:03 1522

原创 如何解决Redis缓存雪崩、缓存穿透、缓存并发等5大难题

如何解决Redis缓存雪崩、缓存穿透、缓存并发

2022-04-06 15:52:54 1098

原创 NCC优化相关

计息查询效率问题先通过JProfiler监听发现计息在查询放款单聚合vo数据的时候非常耗时然后通过录spr发现最放款单的一次查询需要查询放款单以及放款单版本,主表的200多个字段,以及7个子表的所有字段一次查询执行8个sql,这是就知道瓶颈在哪里了,然后就是要考虑怎们优化。通过查看BaseDAO提供的方法,发现retrieveByClause(Class className, String condition, String[] fields)方法,是可以指定查询字段的。.

2021-10-20 10:47:42 579

原创 volatile、原子性、原子变量、CAS

volatile 内存可见性 多个线程操作共享数据时,可以保存内存中的数据可见* 相较于synchronized是一种较为轻量级的同步策略* 注意:* 1.volatile不具备互斥性* 2.volatile不能保证原子性* jvm会给每一个线程分配独立的内存package thread;/** * volatile 内存可见性 多个线程操作共享数据时,可以保存内存中的数据可见 * 相较于synchronized是一种较为轻量级的同...

2021-10-20 10:00:34 90

原创 2021-10-15

* volatile 内存可见性 多个线程操作共享数据时,可以保存内存中的数据可见* 相较于synchronized是一种较为轻量级的同步策略* 注意:* 1.volatile不具备互斥性* 2.volatile不能保证原子性* jvm会给每一个线程分配独立的内存package thread;/** * volatile 内存可见性 多个线程操作共享数据时,可以保存内存中的数据可见 * 相较于synchronized是一种较为轻量级的同...

2021-10-15 15:45:17 61

原创 重复注解与类型注解

创建注解MyAnnotion@Repeatable(MyAnnotations.class)注解可以重复package 新特性;import java.lang.annotation.ElementType;import java.lang.annotation.Repeatable;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.a..

2021-10-13 15:20:13 125

原创 js代码----禁止浏览器弹出alert

在项目中会遇到浏览器alert出来一下信息,比如chrome浏览器就会弹出an error occurred,非常讨厌,怎么解决呢?可以重写alert function stopError(){ javascript:alert=function(s){console.log(s)}; }...

2021-10-13 14:49:14 1572

原创 JAVA新时间

传统时间格式化的现成安全问题package 新特性;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.LocalDate;import java.time.format.DateTimeFormatter;import java.util.ArrayList;import java.util.Date;import

2021-10-13 14:48:27 92

原创 接口中的默认方法与静态方法

类优先原则: 若一个接口定义了一个默认方法 而另一个父类或接口中又定义了一个同名方法时选择父类中的方法,如果一个父类提供了具体实现,那么接口中具有同名和参数的默认方法会被忽略接口冲突:如果一个父接口提供一个默认方法,而另一个接口也提供了具有同名和参数方法(不管方法是不是默认方法)那么实现类必须选择指定覆盖接口方法package 新特性;/** * 类优先原则 若一个接口定义了一个默认方法 而另一个父类或接口中又定义了一个同名方法时 * 选择父类中的方法,如果一个父类提供了具体实现,那

2021-09-10 15:23:40 169

原创 Optional类的使用

java8提出了一个Optional类,尽量避免java.lang.NullPointerExceptionpackage 新特性;import java.util.Optional;import org.junit.Test;import 新特性.Employee.Status;/** * Optional容器类的常用方法 * Optional.of(T t) 创建一个Optional实例 * Optional.empty() 创建一个空的Optional实例 *..

2021-09-10 14:46:54 123

原创 java8 特性

速度更快 代码更少Lambda 强大的Stream API 便于并发 最大化减少空指针Optinaloracle-sun Hotspotoracle JRocketIBM j9 jvmtaobao taobao jvm 永久去 PremGen 没有了 PremGenSize MaxPremGenSize MetaSpace 元空间 使用物理内存 MetaspaceSize MaxMetaspaceSize

2021-09-07 11:02:55 175

原创 react小计--持续更新

绑定属性注意:其他属性和之前写法是一样的class要换成classNamefor要换成htmlForstyle绑定样式<div style={{"color":"red","fontSize":"40px"}}></div>绑定图片--远程图片src="远程图片地址"import image from '../images/1.jpg';<image src = {image} />//或者用es6语法<image src = {.

2021-07-01 11:05:31 84

原创 过滤器模式

过滤器模式(Filter Pattern)或标准模式(Criteria Pattern)是一种设计模式,这种模式允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来。这种类型的设计模式属于结构型模式,它结合多个标准来获得单一标准。我们将创建一个SpicySlices对象、Criteria接口和实现了该接口的实体类,来过滤SpicySlices对象的列表。NameCriteria类中使用Criteria对象,基于各种标准和它们的结合来过滤SpicySlices对象的...

2021-05-19 14:45:25 72

原创 netty长连接

MyServerpackage com.wq.nettylongconnection;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.EventLoopGroup;import io.netty.channel.nio.N...

2019-07-12 18:03:24 351

原创 netty心跳

MyServerpackage com.wq.nettyheart;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.EventLoopGroup;import io.netty.channel.nio.NioEventLo...

2019-07-12 17:59:54 113

原创 netty聊天多客户端访问服务端

MyChatServerpackage com.wq.nettychat;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.EventLoopGroup;import io.netty.channel.nio.NioEven...

2019-07-12 17:57:11 1004

原创 netty服务端http

nettyserverpackage com.wq.netty;import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelFuture;import io.netty.channel.EventLoopGroup;import io.netty.channel.nio.NioEventLoopG...

2019-07-12 17:53:59 336

原创 字符集编码解析

package com.wq.nio;import java.io.File;import java.io.IOException;import java.io.RandomAccessFile;import java.nio.ByteBuffer;import java.nio.CharBuffer;import java.nio.MappedByteBuffer;import...

2019-07-12 17:31:59 250

原创 java NIO网络客户端编写

服务端:package com.wq.nio;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.nio.ByteBuffer;import java.nio.channels.SelectionKey;import java.nio.channels.Selector;impor...

2019-07-12 14:48:26 296

原创 Nio编程selector监听多个端口获取请求信息

Select监听端口,然后获取请求数据package com.wq.nio;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.nio.ByteBuffer;import java.nio.channels.SelectionKey;import java.nio.channels....

2019-07-12 09:57:34 1081

原创 java装饰模式

装饰模式是在不改变原来具体实现接口类的前提下,增加了一些实现。package com.wq.decorator;/** * 抽象构建角色的具体实现 */public class ConcreteComponent implements Component { @Override public void doSomething() { System.o...

2019-07-09 16:49:49 191

原创 Netty中Protobuf多协议消息支撑

先定义.proto文件,其中定义一个枚举DateType标识不同的消息类别,然后oneof定义Mymessage中的dataBody只能是Person、Dog、Cat中的一种。然后使用protobuf编译器编译,编译命令:protoc --java_out=src/main/java src/protobuf/Person.protosyntax = "proto2";package c...

2019-07-09 14:33:42 514

原创 protobuf java使用

需要安装protobuf的编译器,然后定义一个protobuf文件syntax = "proto2";package com.wq.protobuf;option optimize_for = SPEED;option java_package = "com.wq.protobuf";option java_outer_classname = "DataInfo";messag...

2019-07-09 10:09:59 3500 1

原创 浏览器指定将某元素全屏js方法

浏览器将指定元素全屏/** *解决火狐浏览器不能全屏的方法 */ function fullScreenff(){ var mb = myBrowser(); if(mb == "IE" || mb == "Edge"){ alert("如果要使用此功能,请使用火狐或谷歌浏览器。"); return; } var thisIfra...

2019-06-20 15:02:45 1325

原创 静态html导出

java导出html静态页面,包含页面中引用的css、jsjs代码如下/** * */ /** * 导出html report function */ function printHtml(){ var json = getJson(); var encodejson = encodeURIComponent(enco...

2019-06-20 13:41:29 1795

原创 无头浏览器生成图片

调用无头浏览器根据option生成echart的图片,主要用于系统后台任务生辰报表(PDF、word)格式import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.lang.reflec...

2019-06-20 11:27:28 945

原创 js请求服务器下载文档(doc、wps、txt等到本地)

js请求代码downloadTemplate('./auditreport/exportWPS.do?filename='+encodeURIComponent(returnInfo[2]), 'filename', 'test');/** * 用于下载导入模板时的影藏form表单的提交,采用post方式提交 * @param actio...

2019-06-19 11:43:01 1587

原创 js代码----禁止浏览器弹出alert

在项目中会遇到浏览器弹出alert,非常讨厌,这个时候我们可以重写alert(),代码如下,这样就变成console输出了。javascript:alert=function(s){console.log(s)};

2019-03-21 17:04:42 2624

原创 Gson基本操作,JsonObject,JsonArray,String,JavaBean,List互转

1.String、JsonObject、JavaBean 互相转换User user = new Gson().fromJson(jsonObject, User.class);User user = new Gson().fromJson(string, User.class);String string = new Gson().toJson(user);JsonObject ...

2019-01-18 09:32:00 117

原创 XML读、写,根据key值修改xml

本文代码依赖dom4j-1.6.1.jar在修改xml过程中遇见utf-8第一次被修改之后,再次修改提示错误--org.dom4j.DocumentException: 2 字节的 UTF-8 序列的字节 2 无效。 Nested exception: 2 字节的 UTF-8 序列的字节 2 无效。在晚上找资料说需要将xml改成GBK,结果试了一下果然没有问题,但是项目需要使用utf-8所...

2018-12-25 14:23:37 1316

原创 java监听者模式

原理:当范围对象的状态发生变化的时候,服务器自动调用监听器对象中的方法。Java的时间监听机制涉及到三个组件:事件源、事件监听器、事件对象当事件源上发生操作时,它会调用事件监听器的一个方法,并且调用这个方法时,会传递事件对象过来事件监听器是由开发人员编写,开发人员在事件监听器中,通过事件对象可以拿到事件源,从而对事件源上的操作进行处理下面以按钮点击时间来写代码实现监听按钮被点击。...

2018-12-07 14:44:19 1175

原创 java通过 JNA调用 so

需要再linux系统中ldd  so文件------ 列出动态库依赖关系,看看glibc版本是否一致。下面是java代码,其中c++的char*对应java中的byte[]。c++的方法返回值可以从中获取。另外java中用IntByReference对应c++中的int*。https://www.jb51.net/os/RedHat/538539.html看一下你那里的glibc的版本...

2018-11-08 15:22:57 1494

原创 spring+JAX-RS实现Restfull接口 demo

       JAX-RS是JAVA EE6 引入的一个新技术。 JAX-RS即Java API for RESTful Web Services,是一个Java 编程语言的应用程序接口,支持按照表述性状态转移(REST)架构风格创建Web服务。JAX-RS使用了Java SE5引入的Java注解来简化Web服务的客户端和服务端的开发和部署。JAX-RS提供了一些注解将一个资源类,一个POJO...

2018-09-28 11:13:01 811

原创 java递归将文件夹下的所有文件打zip包

java递归将文件夹下的所有文件打zip包package com.wq.com.zipFile;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.util.zip.ZipEntry;import java.util.zip.ZipOutput...

2018-08-30 10:55:20 649

原创 java解析读取Bson数据

2需要引入bson-3.8.1.jar 使用BasicBSONDecoder类中的readObject进行读取数据。代码如下图所示。package com.wq.ta.da.util;import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io...

2018-08-22 10:40:15 6159

原创 linux命令

查看内存总数------------------   cat /proc/meminfo | grep MemTotal查看CPU型号-----------------    cat /proc/cpuinfo | grep 'model name' |uniq查看操作系统-----------------     lsb_release -a (适用于所有的linuxuname -a...

2018-08-09 15:04:50 318

JavaUtilsProject-master.zip最新版

根据freemarker模板引擎生成word文档,根据freemarker生成文档的xml然后将数据回填至文档,可以根据freemarker语言对xml进行控制实现复杂的word,比阿帕奇POI功能强大

2019-06-14

JavaUtilsProject-master.zip

FreeMarker生成word,案例生成文字、表格、图片。还包含有excel的生成等一些util工具类,导入IDEA直接运行对应的main函数就行

2019-06-05

JAVA并发编程实战.pdf

JAVA并发编程实战.pdf-详细介绍了线程并发的机制的

2019-05-10

达梦、人大金仓、oscar数据库驱动jar,bson的jar

达梦、人大金仓、oscar数据库驱动jar,国产数据库,jar bson的jar

2018-09-06

centos6.5中文依赖包

centos6.5中文依赖包,解决中文乱码问题。fc-list :lang=zh查看是否有中文字体

2018-07-11

Java ECharts jar包

ECharts java jar包 直接面向对象生成echart图形对象,java返回的option对象在前台解析为json对象后,直接init就可以生成echart报表。方便快捷。

2018-06-06

java IPv6缩写和非缩写转化方法类

类中completionIpV6()为补全缩写ipv6,simplifyIpV6()为将全ipv6转化为缩写

2018-06-01

java获取今天、昨天、近一周、本周、本月时间段

java获取今天、昨天、近一周、近两周、近三周、近一月、近两月、近三月、近半年、本周、上周、本月、上月时间段

2018-01-23

页面全屏,指定div全屏

火狐、谷歌、ie下javascript全屏,可整个页面全屏,也可指定某一元素全屏

2018-01-12

jquery轻量级倒计时插件

轻量级倒计时插件,适用于IE8,FireFox,Chrome等浏览器,只需引入一段js代码,方便快捷

2017-11-20

阿里和谷歌的json的jar包

google 的 json工具包, 实现json字符串与javabean之间的互转 阿里的的 json工具包, 实现json字符串与javabean之间的互转

2017-11-15

将网页指定区域的html下载,同时将js,css也下载。并将页面的路径改为下载后的路径

将网页指定区域的html下载,同时将js,css也下载。并将页面的路径改为下载后的路径,同时还有通过phantomjs屋头浏览器获取网页内容后下载html

2017-11-10

itext-2.0.8.jar

iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。

2017-11-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除