- 博客(76)
- 资源 (6)
- 问答 (9)
- 收藏
- 关注
原创 java实现大文件分片上传
前端(webUploader)将用户选择的文件根据开发者配置的分片参数进行分片计算,将文件分成N个小文件多次调用后端提供的分片文件上传接口(webUploader插件有默认的一套参数规范,文件ID及分片相关字段,后端将对保存分片临时文件),后端记录并判断当前文件所有分片是否上传完毕,若已上传完则将所有分片合并成完整的文件,完成后建议删除分片临时文件(若考虑做分片下载可以保留)。采用大文件分片并发上传,极大的提高了文件上传效率;所以这里就要用到文件分片上传技术了。
2024-01-02 16:59:45
1209
2
原创 Java8使用CompletableFuture实现多异步任务同步等待结果
使用CompletableFuture实现异步执行,等待所有查询结果,所需时间则为3个查询中最大的时间, 如下的示例中,3个查询共需要6秒,使用CompletableFuture优化后仅需3秒!在实际的开发工作中,我们可能会遇到一些比较复杂且耗时的功能,例如一个业务数据表格的导出,假定业务数据表本身都很大,需要组装的数据又比较多,就会造成整个实现过程很耗时甚至可能出现接口请求超时;在实际开发中使用,推荐使用线程池去执行异步任务,supplyAsync()重载的方法中有支持线程池对象参数,快去体验吧!
2023-07-29 12:17:07
4435
2
原创 常见的ElasticSearch面试题
文档是Elasticsearch中的基本单位,它包含多个字段,字段有不同的数据类型和属性,映射定义了字段的数据类型、分析器等信息。Elasticsearch是一个基于Lucene库构建的分布式搜索引擎,主要特点包括:分布式、高可用、实时搜索、多租户、全文检索等。Elasticsearch的性能调优方式包括:硬件调优、分片和副本的优化、索引优化、查询优化、缓存优化等。Elasticsearch提供了多种查询方式,包括:全文查询、精确查询、范围查询、布尔查询、过滤查询等。1、什么是Elasticsearch?
2023-04-10 18:02:58
1597
原创 从Dubbo到SpringCloud
1、定位不同,dubbo是一个开源的分布式架构框架,致力于解决内部或内网的RPC,是SOA(面向服务架构)时代的产物,它专注于服务的调用与治理;3、服务订阅方式不同,Zookeeper中的消费者首次启动将订阅服务信息缓存到本地,之后服务的变更会推送给消费者,而Eureka是采用定时轮询的方式去主动拉取服务的更新。1、zuul(网关):相当于网络服务架构的入口,所有请求必须通过网关转发到具体的服务,主要功能有统一管理微服务请求、负载均衡、动态路由、权限控制、监控、静态资源处理等。
2023-03-31 22:06:31
812
原创 Java高级开发面试题整理
每个工作线程都有自己的工作内存(Working Memory),工作内存中保存了工作线程需要用到的变量的主内存的副本,线程对变量的所有操作都必须在工作内存中完成,不能直接读写主内存中的变量(volatile关键字修饰的变量也有副本),工作线程的工作内存是互相不访问的,访问其他线程中的变量需要通过主内存来完成。所谓的阻塞队列是指当队列是空的,获取元素的线程会被挂起直到其他线程往队列添加新的元素,反之当队列是满的添加元素的线程会被挂起直到队列被移除一个或多个元素或被清空;所以悲观锁适用多写的场景。
2023-03-31 13:40:15
3478
1
原创 java中小数取整规则
说明:根据业务需求,将计算结果的取整规则整理成一个枚举,枚举中实现了每个规则的计算import com.google.common.collect.Lists;import cn.hutool.core.util.NumberUtil;import cn.hutool.core.util.StrUtil;/** * 取整规则 * * @Date: 2022/05/23 * @Description: */// TODO XiangPeng 取整规则实现public enu
2022-05-23 19:07:46
2669
转载 解决 高版本SpringBoot整合Swagger 启动报错Failed to start bean ‘documentationPluginsBootstrapper‘ 问题
详见:解决 高版本SpringBoot整合Swagger 启动报错Failed to start bean ‘documentationPluginsBootstrapper‘ 问题_摸鱼佬的博客-优快云博客https://blog.youkuaiyun.com/weixin_39792935/article/details/122215625
2022-04-06 18:37:35
973
原创 springmvc文件上传、下载(文件储存到当前服务器)
一、场景最新需要做个小项目,比较简单的一个网站,就用到了mysql和redis,系统中有文件管理功能;这里就简单实现,储存到当前服务器即可。二、controller代码实现package com.xiangpeng.common.file;import java.io.File;import java.io.IOException;import java.time.LocalDate;import java.util.HashMap;import java.util.Map;
2022-01-18 10:59:47
602
原创 java使用Graphics2D绘图/画图
**一、笔者在开发过程中遇到生成分享海报的需求,需要后端动态生成分享图(最终前端自己实现的,哈哈);记录下过程中遇到的一些问题和解决办法。****二、Graphics2D常用**[API](https://doc.codingdict.com/java_api/java/awt/Graphics2D.html)首先获取Graphics2D实例```javaBufferedImage bi = new BufferedImage(imageWidth, imageHeight, BufferedI
2021-06-24 11:18:12
2777
原创 spring3.1+项目中创建PropertiesUtil工具类读取配置文件
一、背景我们都知道spring可以帮我们读取properties配置文件,我们只需要简单配置一行:<context:property-placeholder location=“classpath:properties/*.properties” file-encoding=“UTF-8”/>就能在java代码中使用@Value("${xxxx}")美滋滋的读取配置文件,但是如果有需要在java代码中使用类似PropertiesUtil.getProperties(“xxxx”)的方式去读
2021-04-16 11:52:53
942
原创 spring整合nacos作为配置中心
一、前言1、nacos是啥就不赘述了,由于我司项目框架还非常老旧(SSM),随着业务线的扩展和版本迭代,传统的properties配置文件管理方式已经有些无法忍受了。第一个问题是没有定义好配置文件的管理规范,第二就是改个配置文件仍然无法避免要重启服务的痛点。所以决定从这两个问题下手,来优化一下项目中properties配置文件的管理!我发现拿spring整合nacos资料好少啊,老技术都不配用它吗?^_^ 而且官方文档也只是简单的demo,实际整合过程中会遇到很多问题。二、安装nacos服务..
2021-03-23 16:05:15
3563
4
原创 该公众号提供的服务出现故障,请稍后重试
记录一次很坑爹的微信公众号接收不到回调的问题,配置回调地址的时候直接将测试环境的地址拷贝过去修改了域名,未使用“https”,然后nginx配置了http自动跳转https,就这样,微信post这个http地址被转发成了get请求!解决方案:回调地址使用https协议!回调地址使用https协议!回调地址使用https协议!其他情况可以参考这位兄弟写的帖子,其他问题排查。...
2021-03-05 11:37:55
432
原创 java微信公众号开发之配置服务器
5年了,你知道我这5年是怎么过的吗?! 5年前我做过一次公众号开发,当时写了篇简单的博客:https://blog.youkuaiyun.com/User_xiangpeng/article/details/50378806,时隔5年,再次入坑!一、接入指南1、当时系先准备公众号,该注册注册,该认证认证;不过现在公众平台为了方便程序员们先开始开发,推出了测试公众号,没有准备好公众号的可以先申请个测试号进行开发。申请测试公众号2、使用你的开发语言开发好一个接口,用来配置到微信后台做消息通知,且..
2020-12-15 21:43:07
1081
转载 java将图片切成圆形(头像),防锯齿
一、有个生成图片的需求,需要将用户头像展示成圆形的,找到一个兄弟写的很好用,转了!转载来源package com.im.app.api.util;import javax.imageio.ImageIO;import java.awt.*;import java.awt.geom.Ellipse2D;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileOutputStream;import ja
2020-08-07 11:49:40
2609
原创 苹果账号授权登录APP 服务端验证
前言:公司的C端APP刚做了个微信授权登录,第一个版本也顺利上线,这上第二个版本APP审核被拒了,原因是苹果公司规定APP只要是对接了第三方社交平台的授权登录就要接他苹果的账号授权登录,否则审核可能会被拒绝…接呗,能咋滴!(我们考虑过加个服务端加个开关,提交审核前先把第三方授权登录的功能隐掉,审核通过了再打开,听IOS同事说有封号的风险还是放弃了,然后开始看苹果官方文档…)一、对接流程;苹果官方的文档一言难尽,可能老外的思维方式和我们不同?可能是我英语水平太低,中文的文档看完我感觉还是不清楚整个流程,后来
2020-07-21 22:32:59
3393
原创 通用签名生成工具类
说明:在实际开发中,经常会用到一些第三方接口需要去对参数按顺序进行拼接生成签名进行鉴权校验,这里我把公共的代码贴出来,以供大家参考。 public static String generateSignature(Map<String, String> data) throws Exception { Set<String> keySet =...
2020-04-13 15:13:12
332
原创 springmvc接口接收参数与请求参数格式整理
**相信大家在刚开始接触接口定义与调用时遇到过接口接收不到请求参数的问题,本人也一样,使用springmvc去定义接口或调用第三方http接口时或多或少会搞混;下面咱们一起来整理下接口定义和请求参数格式的关系。**...
2020-03-04 15:57:31
1271
原创 开源视频管理系统-妖气山-mysql版
业余时间在网上找了个开源的视频管理系统,发现它的数据库用的sql server,然后很多同学想要mysql版的,于是做了个转换。首页效果图:代码已上传,如下:https://github.com/user-xiangpeng/yaoqishan...
2020-02-29 13:10:01
3408
19
原创 hbase查询列表数据返回rowKey
设计了rowKey,查询列表却没有返回rowKey这个字段?因公司业务的需要,返回列表数据还需要做详情的查询,那首选当然是根据rowKey去查,性能好呀!一顿操作猛如虎,列表使用scan加rowKey模糊匹配扫描只返回固定条数的数据,但是拿到整行数据却没有看到rowKey?不科学,咋可能不返回呢?搜了下,相关资料比较少,某歌还是比较强大的,来,看代码: Scan scan = n...
2019-11-07 15:52:48
3754
原创 springboot整合hbase
前言 因公司业务场景,原本使用phoenix数据库(hbase的一个sql层)的查询服务需要改为直连hbase,因为phoenix建表 映射到hbase这个过程需要的时间太长了,大数据组的同事是这么说的,也许是我们服务器资源不够吧。原本写的很 nice的sql要全部重构了!java连接hbase注意事项1、对hbase不熟悉的建议先大致了解一下它的基本原理及重要组成部分,它是一个非关系...
2019-11-02 11:37:19
1669
原创 Nginx添加https证书
一、先了解下什么是https证书二、如何获得https证书? 买咯,阿里云了解一下,本文介绍的是免费的,有效期一年,仅供参考。点我去购买三、具体配置步骤1、下载证书2、选择nginx对应的格式3、参考阿里云提供的帮助文档,一步步完成配置4、我的配置示例server { listen 80; server_name xxxx....
2019-08-07 15:35:42
366
2
原创 dubbo单服务配置多注册中心的两种方式
有些时候我们需要将一个服务注册到多个注册中心,例如一些公共的或者说基础的服务,我需要将这个服务同时注册到上海、北京两个分公司的zk上,供他们调用,那要如何配置呢?一、查看官方文档是这样写的:先配置两个注册中心,各自配置一个id,再将接口配置好,并制定注册到哪个注册中心(支持多个);但是我的项目里面是采用注解方式暴露的服务,那要怎么配置呢?二、注解方式的多注册中心配置方法:只需要在配...
2019-05-08 10:53:12
2419
原创 java中元组的使用
场景:我们在写代码的时候,定义一个方法,可能需要返回多个参数,但是可能就两个参数,又不想写个map或实体类,这时候就可以考虑用元组(参考链接:java中的元组)了;我这里用的是ImmutablePair<left, right>来看代码,很简单,超好用: private ImmutablePair<String, String> getAppInfoByTy...
2018-10-31 11:46:31
1147
原创 spring整合dubbo
一、什么是dubbo? 简单的说dubbo是一个分布式服务框架。这里不多说了,详情请参考官方文档:Apache Dubbo Doc 二、为什么要用dubbo,它能做什么? dubbo能优雅的将我们的系统切分成一个个模块来发布,像阿里的电商业务,服务器的压力有多大可想而知,试想如果整个系统都放在一个项目里面,那这台服务器分分秒就要冒烟!按业务模块分开来部署,将访问量平...
2018-07-20 11:37:18
9798
2
原创 eclipse搭建springboot项目(二)
前言:上期写了搭建简单的springboot(eclipse搭建springboot项目(一)),这期具体讲讲怎么整合mybatis吧其实我也是参考的别人写的帖子,这里注明出处:https://blog.youkuaiyun.com/A632189007/article/details/79391223大概讲下流程吧:1、添加依赖的jar2、添加数据库、mybatis配置3、创建dao层的接口和编写sql的x...
2018-06-01 17:22:58
1037
原创 eclipse搭建springboot项目(一)
一、最近听闻springboot很是流行,也很火,于是笔者利用空闲时间来了解了一下;其实我们可以把它理解成一个高度封装的spring+springmvc的一个框架,其主要目的和火起来的原因也很明显,简化配置!原来的spring+spingmvc+mybatis配置文件太多了,项目里面用到的组件多起来的时候,配置文件一大堆,springboot做了简化处理,全部配置整合到一起:application...
2018-06-01 17:07:35
12338
原创 linux下定时备份mysql数据库
本人是个java程序员,朋友自己做了个游戏,前段时间因为数据挂了没有备份导致数据丢失,想找我帮忙写个定时备份的脚本。之前也没写过了,但是思路很简单,写个导出数据库结构和数据的sql,然后定时调度就ok了。于是搜了一发,看下xshell脚本的语法,以及Linux系统上怎么做定时任务:1、编写备份脚本#!/bin/shcd /www/server/mysql/bin/DATE=`date ...
2018-05-18 16:00:13
539
原创 java与.net的DES加密解密
今天遇到一个需求,是对账号的密码用java实现DES加密,但是库里的密码都是由.net语言的DES算法加密好的,关于.net那边的加密方式我只有一张截图:我很奇怪,代码里面有两个key,之前我用过的DES加密都只有一个,于是百度,看到一篇文章,解释很详细:https://www.cnblogs.com/Lawson/archive/2012/05/20/2510781.ht
2018-03-09 18:27:43
926
原创 java压缩图片byte[]并返回byte[]
1、我这里使用的是Thumbnailator,一个google使用的开源的工具类。2、在github上面的地址是:https://github.com/coobird/thumbnailatormaven的地址 net.coobird thumbnailator 0.4.83、我的应用场景是要将一个图片的字节数组进行压缩,并且返回字节数组,如果是图片文件的压缩可
2018-01-04 14:05:48
5108
转载 kafka学习
Apache kafka一、基本概念官网将kafka定义为一个分布式流媒体平台,它主要用于处理活跃的流式数据。并且出列它的三大功能:1、它可以让你发布和订阅记录流。在这方面,它类似于消息队列或企业消息传递系统。2、它允许您以容错方式存储记录流。3、它可以让您在发生记录时处理记录流。 换句话说,它是一个高吞吐量的分布式发布订阅消息系统,它具有以下特点:1、高吞吐量、低
2017-12-26 16:35:48
336
转载 rabbitMQ实例(java)
文章转载自:https://www.cnblogs.com/stormli/p/rabbitmq.htmlRabbitMQ一、背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现。AMQP的出现其实也是应了广大人民群众的需求,虽然在同步消息通讯的世界里有很多公开标准(如 COBAR的
2017-12-26 16:30:14
527
原创 spring线程池ThreadPoolTaskExecutor应用
1、线程池配置文件#一般采用properties配置threadpool.corePoolSize=20threadpool.maxPoolSize=50threadpool.queueCapacity=200002、spring配置文件 3、java代码中注入线程池 @Autowired
2017-12-13 16:44:44
653
原创 excel表格生成sql语句
注:其中A3代码A列第3行="INSERT INTO T_ACCOUNT_TEMP ( GROUP_ID, CHILD_GROUP_ID, NAME, PHONE, EMAIL, DUTIES, ROLE, LIVED)VALUE('"&A3&"','"&B3&"','"&C3&"','"&D3&"','"&E3&"','"&F3&"','"&G3&"','"&H3&"');"
2017-08-04 16:27:16
656
dubbo-admin-0.0.1-SNAPSHOT.jar
2023-05-21
有用过jboss的大神没有?怎么在jboss里面发布两个相同的项目并解决冲突?
2015-05-06
socket连接超时,时好时坏的
2015-05-06
java中<T>的使用的疑问,以下代码有哪些区别呢,求大神们指教啊。
2015-02-10
程序员转项目经理好还是技术总监好?
2015-02-09
问:这个content样式的值,需要导个字库啥的吗?
2015-02-04
要用java8的新特性需要安装jdk什么版本?
2015-02-04
项目中什么时候用单例什么时候用多例?
2015-01-30
问:遍历list集合,筛选出每个对象不重复的指定属性,怎么做效率最高?
2015-01-28
java菜鸟程序员提问:求大神给我说说线程在什么场景下用,以及多线程工作原理。谢谢
2015-01-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人