自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (3)
  • 收藏
  • 关注

原创 java 线程池实现

import java.util.*;import java.util.concurrent.*;public class TestThreadPoolService { //可用的cpu数量 private static final int CPU_COUNT = Runtime.getRuntime().availableProcessors(); //阻塞队列大小 private static final BlockingQueue<Runnable&..

2021-10-31 17:25:01 115

原创 mac、windows系统如何快速创建指定大小文件

日常工作中,我们经常会有这样的需求。需要测试一个指定大写文件的上传速度。但是本地又没有合适大小的文件,怎么办呢?一个语句即可搞定。windows:fsutil file createnew 文件名(带路径)文件大小例如://创建1K的txt文件fsutil file createnewD:\test.txt 1024//创建1M的txt文件fsutil file createnewD:\test.zip10240mac:mkfile -n size【...

2021-08-25 13:38:54 520

转载 tomcat常用配置详解和优化方法

常用配置详解1 目录结构/bin:脚本文件目录。/common/lib:存放所有web项目都可以访问的公共jar包(使用Common类加载器加载)。/conf:存放配置文件,最重要的是server.xml。/logs:存放日志文件。/server/webapps:来管理Tomcat-web服务用的。仅对TOMCAT可见,对所有的WEB APP都不可见(使用Catalina类加载器加载)。/shared/lib:仅对所有WEB APP可见,对TOMCAT不可见(使用Shared类...

2021-08-02 12:20:31 1318

原创 JDK8时间日期相关操作

package test;import org.junit.Test;import java.time.*;import java.time.format.DateTimeFormatter;import java.time.temporal.TemporalAdjuster;import java.time.temporal.TemporalAdjusters;public class DataTimeUtil { /** * 日期操作 */ ...

2021-07-22 01:14:51 481 2

转载 Java ArrayList 自动扩容及trimToSize()方法实现

前几天看了Java ArrayList,没有明白trimToSize()这个方法是什么意思,所以看了一下源码并且debug一下自己的一个例子,明白了其中的含义。贴在这里。 ArrayList al = new ArrayList(10); for(int i=0;i<10;i++){ al.add(i); } al.add(1); al.trimToSize();例子很简单,就是new

2021-07-14 12:16:32 81

转载 Java中创建对象的5种方式

作为Java开发者,我们每天创建很多对象,但我们通常使用依赖管理系统,比如Spring去创建对象。然而这里有很多创建对象的方法,我们会在这篇文章中学到。Java中有5种创建对象的方式,下面给出它们的例子还有它们的字节码使用new关键字 }→调用了构造函数 使用Class类的newInstance方法 } →调用了构造函数 使用Constructor类的newInstance方法 }→调用了构造函数 使用clone方法 } →没有调用构造函数 使用反...

2021-07-14 11:23:54 206

转载 缓存更新的套路

看到好些人在写更新缓存数据代码时,先删除缓存,然后再更新数据库,而后续的操作会把数据再装载的缓存中。然而,这个是逻辑是错误的。试想,两个并发操作,一个是更新操作,另一个是查询操作,更新操作删除缓存后,查询操作没有命中缓存,先把老数据读出来后放到缓存中,然后更新操作更新了数据库。于是,在缓存中的数据还是老的数据,导致缓存中的数据是脏的,而且还一直这样脏下去了。我不知道为什么这么多人用的都是这个逻辑,当我在微博上发了这个贴以后,我发现好些人给了好多非常复杂和诡异的方案,所以,我想写这篇文章说一下几个缓存更新

2021-07-06 12:00:15 75

转载 countDownLatch使用

1.背景:countDownLatch是在java1.5被引入,跟它一起被引入的工具类还有CyclicBarrier、Semaphore、concurrentHashMap和BlockingQueue。 存在于java.util.cucurrent包下。2.概念countDownLatch这个类使一个线程等待其他线程各自执行完毕后再执行。 是通过一个计数器来实现的,计数器的初始值是线程的数量。每当一个线程执行完毕后,计数器的值就-1,当计数器的值为0时,表示所有线程都执行完毕,然后在闭锁上等待

