自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (5)
  • 收藏
  • 关注

原创 在 iphone 手机浏览器无法下载(主要指 safari 和 chrome ) excel ,但是可以直接预览 excel

把请求头修改为application/vnd.openxmlformats-officedocument.spreadsheetml.sheet例如response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");请求头改为这个,pc 浏览器表现为下载...

2019-09-03 14:39:31 4791

原创 java 使用 pdfbox 转图片 中文乱码,或者空白页面解决方案

如果出现以上情况 或则报Cannot read JBIG2 image: jbig2-imageio is not installed<dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>fontbox</artifactId> &lt...

2019-06-12 23:39:03 4110 2

原创 支付宝

开源支付宝小程序日历选择组件,微信小程序也可用github:https://github.com/cyyinfo/calendar使用方式* 在小程序项目中新建一个日历组件文件夹,例如:calendar 拷贝本项目下的 .acss ..axml .json .js 四个文件到文件夹 在需要使用的页面引入组件,例如:"usingComponents": { "c...

2019-05-12 15:57:13 564 1

原创 (Spring boot 2.x 版本)Spring Cloud Eureka 注册中心开启用户权限验证

当我们配置完Spring Cloud Eureka 注册中心的时候,默认访问首页直接进入注册中心。这样不管是谁,都可以直接进入太不安全,如果是在内网还好一点,如在外网,则把你的所有服务都暴露在外,非常不安全。好在Spring Cloud 已近为我们考虑到了这些,而且也有了解决方案,而且非常简单第一步:增加spring-boot-starter-security 依赖&lt...

2019-04-22 09:14:47 924 1

原创 Spring Boot 异步任务 @EnableAsync 和 @Async

强大的 spring boot 已经帮忙封装了线程池执行异步任务。再也不用自己写线程池了。以前如果需要执行异步任务,需要自己封装一个线程池,然后吧任务提交到线程池执行。在 spring boot 中已经封装了改工具,只需要直接启用就可以了。1、在启动类上增加 @EnableAsync 注解,开启异步任务。2、在需要异步执行的方法上增加 @Async 注解,标识为一...

2019-03-13 16:18:08 1409

原创 Nginx 的负载均衡配置?

