java
文章平均质量分 83
little_how
爱学习,乐于助人
展开
-
支付系统对接商户
target:离开柬埔寨倒计时-214day原创 2024-06-01 21:06:04 · 1013 阅读 · 0 评论 -
M功能-分布式锁-支付平台(五)
target:离开柬埔寨倒计时-218day原创 2024-05-28 21:12:21 · 1070 阅读 · 6 评论 -
M功能-open feign的使用-支付系统(四)
target:离开柬埔寨倒计时-219day原创 2024-05-27 21:59:58 · 993 阅读 · 0 评论 -
基于poi和JavaBean的excel导出
java使用poi导出excel文件原创 2022-08-03 17:48:58 · 282 阅读 · 1 评论 -
自研简易apm(基于springcloud)基础组件系列文章(四)
系统调用收集dashboard写在前面本系统已上传到github上,该系列文章将逐步讲解其作用方式littlehow-apm系统GitHub地址littlehow-apm-dashboard前端GitHub地址apm接入是我为我现有公司编写的微服务治理与监控平台初版,编写了有段时间了,一直在推动公司各java系统接入(非java系统,可基于http上报信息)接入说明详情请看 README.MD启动日志收集系统apm-collector/apm-collector-web对应原创 2020-07-24 11:46:30 · 242 阅读 · 0 评论 -
自研简易apm(基于springcloud)基础组件系列文章(三)
如何减小接入成本,自定义类加载器加载改动类资源原创 2020-07-21 19:28:11 · 443 阅读 · 0 评论 -
自研简易apm(基于springcloud)基础组件系列文章(二)
主要依托于spring分析本系统接口信息,进行上报原创 2020-07-21 17:53:57 · 340 阅读 · 0 评论 -
自研简易apm(基于springcloud)基础组件系列文章(一)
apm主要功能介绍写在前面本系统已上传到github上,该系列文章将逐步讲解其作用方式littlehow-apm系统GitHub地址littlehow-apm-dashboard前端GitHub地址apm接入是我为我现有公司编写的微服务治理与监控平台初版,编写了有段时间了,一直在推动公司各java系统接入(非java系统,可基于http上报信息)市面上apm简单介绍Zipkin.:由Twitter公司开源,开放源代码分布式的跟踪系统,用于收集服务的定时数据,以解决微服务架构中的延迟问题,原创 2020-07-21 17:40:21 · 425 阅读 · 0 评论 -
java注解不常用功能记录
关于java注解的基础内容这里就不多进行解释,直接演示工作中注解不经常使用到的功能:主要讲解 Inherited和Repeatable原创 2020-05-29 14:34:16 · 333 阅读 · 0 评论 -
csdn问答的回答备忘
题目:Java进阶串行循环计算、Executors框架和Fork-Join框架三种方法给定一个int数组,假设有10000个长度,里面放满1-100的随机整数。需要用串行循环计算、Executors框架和Fork-Join框架三种方法,实现查找并输出该数组中50的出现个数。预期执行结果如下(具体数量根据每个程序随机赋值决定)串行搜索得到50的个数是5个。Executors搜索得到50的个...原创 2020-04-15 15:48:02 · 687 阅读 · 0 评论 -
集合类lambda值逆序排序(备忘工具)
lambda逆序排序,仅用于备忘原创 2019-12-11 18:36:04 · 1238 阅读 · 0 评论 -
java实现自然数的四则运算
四则运算的优先级 ()为第一优先级 */为第二优先级 +-最低优先级 根据优先级将中缀表达式转为后缀表达式 如 2 * 3 改为 2 3 * 这样可以基于栈进行运算 代码实现部分 计算主类: package com.littlehow.math;import java.util.*;import java.util.re...原创 2018-08-29 17:28:30 · 1105 阅读 · 0 评论 -
看似简单的任务-分享二维码图片到微信(分享图片的生成)
1.任务描述 大体场景是这样的:移动支付中的被扫模式(收款方生成二维码)的二维码分享给好友进行识别支付;考虑到模板样式的多端一致性、多样性、可配置性等特点,所以生成分享图片的功能有java服务端进行实现。刚开始接到任务的时候,想着这么简单的东西,应该很快就能完成,于是保守的估计了一天用来开发此功能;2.二维码生成方案选型与实现 QRcode的二维码是当前比较流行的一种二维码编码方式...原创 2018-05-30 17:08:36 · 21579 阅读 · 9 评论 -
基于springboot和quartz的任务调度系统
一、简述 项目地址:https://github.com/littlechare/job-manager 项目详细的信息请参看项目的README下载地址:https://download.csdn.net/download/w172087242/10333176 之前想写一个关于定时任务的组建,便于项目中快速集成; 写完之后,又继续在此基础上演变成系统,当然该系统还缺少很多东西; 如业务方的...原创 2018-04-08 11:48:51 · 2995 阅读 · 3 评论 -
littlehow-sentinel接入指南
所以时下比较流行的rpc将是系统拆分后依赖调用的不二选择,当前比较流行的rpc框架有阿里的dubbo和spring-cloud,还有一些如thrift这样的rpc也还算活跃。littlehow-sentinel就是为spring-cloud集成做准备的(关于spring-cloud网上有太多文章介绍)原创 2019-09-04 20:13:31 · 317 阅读 · 0 评论 -
java简要实现优先级的分组排序
本排序适用于内存排序,并且有强制的优先级比如 有秒杀活动的 > 加入购物车 > 运营元素 > 店铺评分 > 历史购买 > 普通活动本功能用户实际项目中搜索的展现以及推荐(当然优先级没有上面列的那么简单)该版本性能还可以继续提供,因为时间有限,所以先出一个版本csdn code 地址 : https://code.csdn.net/w172087242/litt原创 2017-08-18 15:00:25 · 2876 阅读 · 2 评论 -
java线程变量那点事儿
ThreadLocal解决的场景和存在的缺陷InheritableThreadLocal解决的问题和缺陷TransmittableThreadLocal的作用原创 2018-10-26 16:36:54 · 14937 阅读 · 4 评论 -
自己动手写了个简单缓存
java内存缓存,便于存储相对固定的值,重启后缓存失效。原创 2019-02-18 10:28:30 · 549 阅读 · 0 评论 -
java动态代理
该工具主要为了快速便捷生成代理对象原创 2019-04-26 17:06:39 · 146 阅读 · 0 评论 -
sentinel接入指南
主要介绍sentinel的限流熔断如何使用,如何与api网关进行整合,以及其dashboard的使用等原创 2019-06-20 21:25:16 · 3926 阅读 · 1 评论 -
Mongodb GridFS中对文件的上传、下载、删除
将之前的改成markdown排版了一下原创 2019-09-20 11:41:22 · 1985 阅读 · 0 评论 -
解决apache mina在网络环境慢下的粘包问题
package com.mfq.business;import org.apache.log4j.Logger;import org.apache.mina.core.buffer.IoBuffer;import org.apache.mina.core.session.IoSession;import org.apache.mina.filter.codec.Protocol原创 2016-04-28 13:48:39 · 1582 阅读 · 0 评论 -
ElasticSearch中局部更新操作(工作笔记)
相当于一个备忘录,感觉现在记忆不好了,自己做的过段时间可能就记不清楚了,所以写个笔记备忘一下1.首先是ES配置,因为涉及到脚本来更新需要在Elasticsearch的配置文件elasticsearch.yml中添加如下配置:script.engine.groovy.inline.update: on2.局部更新的两个脚本,都是实际业务场景(groovy) ca原创 2017-07-07 15:41:13 · 10632 阅读 · 2 评论 -
使用spring-data-redis进行对redis的操作,封装的一些操作方法
这个算是工作笔记吧,因为是我的实际工作内容 spring-data-redis api地址 http://docs.spring.io/spring-data/redis/docs/current/api/ 依赖maven包(当前spring-data-redis的最新版本是1.7.2.RELEASE, jedis的最新版本是2.9.0):spring-data-re原创 2016-08-12 12:04:05 · 19585 阅读 · 3 评论 -
java实现具有相同属性名称及相似类型的pojo、dto、vo等的互转
已应用于实际项目:1.thrift对象与dto之间的互转 2.pojo与dto之间的互转 3.pojo与vo之间的互转 还是喜欢直接贴代码1.核心转换工具类,对特别复杂类型不做处理,因为业务场景还未覆盖package原创 2017-05-04 17:25:06 · 7357 阅读 · 0 评论 -
java编解码base64
在alibaba的fastjson中base64上增加的一些方法package littlehow.base64;import java.nio.charset.Charset;import java.util.Arrays;/** * 引用阿里巴巴fastjson中的base64工具 * 自己实现encode方法 * @author wh * @cre原创 2016-06-17 14:30:47 · 2621 阅读 · 0 评论 -
web项目中简单的管理spring的上下文
在web项目中,并不是所有请求的service都是通过ioc注入到action或其他地方如果想要单独从spring中获取bean,那么简单的方式就是从spring上下文中获取。以下是代码:1.上下文管理类:package littlehow.listener;import org.springframework.context.ApplicationContext;原创 2016-06-20 16:37:09 · 1260 阅读 · 0 评论 -
thrift中required和optional的用处
使用技术:thrift的rpc服务问题提出:在java和.net交互的时候,默认值导致数据修改问题。基本数据类型在服务端传输前没有设置isset值,传输到客户端还是出现isset=true的现象。解决方案:将所有非必须变量添加修饰符optional,这样thrift在序列化的时候发现修饰符为optional并且isset=false的值时,就会忽略。下面的问题测原创 2016-06-27 11:31:54 · 21907 阅读 · 1 评论 -
诡异的volatile
今天看到一个关于线程可见性的问题,发现一个奇怪的现象如我有以下程序:public class Littlehow{ private static boolean flag = true; public static void main(String[] strs){ new Thread(){ public v原创 2016-04-28 14:02:52 · 519 阅读 · 0 评论 -
更改log4j的默认配置文件路径
有时候可能会有多个项目,想要共同用一个log4j的配置文件,使用环境变量或数据库比较容易动态修改路径。package test;import org.apache.log4j.Logger;import org.apache.log4j.xml.DOMConfigurator;public class Log4jTest { static{原创 2016-04-28 13:35:04 · 5874 阅读 · 0 评论 -
简单实现短链接算法
package com.mfyk.util;import java.security.MessageDigest;public class Code { private Code(){} /** 短链接可选字符 */ private final static char[] chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcde原创 2016-04-28 13:30:09 · 2226 阅读 · 0 评论 -
像UE一样将二进制文件转换为16进制显示
package test;import java.awt.Dimension;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import java.io.FileOutputStream;原创 2016-04-28 13:28:04 · 4434 阅读 · 0 评论 -
使用自定义类加载器和默认类加载器加载两个相同的类
package test.ask;import java.lang.reflect.Field;public class Main { public static void main(String[] args) { try{ Class c1 = Main.class.getClassLoader().loadClass("t原创 2016-04-27 17:15:38 · 3085 阅读 · 0 评论 -
将16进制文本加载成类(写着玩的,所以很多方面看着不顺眼)
package test;import java.io.File;import java.io.IOException;import java.nio.file.Files;import java.nio.file.Paths;public class MyClassLoader extends ClassLoader{ @Override原创 2016-04-27 17:12:28 · 651 阅读 · 0 评论 -
socket长连接客户端管理
今天看到有人在ask上提问关于socket长连接发送消息的问题,所以突然就想着写一篇博客。为刚接触socket长连接开发,并且没有用mina或netty这种nio框架的开发者提出的一些思路。可以根据自己的业务进行改变。下面就是具体代码(只有对连接的管理,具体的连接没有提供):package littlehow.socket;import java.io.IOException;import ...原创 2016-06-17 10:26:00 · 10120 阅读 · 6 评论 -
java反射如何提升性能
java应用反射的时候,性能往往是java程序员担心的地方,那么在大量运用反射的时候,性能的微弱提升,对这个系统而言都是如旱地逢甘霖。下面用代码简单验证一下反射性能都损耗在哪里。package littlehow.reflect.demo;/** * WorkBean 作为反射性能测试的bean * * @author littlehow * @time 2原创 2016-06-12 20:30:50 · 6590 阅读 · 0 评论 -
LinkedHashMap与TreeMap浅析
import java.util.LinkedHashMap;import java.util.Map;import java.util.Set;import java.util.TreeMap;/** * OrderMap 对排序map的分析 * TreeMap 和 LinkedHashMap * * @author littlehow * @time 2016-06-原创 2016-06-08 12:43:26 · 1341 阅读 · 0 评论 -
java动态代理和cglib动态代理的整合工具
1.解决大量共同业务的处理2.解决jdk动态代理中实现类注解获取不到的困扰3.使用业务链条模式进行前切和后切,可以做到用户自己随意对业务进行增减少如果想要与spring整合,可以使用factory-method来进行代理对象的生成。代码maven依赖:低版本的也可以,这里主要是使用spring集成的cglib包,所以需要引入spring-coredepend原创 2016-09-27 10:01:41 · 1671 阅读 · 0 评论 -
Mongodb GridFS中对文件的上传、下载、删除
因为公司之前电商系统的图片存储用的是mongodb,所以昨天讨论后把原定的fastfds改用为mongodb的gridfs。mongodb的分片机制也是高可用,高可扩展的。mongodb3.2 api地址maven地址:dependency> groupId>org.mongodbgroupId> artifactId>mongo-java-drive原创 2016-07-19 15:26:33 · 15932 阅读 · 4 评论 -
JDK1.7 HashMap在多线程环境下偶然造成InfiniteLoop导致程序宕机
在多线程环境下,非线程安全的hashmap可能会造成的问题package littlehow.map;import org.junit.After;import org.junit.Before;import org.junit.Test;import java.util.HashMap;import java.util.Map;import java.util.concurr原创 2016-07-11 16:09:58 · 1020 阅读 · 0 评论