2020-08-22 11:20:45 133

转载 Linux常用指令---grep(搜索过滤)

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是GlobalRegularExpressionPrint,表示全局正则表达式版本,它的使用权限是所有用户。grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文...

2019-03-07 12:55:34 244

转载 xstream javabean设置属性默认值的问题(默认值被覆盖)

在xstream反序列化使用过程中发现,如果xml无该属性,则改属性会被自动复制为null。Xml代码  &lt;text name="fkzhzh" title="付款账户账号" validateRule="required,acctno" /&gt;   Java代码  public abstract class SBase {          @XStream...

2019-02-19 16:04:24 2442

转载 Intellij Idea 2017创建web项目及tomcat部署实战

相关软件:Intellij Idea2017、jdk16、tomcat7Intellij Idea直接安装(可根据需要选择自己设置的安装目录),jdk使用1.6/1.7/1.8都可以,主要是配置好系统环境变量,tomcat7上tomcat的官网下载压缩包解压即可。 一、创建简单web项目1、创建一个web projectFile -&gt; new Project -&gt;选择project s...

2018-04-14 16:07:09 180

转载 mysql 行级锁的使用以及死锁的预防

一、前言    mysql的InnoDB,支持事务和行级锁,可以使用行锁来处理用户提现等业务。使用mysql锁的时候有时候会出现死锁,要做好死锁的预防。  二、MySQL行级锁    行级锁又分共享锁和排他锁。    共享锁:      名词解释:共享锁又叫做读锁,所有的事务只能对其进行读操作不能写操作,加上共享锁后在事务结束之前其他事务只能再加共享锁,除此之外其他任何类型的锁都不能再加了。   ...

2018-04-14 13:37:38 603

转载 Java 中实现方法重试的一种机制

有这样一个需求,当调用某个方法抛出异常,比如通过 HttpClient 调用远程接口时由于网络原因报 TimeOut 异常;或者所请求的接口返回类似于“处理中”这样的信息,需要重复去查结果时,我们希望当前方法能够在这种特定的情况下,重复执行,如果达到了我们的期望,则不重复执行。而且,我们希望能够控制重试次数,不希望无限期执行下去。Java 中有各种定时任务的实现,如 Spring 的 Schedu...

2018-04-14 13:26:01 4344 1

转载 Eclipse mvn 项目报错:Circular placeholder reference 'jdbc.driverClassName' in property definitions

在maven 多个module 开发时,父pom中定义字段,子pom或者properties引用,出现Circular placeholder reference 循环引用的问题。解决方法:在项目上右键选properties,选择Deployment Assembly,删除src/main/resources选项。原因:参考http://virgoooos.iteye.com/blog/35173...

2018-04-14 13:19:43 6669 1

转载 几种常用的设计模式介绍

转自:http://blog.csdn.net/xsl1990/article/details/16359289几种常用的设计模式介绍1.    设计模式的起源最早提出“设计模式”概念的是建筑设计大师亚力山大Alexander。在1970年他的《建筑的永恒之道》里描述了投计模式的发现,因为它已经存在了千百年之久,而现代才被通过大量的研究而被发现。在《建筑的永恒之道》里这样描述:模式是一条由三个部分...

2018-03-22 16:38:34 190

转载 java 中超大数的运算(+-*/)

import java.math.BigDecimal;public class BigCount { public static void main(String[] args) { TestBigDecimal(); } static void TestBigDecimal(){ BigDecimal a=new BigDecimal(new String("12345324...

2018-03-22 11:20:57 378

转载 java 二叉树最大深度 和 (前序、中序、后序)三种遍历实现

public class TreeNodeTest { TreeNodeTest left; TreeNodeTest right; int val; TreeNodeTest(int v){ this.val = v; } public static void main(String[] args) { TreeNodeTest root = new TreeNode...

2018-03-22 10:13:58 232

原创 工具类:解析json格式java bean,List<bean>

需要jar:fastjson-1.1.34.jar1、测试bean类:User.javapublic class User{ private int id; private String name; public User() { } public User(int id,String name) { this.id = id; this.name = name; }

2018-01-11 11:19:49 668

转载 java返回结果集封装

1、返回消息统一定义文件CodeMsg.javapublic class CodeMsg { private int retCode; private String message; // 按照模块定义CodeMsg // 通用异常 public static CodeMsg SUCCESS = new CodeMsg(0,"success"); public static Cod

2018-01-11 09:31:07 13269 6

转载 linux环境redis安装

1、redis下载:下载地址:https://redis.io/下载版本:Redis 4.0.6 is the latest stable version.可以直接在linux服务器执行:wget 'http://download.redis.io/releases/redis-4.0.6.tar.gz' 进行下载2、redis安装:2.1)解压:tar -zvxf redis

2018-01-10 16:28:29 249

原创 windows部署tomcat服务自动启动,及卸载服务

1、jdk安装配置(我用的版本1.8.0_65)2、tomcat安装及配置(bin/文件夹下有service.bat文件的版本)tomcat下载地址:http://mirrors.shuosc.org/apache/tomcat/tomcat-7/v7.0.82/bin/apache-tomcat-7.0.82-windows-x64.zip2.1 tomcat环境变量配置:

2017-12-20 18:55:23 8101

原创 手机端网页-微信授权登录

近期有一个M站微信登录需求,了解了下微信网页授权登录功能:参考文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp14211408421、创建j2ee项目:weixinAuth2、增加引入jar文件。注意:jar包的版本不一样,可能会出现不同错误。commons-lang-2.6.jar、commons-col

2017-12-18 17:32:48 32218 1

转载 springMVC配置定时任务,并调用service

环境说明:使用spring4.0版本1、定时任务配置1.1 spring配置文件配置增加:xmlns:task="http://www.springframework.org/schema/taskhttp://www.springframework.org/schema/task http://www.springframework.org/schema/

2017-12-14 17:06:44 3414

原创 抽奖规则分享

抽奖规则分享

2017-09-08 13:40:47 7115

原创 【java】调用微信模板消息推送,线程池优化推送速度。

项目中用到微信小程序模板推送,原来流程如下:1、获取当前公众号关注用户列表;2、根据用户列表获取用户信息;3、循环用户列表进行发送;4、等待发送返回结果。将用户信息(昵称)、发送状态等保存到发送记录表;存在问题:1、每次推送都会到微信获取用户列表,并获取每个用户的昵称。接口调用频率高,发送时间较长。推送:5000个用户,大约需要10分钟左右;优化方案:(开启开发者功能)1、用户关注公众号时,获取用...

2017-09-08 11:11:25 6646 3

转载 【Spring】Spring MVC原理及配置详解

文章来源:转载http://blog.csdn.net/jianyuerensheng/article/details/51258942【spring】Spring MVC原理及配置1.Spring MVC概述:Spring MVC是Spring提供的一个强大而灵活的web框架。借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测

2017-06-13 21:08:15 209

微信登录网页授权源码和jar

完整微信手机端网页授权代码及jar。 涉及模块: 1、第一步:用户同意授权,获取code 2、第二步:通过code换取网页授权access_token 3、第四步:拉取用户信息(需scope为 snsapi_userinfo)

2017-12-18

爬虫:httpclient+jsoup

使用三种方案实现网页爬虫: 1、httpclient 2、jsoup 3、httpclient+jsoup

2016-11-19

java生成二维码(源代码和jar)

支持带logo和不带logo两种二维码生成方案; 附件中包含源码及对应的jar。

2016-11-16

空空如也

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

TA关注的人

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