nginx 是一款非常优秀的轻量级反向代理服务器,可以很轻松的就实现 web 的反向代理并且能够进行负载均衡。nginx 通过 upstream 来实现负载均衡具体配置如下:upstream web_project {    server 127.0.0.1:8080;    server 127.0.0.1:8081;}server {    location / {   ...

2019-02-23 10:31:28 227

原创 JAVA 中创建线程的三种方式,如果在面试的时候被问到记住一点要回答是三种,面试官也希望你回答的是三种

一搬情况下大家都知道在 java 中创建一个新线程的二种方式,但是对第三种方式基本不熟,甚至一些工作好几年的老程序员也不知道。// 继承 Thread 类public class NewThread extends Thread{ public void run(){}}// 实现 Runnable 接口public class NewThread2 implements...

2019-01-11 10:37:16 304

原创 synchronized 是公平锁吗?可以重入吗?详细的来说说 synchronized

公平锁:获取不到锁的时候,会自动加入队列,等待线程释放后,队列的第一个线程获取锁非公平锁:获取不到锁的时候,会自动加入队列,等待线程释放锁后所有等待的线程同时去竞争 什么是可重入?同一个线程可以反复获取锁多次,然后需要释放多次 回答标题问题:synchronized 是非公平锁,可以重入。 在来看几个问题:1、 synchronized 加在 stati...

2019-01-10 14:18:30 20434 8

原创 JAVA 虚拟机,你需要了解这些(内存模型,垃圾收集机制,垃圾收集算法)

1、内存模型JVM 把内存分为了5个大的区域 程序计数器 线程私有  很小的一块区域 存放当前正在执行的字节码指令 唯一一块不会抛出任何异常的区域 java 虚拟机栈 线程私有  会抛出 OOM 异常 和  StackOverflowError 存储了方法执行时相关信息(栈帧) 本地方法栈 线...

2018-12-16 10:11:19 882

原创 即使你不想换工作也该不时的看看面试题,因为这样能告诉你那些内容你还不会,给你一个学习的方向

看面试题有必要吗?我觉得非常有必要原因有以下几点。1、如果你要面试,能提高面试成功率,2、如果你不想换工作,也能告诉你,你会那些,那些不会,往后的学习方向。3、可以看看其他公司关注的技能点。4、保持学习的热度。   更多面试题可以关注小程序...

2018-12-16 09:26:41 349

原创 Redis 中可能导致性能问题以及原因

1、线上环境是用 keys 命令因为 Redis 是单线程的,执行 keys 命令会导致扫描 所有的 key 非常耗时,导致阻塞了其他的命令执行。从而影响性能,一般线上环境会禁止使用该命令 2、aof 备份数据方式配置了 appendfsync always 每次数据改变都同步刷新到磁盘每写入一条日志就进行一次fsync操作,数据安全性最高,但速度最慢,因为要进行磁盘操作。如果一个...

2018-12-12 15:47:42 1115

原创 JAVA 高级面试题及答案

1、线程池的5个参数以及他们的意义? 2、讲讲 Redis 的哨兵模式 3、Redis 的集群有几种方式?有什么不同? 4、Spring 是怎么解决循环依赖问题的? 5、能手写 快速排序 吗? 7、讲讲什么是悲观锁,什么是乐观锁,JAVA 中都是怎么实现的? 8、JVM 的内存模型是什么样的? 9、线上环境频繁发生 Full GC 要怎么排查...

2018-12-12 15:18:26 416 1

原创 企业信息化系统中的权限管理实战

实际需求1、不同用户拥有不同权限(功能)2、不同部门拥有相同权限的用户可以查看或修改相应部门下的数据3、高一级的用户(经理,总监)可以看到管辖下的其他用户的数据。4、同一个用户可以支持多个角色(可以是销售,也可以是采购经理,这2个角色的功能权限完全不同,需要区分) 鉴以上需求,可以从2个维度来控制用户的功能权限,和数据权限。功能权限很简单是一个 RABC 的权限模型:...

2018-12-12 13:59:21 713

原创 Redis 实现的可用于生产环境的分布式锁(带超时时间)

我写的加锁方式有缺陷,所以删掉了。正确方式见博客:http://www.cnblogs.com/linjiqin/p/8003838.html   写的特别好  小程序查看更多java相关面试题

2018-11-21 15:32:07 2042

原创 JVM 虚拟机内存结构,和 GC 回收算法

小程序查看更多java相关面试题

2018-10-09 17:45:45 235

原创 spring boot 下载文件出错 org.apache.http.ConnectionClosedException: Premature end of Content-Length delimi

下载一个大文件(100M左右)报错,org.apache.http.ConnectionClosedException: Premature end of Content-Length delimited message body (expected: 103767; received: 95040百度 google 了很久尝试了很多办法,比如增加 http 链接的超时时间,增加缓冲区等都...

2018-05-16 10:32:35 23657 1

原创 区块链到底是什么样的技术

先把大概框架写着,后续慢慢补充,如果谁有比较好的答案,或者我写的不对,欢迎在留言处补充。区块链并不是一门新的以前重来没有的技术而是以下四个钟技术的结合。1、p2p 数据传输技术。很古老的一种技术,主要解决的就是网络中用户端到用户端(p2p)的数据传输问题。在区块链中也主要通过它来达到去中心化的目的,区块链中通过p2p技术,同步全量的区块数据信息,从而保证任何一个节点都拥有一个完整的功能,而不依赖某...

2018-04-17 12:55:45 526

原创 怎么使用 nodejs 增加一个普通web项目的开发速度

最近遇到一个问题,我有一个普通的小项目,很简单,页面也就十几个,但是后天都是 restful 的接口,不能后端渲染。这样一个小项目完全没必要做成 SPA 项目,复杂度高还麻烦,SEO 不够友好,而且项目再小它也有公共的页头,页尾,html 里面又不支持include 或者类似的标签,能直接导入一个html片段。遇到这种情况自然就想到了 nodejs ,百度一下有很多解决方案,比如  webpack...

2018-04-08 14:29:04 818

原创 什么是区块链

最近区块链这么火,我也大概了解了一下什么事区块链。总得来说区块链就一句话:“分布式去中心化的数据存储解决方案(系统)”它是一门技术的运用方式。另外还有一个特点就是数据不可更改。包括数据的拥有者(除非你掌握了网络中超过51%的数据节点)所以区块链技术主要解决的问题是去中心化和分布式数据存储。一、数据存储数据存储很简单,就是就是把产生的电子数据(例如我这边博客)以文档或者文件的形式保存在硬盘上。在传统...

2018-03-13 18:00:09 408

原创 中国大陆省市区县三级、四级菜单数据整理

省市区县三级数据 json 格式数据,mysql 导入数据下载element 级联菜单地理数据 下载iview 级联菜单 地理位置数据下载

2017-10-20 16:37:40 8317 1

原创 spring boot maven 报错 sconnected from the target VM, address: '127.0.0.1:57472', transport: 'socket'

spring boot maven web项目启动 报错 sconnected from the target VM, address: '127.0.0.1:57472', transport: 'socket' idea 直接运行 springbootAplication 启动类,无法启动web项目,也没有什么具体的报错信息。百度后 有说 是因为这个项目已经启动了,但是因意外关闭导...

2017-10-09 10:40:23 19721 3

原创 IPhone UC 浏览器基于cookie登录的用户无法退出(无法删除 cookie)问题

IPhone UC 浏览器基于cookie登录的用户无法退出问题。其实是在服务端添加 cookie 时 httponly 设置为true 在服务端删除失败,导致的用户无法退出。事件还原在服务端增加 cookie 时 httponly 参数设置为 true,添加代码如下 Cookie cookie = new Cookie(key, value); co...

2017-09-25 14:19:07 2605

原创 java 60 行代码写一个简单可用的并且带过期时间的内存缓存

60 行代码写一个简单可用的并且带过期时间的内存缓存在一个小项目中需要特别简单的使用一个缓存。如果要引入 ehcache 等其他第三方缓存还需要增加 各种 jar 甚至需要增加配置文件。特别麻烦。所以就自己写了一个。思路也很简单。1、使用一个  static 修饰的 ConcurrentHashMap 对象保存数据。2、存入数据的时候把存入的实际数据增加一个外包装,顺便加上存入...

2017-09-19 14:41:53 11502 13

原创 spring cloud config server 配置中心

spring cloud config  配置中心配置中心分为  server 服务端 client 和客户端, 服务端搭建pom.xml &lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi...

2017-08-21 11:44:44 811

原创 使用 vue 1.0.3 $set 函数遇到的坑

vue 1.0.3  中 $set 函数是动态改变或添加一个 data 中的属性值时 属性 key 不可以使用纯数字。例如:var app = new Vue({     el:"#app",     data:{         test:{             k1:'v1',             k2:'v2'         }     },

2017-08-21 09:49:44 1785

原创 web 项目中设置 cookie 的时候添加 domain 和不添加 domain 的区别

在 web 项目中设置  cookie 的时候 domain (域名) 属性为可选项,可设置也可以不设置。那么设置和补设置到底有什么区别呢?1、设置 cookie 时明确指定 domain 域名,子域名可读取(子域共享该cookie),删除时则也必须明确指定域名,否则无法删除。2、设置 cookie 时不指定域名,使用默认值,则表示 只有当前域名可见(子域不可共享)。删除时也不

2017-07-08 17:44:09 14327 1

原创 记一次bug:错误: 找不到或无法加载主类 Test

eclipse 报错  错误: 找不到或无法加载主类 Test百度 google 找到的答案是  eclipse 中 Java build path 中添加的jar 包有错误。解决办法是删掉,重新添加一遍解决问题也有说 jdk 错误的,或者没配置好的,或者 jar版本不对的。 我的问题是 在之前我运行过一个叫 Test 的类,所以在eclipse 的 Run Configur...

2017-07-07 14:19:21 908

原创 spring boot 报错 Error creating bean with name 'indexController': Injection of autowired dependencies

Spring boot 报错 无法找到匹配的bean 所以无法注入,并且不是忘记增加注解,或配置,配置的名称 类型也没有错。最后的解决方法 很简单只是挪一下启动类的位置就能搞定

2017-06-28 09:05:46 20148 2

原创 java 中什么时候用抽象类,什么时候用 接口(面向对象的继承与多态)

抽象类:强调的是把共同(共有、相同)的属性方法, 抽象出来,统一写在一个地方(他们的实现代码是一样的),方便维护。接口: 抽象的是行为 - 同一种行为的不同实现方式。当多个对象都拥有相同的行为,但是行为的具体实现方式不一样的时候可以用接口抽象所以一般在实际项目中接口和抽象类是配合使用而不是相互替代例如: 所有的订单都有单号,单价,数量。都拥有,而且相同,所以可以用一

2017-06-26 17:05:58 7073 1

原创 redis 中 set 和 hset 有什么不同,什么时候使用 hset 什么时候使用set?

redis 中存数据时,到底什么时候用  hset 相比于 set 存数据时又有什么不一样?set  就是普通的已key-value 方式存储数据,可以设置过期时间。时间复杂度为 O(1),没多执行一个 set 在redis 中就会多一个 key ,hset 则是以hash 散列表的形式存储。超时时间只能设置在 大 key 上,单个 filed 则不可以设置超时 时间复杂度我百度了很多文章...

2017-06-17 14:09:07 81089 5

原创 spring-cloud 微服务框架集合 Eureke 服务注册于发现

spring  boot 要搭建一个 web 项目特别简单。只需要配置一下 pom.xml 然后几行代码就能搭建一个web项目,想让我们来搭建一个注册中心一、注册中心  源码:https://github.com/cyyinfo/eureka-server.git第一步新建一个 maven 项目 (这一步 具体细节省略不会的可以自行google)第二步 配置 pom.xml&lt...

2017-06-10 14:44:25 1661 3

simplewebrtc.js webrtc网页视频开发帮助工具

网页视频开发 webrtc ;(function () { var logger = { log: function (){}, warn: function (){}, error: function (){} }; // normalize environment var RTCPeerConnection = null, getUserMedia = null, attachMediaStream = null, reattachMediaStream = null, browser = null, webRTCSupport = true; if (navigator.mozGetUserMedia) { logger.log("This appears to be Firefox"); browser = "firefox"; // The RTCPeerConnection object. RTCPeerConnection = mozRTCPeerConnection; // The RTCSessionDescription object. RTCSessionDescription = mozRTCSessionDescription; // The RTCIceCandidate object. RTCIceCandidate = mozRTCIceCandidate; // Get UserMedia (only difference is the prefix). // Code from Adam Barth. getUserMedia = navigator.mozGetUserMedia.bind(navigator); // Attach a media stream to an element. attachMediaStream = function(element, stream) { element.mozSrcObject = stream; element.play(); }; reattachMediaStream = function(to, from) { to.mozSrcObject = from.mozSrcObject; to.play(); }; // Fake get{Video,Audio}Tracks MediaStream.prototype.getVideoTracks = function() { return []; }; MediaStream.prototype.getAudioTracks = function() { return []; }; } else if (navigator.webkitGetUserMedia) { browser = "chrome"; // The RTCPeerConnection object. RTCPeerConnection = webkitRTCPeerConnection; // Get UserMedia (only difference is the prefix). // Code from Adam Barth. getUserMedia = navigator.webkitGetUserMedia.bind(navigator); // Attach a media stream to an element. attachMediaStream = function(element, stream) { element.autoplay = true; element.src = webkitURL.createObjectURL(stream); }; reattachMediaStream = function(to, from) { to.src = from.src; }; // The representation of tracks in a stream is changed in M26. // Unify them for e

2013-03-27

图片处理工具,图片切割,图片缩放,图片黑白处理

图片切割,图片缩放,图片黑白处理,gif图片制作,gif图片分解,等图片处理工具类 在 OperateImage 类中包含所有工具方法

2012-10-21

blazeds.war

blazeds.war

2011-12-01

flex 4 api

flex 4 api 文档

2011-12-01

SocketSniff-v1.05

网络数据包截取工具,选择监听进程,获取该进程发送和接受的数据包

2011-08-08

空空如也

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

TA关注的人

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