- 博客(74)
- 资源 (4)
- 收藏
- 关注
原创 java后台实现文件异步下载
一说到异步下载,大家可能会想到耳熟能详的ajax 。通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。可是,大家有想过没有ajax的异步刷新只是针对前端的,但是比方我一个业务访问量比较庞大的系统,如果在高峰期用户正在操作业务功能的时候,这时有一个用户在做全量下载,要知道ajax发送的请求到后台是没有异步处理的,这时必定会耗费大量的资源,甚至拖垮系统。下面我给大家介绍一种后台实现异步下载的方案。具体代码就不发了,共.
2021-03-15 11:14:53
4966
3
原创 vue 上传多张图片和表单一起提交至后台
最近接到一个需求,对当前项目增加问题反馈功能,应对公司审计 。传统的vue上传组件,多张图片会提交多个请求到后台,这种显然不可取,我们要实现的就是一次请求后台同时将多张图片和表单提交到后台。主要策略就是 : 1. 图片组件上传不提交 2 。使用FormData来将 图片和表单提交到后台。前端代码如下 : <el-form-item label="图片上传"> <el-upload action='/rest/problemFe...
2021-03-12 21:09:33
6622
2
转载 Java并发编程:并发容器之CopyOnWriteArrayList
Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实现的并发容器,它们是CopyOnWriteArrayList和CopyOnWriteArraySet。...
2018-10-19 14:22:21
263
转载 写给工程师的十条精进原则
引言时间回到8年前,我人生中第一份实习的工作,是在某互联网公司的无线搜索部做一个C++工程师。当时的我可谓意气风发,想要大干一场,结果第一次上线就写了人生中第一个Casestudy。由于对部署环境的不了解,把SVN库里的配置文件错误地发到线上,并且上完线就去吃晚饭了,等吃饭回来发现师傅在焦头烂额地回滚配置。那次故障造成了一个核心服务20分钟不可用,影响了几百万的用户。这仅仅是一个开始,在后来半...
2018-09-10 11:13:07
283
转载 Java NIO系列五之拥抱Path和Files
一 文件I/O基石:PathJava7中文件IO发生了很大的变化,专门引入了很多新的类来取代原来的基于java.io.File的文件IO操作方式:import java.nio.file.DirectoryStream;import java.nio.file.FileSystem;import java.nio.file.FileSystems;import java.nio.f...
2018-08-15 11:17:09
282
转载 Java NIO系列七之 AsynchronousFileChannel异步文件通道
Java7中新增了AsynchronousFileChannel作为nio的一部分。AsynchronousFileChannel使得数据可以进行异步读写。下面将介绍一下AsynchronousFileChannel的使用。创建AsynchronousFileChannel(Creating an AsynchronousFileChannel)AsynchronousFileChanne...
2018-08-15 11:13:31
1112
转载 JAVA NIO系列六之NIO学习总结以及NIO新特性介绍
我们知道是NIO是在2002年引入到J2SE 1.4里的,很多Java开发者比如我还是不知道怎么充分利用NIO,更少的人知道在Java SE 7里引入了更新的输入/输出 API(NIO.2)。但是对于普通的开发者来说基本的I/O操作就够用了,而NIO则是在处理I/O性能优化方面带来显著性效果。更快的速度则意味着NIO和NIO.2的API暴露了更多低层次的系统操作的入口,这对于开发者而言则意味着更复...
2018-08-15 11:12:03
177
转载 Java NIO系列四之Selector(选择器)
一 Selector(选择器)介绍Selector 一般称 为选择器 ,当然你也可以翻译为 多路复用器 。它是Java NIO核心组件中的一个,用于检查一个或多个NIO Channel(通道)的状态是否处于可读、可写。如此可以实现单线程管理多个channels,也就是可以管理多个网络链接。 使用Selector的好处在于: 使用更少的线程来就可以来处理通道了, 相比使用多个线程,避免了...
2018-08-15 11:10:30
226
转载 Java NIO系列三 之 Channel(通道)
一 Channel(通道)介绍通常来说NIO中的所有IO都是从 Channel(通道) 开始的。 从通道进行数据读取 :创建一个缓冲区,然后请求通道读取数据。 从通道进行数据写入 :创建一个缓冲区,填充数据,并要求通道写入数据。 数据读取和写入操作图示:Java NIO Channel通道和流非常相似,主要有以下几点区别: 通道可以读也可以写,流一般来说是单向...
2018-08-15 11:09:26
218
转载 Java NIO系列二 之 Buffer(缓冲区)
一 Buffer(缓冲区)介绍Java NIO Buffers用于和NIO Channel交互。 我们从Channel中读取数据到buffers里,从Buffer把数据写入到Channels.Buffer本质上就是一块内存区,可以用来写入数据,并在稍后读取出来。这块内存被NIO Buffer包裹起来,对外提供一系列的读写方便开发的接口。在Java NIO中使用的核心缓冲区如下(覆盖了通...
2018-08-15 11:08:03
256
转载 Java NIO系列一之概览
一 NIO简介Java NIO 是 java 1.4 之后新出的一套IO接口,这里的的新是相对于原有标准的Java IO和Java Networking接口。NIO提供了一种完全不同的操作方式。NIO中的N可以理解为Non-blocking,不单纯是New。它支持面向缓冲的,基于通道的I/O操作方法。 随着JDK 7的推出,NIO系统得到了扩展,为文件系统功能和文件处理提供了增强的支持...
2018-08-15 11:06:32
150
转载 KAFKA--几个基本概念
几个基本概念: Kafka是一个分布式流数据系统,使用Zookeeper进行集群的管理。与其他消息系统类似,整个系统由生产者、Broker Server和消费者三部分组成,生产者和消费者由开发人员编写,通过API连接到Broker Server进行数据操作。我们重点关注三个概念: Topic,是Kafka下消息的类别,类似于RabbitMQ中的Exchange的概念。这是逻辑上的概...
2018-07-19 15:48:53
901
转载 java队列——queue详细分析
Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Deque接 口。 Queue的实现1、没有实现的阻塞接口的LinkedList: 实现了java.util.Queue接口和java.util.AbstractQueue接口 内置的不阻塞队列: Prior...
2018-07-19 15:17:30
182
转载 并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。注:什么叫线程安全?这个首先要明确。线程安全就是说多线程访问...
2018-07-19 11:16:45
526
转载 分布式之消息队列复习精讲
为什么写这篇文章?博主有两位朋友分别是小A和小B:小A,工作于传统软件行业(某社保局的软件外包公司),每天工作内容就是和产品聊聊需求,改改业务逻辑。再不然就是和运营聊聊天,写几个SQL,生成下报表。又或者接到客服的通知,某某功能故障了,改改数据,然后下班部署上线。每天过的都是这种生活,技术零成长。小B,工作于某国企,虽然能接触到一些中间件技术。然而,他只会订阅/发布消息。通俗点说,就是调调API。...
2018-06-26 17:27:00
189
原创 MYSQL 分区自动管理
一、 MYSQL的分区表简介1. 什么是表分区?是指根据一定规则,将数据库中的一张表分解成多个更小的,容易管理的部分。从逻辑上看,只有一张表,但是底层却是由多个物理分区组成。例如:CREATE TABLE `rangeyear_t1_kafka_consume_log` (`id` int(11) NOT NULL COMMENT 'id',`create_time` datetime ...
2018-06-26 15:17:22
4016
1
原创 MySQL表自动生成Java实体类
最近开发报表到web页面展示,由于数据库中标字段多达50多个,写起来非常费劲,写下这个工具, talk is cheap, show the codes...package com.sf.test;import java.io.File;import java.io.FileWriter;import java.io.IOException;import jav...
2018-06-25 17:36:22
3953
1
原创 Spring定时器多定时任务配置
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springfr
2018-05-10 14:08:59
945
转载 java对redis的基本操作
一、server端安装 1、下载 https://github.com/MSOpenTech/redis 可看到当前可下载版本:redis2.6 下载windows平台文件: 解压后,选择当前64位win7系统对应的版本: 2、安装 1)解压后将里面所有文件拷贝至redis安装目录: 几个exe程序的功能: ...
2018-04-12 10:09:39
158
转载 java中几种常见的NPE问题
1、Map下的NPE 直接上代码:[java] view plain copypublic class User { private Integer id; private String name; public Integer getId() {
2018-01-29 15:28:41
2693
转载 在Java8的foreach()中使用return/break/continue,不会跳出循环
今天使用lambda表达式处理集合时,发现对return、break以及continue的使用有点迷惑,于是自己动手测试了一下,才发现在使用foreach()处理集合时不能使用break和continue这两个方法,也就是说不能按照普通的for循环遍历集合时那样根据条件来中止遍历,而如果要实现在普通for循环中的效果时,可以使用return来达到,也就是说如果你在一个方法的lambda表达式中使用
2017-12-29 11:52:14
56697
4
转载 Mysql查询结果顺序按 in() 中ID 的顺序排列
[java] view plain copy"queryGBStyleByIDs" resultMap="styleMap"> select style_num_id ,style_id,style_title,style_pic FROM gb_style where online = 1 AND is_hide = 0 and styl
2017-12-11 17:57:35
485
原创 jquery timeline插件展示操作记录
近期产品提出需要记录管理员在使用小助手APP时的登陆, 转单,派单,退出等关键操作,在web页面展示,要求工作时间轴的形式展现。想到了jquery timeline插件。 1 。引入两个js, jquery.timelinr-0.9.53.js, jquery.min.js, style.css等文件 2 。jsp页面关键代码如下 3。js页面调用如下
2017-11-14 16:17:32
1385
转载 hibernate一级缓存和二级缓存的区别
缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。 缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓存的并发
2017-09-25 15:48:55
182
转载 Java 代码性能优化总结
前言代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候就必须考虑每
2017-09-11 17:47:41
230
转载 JS事件冒泡及阻止冒泡3种方法之间的不同
什么是JS事件冒泡?:在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)。 如何来阻
2017-08-31 11:22:58
359
转载 java跳出多重嵌套循环
在Java里面,我们知道有goto这个关键字,但是实际却没有啥作用,这就让我们不像在c/c++里面能够随便让程序跳到那去执行,而break只能跳出当前的一个循环语句,如果要跳出多个循环体那么该怎么办呢。我们可以这样解决:我们可以在循环体开头设置一个标志位,也就是设置一个标记,然后使用带此标号的break语句跳出多重循环。[java] view plain copy
2017-07-10 22:31:10
214
原创 nginx反向代理配置
最近做项目,需要实现下面功能。 1. 应用服务器上的nas上挂载有html,images等文件是骑士岗前培训考试,骑士登陆app侯需要通过互联网访问应用服务器上的岗前培训考试页面。 2.app应用下载地址的页面放在nas上,通过微信扫描二维码需要访问该页面,点击页面上的安卓下载需要访问应用服务器上的接口提供app应用信息【应用名称,大小,
2017-07-10 18:18:09
278
转载 nginx反向代理及负载均衡
前言本文只针对Nginx在不加载第三方模块的情况能处理哪些事情,由于第三方模块太多所以也介绍不完,当然本文本身也可能介绍的不完整,毕竟只是我个人使用过和了解到过得。所以还请见谅,同时欢迎留言交流Nginx能做什么1.反向代理2.负载均衡3.HTTP服务器(包含动静分离)4.正向代理以上就是我了解到的Nginx在不依赖第三方模块能处理的事情,下面详细说明每种功能怎么做
2017-07-10 18:07:16
344
原创 orcale实现跨库查询,dblink使用
最近做系统的时候,有这样子一个需求,需要跨orcale数据库实现搜索功能,便想到了使用orcale的dblink。--zl2lz是数据库链接名,khsafelz,kehao是zl数据库用户名,密码,khsafelz是xx数据库SIDcreate database link zl2lz connect to khsafelz identified by kehao using '(DESCRI
2017-06-23 14:20:02
634
原创 word转htm,excel转htm, doc转pdf
常用文档格式转换,doc转htm,excel转htm, doc转pdf格式以便查阅。 要求:1、需要依赖jacob-1.14.3.jar2、jacob-1.14.3-x64.dll 【如果编译报错缺少缺少该文件,需要将该文件放入 x://windows/system32目录下,然后将该文件复制到jdk的lib目录下,才可以正常编译,谢谢。】package com.sf.test;
2017-06-23 14:08:53
592
原创 ant打包项目,部署
1. 下载ant并安装2.配置环境变量ant_home : e:\apache-ant-1.8.0ant_paht : e:\apache-ant-1.8.0\bin3. 打包项目进入打完标签的项目目录,java项目名称为khsafety打开dos命令窗, cd e:khsafe/khsafety敲入命令"ant" 回车键,开始打包
2017-06-23 10:21:21
448
原创 orcale 游标
1、Oracle查看Oracle最大游标数 sys/admin@test151 as sysdba2.Oracle查看当前打开的游标数目 select count(*) from v$open_cursor; 3.修改Oracle最大游标数 alter system set
2017-06-23 10:19:29
246
原创 sqldeveloper 数据导入导出
第一步,打开sql developer找到菜单栏中的工具栏第二步,选择“数据库导出”栏第三步, 打开导出向导,设置导出参数条件注意一: 选择要导出的数据库注意二: “显示方案”和“存储”在导出时候要取消勾选,否则导出会不成功注意三: 将”删除“勾选注意四: 导出的时候要选择“单独目录”注意五:
2017-06-23 10:18:15
15036
1
原创 jquery周历插件jqueryweekcalendar汉化实现【带节日】
最近接到一项工作任务,需要展示并打印一周内24小时的排班信息,便想到使用jquery周历插件实现,下面是效果图尚未经过美工打磨。下面说下,实现过程。一、依赖的js文件/plugins/jquery-week-calendar-master/full_demo/reset.css' />/plugins/jquery-week-calendar-master/libs/css/
2017-06-22 17:08:48
10783
1
原创 java导入、导出excel
近期做到关于java导入导出excel的功能,有感甩出下面代码。package com.sf.sgs.ops.utils;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.i
2017-06-22 16:46:26
447
转载 mysql主从复制、读写分离、分库分表、分片
数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)第1章 引言随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来提高网站性能,横向扩展数据层已经成为架构研发人员首选的方式。水平切分数据库:可以降低单台机器的
2017-06-22 16:23:42
6106
原创 spring集成百度编辑器
近期接到工作任务,在线hmtl5技术预演,将文字或图片生成html文件作为培训课件供app用户参与考试,想到了百度编辑器,于是乎就引入了百度编辑器功能。先说下依赖文件:js模块资源文件:{ "imageActionName": "uploadimage", "imageFieldName": "upfile", "imageMaxSize": 2
2017-05-02 16:20:19
332
原创 js生成指定范围内的随机数
近期用到产生指定范围内随机数,琢磨了一下,码了下砖function getRandomInt(min, max) {return Math.floor(Math.random() * (max - min + 1)) + min;}alert(getRandomInt(100000,10000000))
2017-04-14 22:48:34
303
原创 动态新增删除一行,js对象表单验证
动态新增一行:/** * 新增一行 */function addNewColumn(id,index) { //row_count = getNowRowCount(id); var html = ''; html += ''; html += ''; html += ''; html += '固定值区间值'; html += ''; html += ''; html
2017-03-29 19:57:38
729
hbae表数据导出
2016-09-22
hbase表操作工具类
2016-09-22
java导入导出excel
2016-09-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人