30行自己写并发工具类(Semaphore, CyclicBarrier, CountDownLatch)是什么体验? 前言 在本篇文章当中首先给大家介绍三个工具Semaphore, CyclicBarrier, CountDownLatch该如何使用,然后仔细剖析这三个工具内部实现的原理,最后会跟大家一起用ReentrantLock实现这三个工具. 并发工具类的使用 CountDownLatch CountDownLatch最主要的作用是允许一个或多个线程等待其他线程完成操作.比如我们现在有一…
这一段时间,由于项目上线基于稳定,所以我这边在基于我们一期迭代的分支上优化一部分我们之前没有做的功能,报表导出.本身之前用的是3.5的版本,但是由于同事要写导入,写的代码只有4.1.0的版本支持,所以无奈之下,只能自己看源码把之前的工具类重写一波.下面我们来看一下实现步骤. 1.导入jar <!-- poi --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi<…
以前写项目的时候总是在使用到了时间的转换的时候才在工具类中添加一个方法,这样很容易导致代码冗余以及转换的方法注释不清晰导致每次使用都要重新看一遍工具类.因此整理出经常使用的一些转换,用作记录,以便以后使用. 此工具类主要用于获取时间戳以及各种时间类型之间的转换. package com.test; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor…
简述: 当我们常用到某些指令时,我们就需要将这个命令进行封装.封装的设计和扩展,因人而异.但为了每个人都能够了解到这个命令,常需要写出这个类的help. 关键字: 函数.getopts 函数 通过自定义函数(可参阅:http://www.runoob.com/linux/linux-shell-func.html),能够实现过程操作.输入捕获(read).输出获取(return). getopts 为了获取用户在命令下的参数,通过该命令来操作(可参阅:https://blog.csdn.net/…
1,导入poi相关依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.0.1</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artif…
转自:https://blog.csdn.net/jinchunzhao123/article/details/88626077 浏览器响应: 而且进入断点调试,所有的数据都执行了就是没有下载提示.而且下载失败 如果设置手动设置下载路径的话,下载成功,也没有下载提示. 问题: 自己使用的是ajax请求路径. 而要想出现下载提示框,应该是重新打开一个新的窗口,所以应使用location.href = url请求路径这样问题就解决了.…
以下是一些依据经常使用java类进行组装的对文件进行操作的类,平时,我更喜欢使用Jodd.io中提供的一些对文件的操作类,里面的方法写的简单易懂. 当中jodd中提供的JavaUtil类中提供的方法足够我们使用,里面的方法写的很简练,比如append,read等方法,封装更好,更符合面向对象, 这里面我写的一些方法可多都是模仿jodd,从里面进行抽取出来的. /** * 获取路径目录下的全部文件 * @param path * @return */ public static File[] ge…
//margin-right=================.mr(100); .mr(@n, @i: 1) when (@i =< @n) { .mr-@{i} { margin-right: @i+px; } .mr(@n, (@i + 1)); } less里面+-号挺难弄的,多实验几次差不多就有点体会了 我觉得在样式里面的话+相当于链接符号 @i+px如果这里不写+号就是报错,不能编译,万望大家注意了…
代码: using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; using System.Text; using System.Text.RegularExpressions; using System.Threading.Tasks; namespace DataSync.Utils { /// <summary> /// 写日志类…
如果一个jar中含有多个主程序,而你没有配置默认主程序,或者想要运行指定主程序,则可以通过如下命令执行: Java -cp example03-1.0-SNAPSHOT.jar cn.vicky.example03.HelloAgent -cp <目录和 zip/jar 文件的类搜索路径> example03-1.0-SNAPSHOT.jar jar包 cn.vicky.example03.HelloAgent 指定的主程序类…