- 博客(146)
- 收藏
- 关注
原创 JAVA 8的Lambda表达式和Stream API研究
JAVA 8 Lambda表达式简化了代码开发,代码简洁,类似Python。代码实现例子: new Thread(() -> System.out.println("It's a lambda function!")).start(); List<String> languagesList = Arrays.asList("java","scala","p...
2018-03-21 17:31:15 230
原创 Linux vim命令详解
Linux vi和vim都是Linux中的编辑器,不同的是vim比较高级,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。 现将vim的命令行收集于下: vi有3个模式:插入模式、命令模式、低行模式。 插入模式:在此模式下可以输入字符,按ESC将回到命令模式。 命令模式:可以移动光标、删除字符等。 低行模式:可以保存文件、退出v...
2017-12-18 15:44:19 346
原创 ThreadPoolExecutor里面4种拒绝策略(转)
ThreadPoolExecutor类实现了ExecutorService接口和Executor接口,可以设置线程池corePoolSize,最大线程池大小,AliveTime,拒绝策略等。常用构造方法:ThreadPoolExecutor(int corePoolSize, int maximumPoolSize,long keepAliveTime, TimeUnit unit,...
2017-12-14 18:03:04 380
原创 JAVA多线程使用研究
Part One: 一个线程处理if (CollectionUtils.isNotEmpty(cqcAttachmentDataList)) {long startTimes = System.currentTimeMillis();final CountDownLatch latchOnlyOne = new CountDownLatch(1);new Thread(new ...
2017-12-06 18:58:07 155
原创 MySQL 的性能-SQL 执行分析(转)
后端开发必然会接触到数据库,数据层的优劣会影响整个服务的响应时间。所以,数据库的优化技巧是必须掌握的,下面就是我在学习过程中整理的,备忘。下面为上篇内容,分为以下部分:一、SQL 执行时间分析二、SQL 执行情况分析一、SQL 执行时间分析通过找到执行时间长的 SQL 语句,可以直观的发现数据层的效率问题。1.通过 show processlist 来查看系统的执行...
2017-07-11 17:16:56 132
原创 MySQL关联表更新数据SQL脚本
假定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price;另外一张表是ProductPrice表,我们要将ProductPrice表中的价格字段Price更新为Price表中价格字段的80%。 在Mysql中我们有几种手段可以做到这一点,一种是update table1 t1, table2 ts ...的方式: UPDATE product p, pro...
2017-06-23 17:18:51 404
原创 MySQL索引失效的情况总结
MySQL索引失效的几种情况总结(转载) 1.索引不存储null值 更准确的说,单列索引不存储null值,复合索引不存储全为null的值。索引不能存储Null,所以对这列采用is null条件时,因为索引上根本 没Null值,不能利用到索引,只能全表扫描。 为什么索引列不能存Null值? 将索引列值进行建树,其中必然涉及到诸多的比较操作。Null值的特殊...
2017-05-17 16:09:42 145
原创 MySQL函数研究总结-CONCAT、REPLACE、ROUND、FLOOR和CEILING、TRUNCATE、CASE WHEN等
CONCAT、REPLACE、ROUND、FLOOR和CEILING、TRUNCATE、CASE WHEN等MYSQL函数研究总结如下,供学习参考:------------------------------------------------------------ 添加前、后缀 concat,字符串替换 replace 添加前缀UPDATE `table` SET f...
2017-02-20 16:26:35 854
原创 itext实现PDF生成的两种方式-从HTML到PDF
itext实现PDF生成的两种方式-从HTML到PDFmaven依赖pom配置:<dependency> <groupId>com.itextpdf</groupId> <artifactId>itext-asian</artifactId> <version>5.2.0</versi...
2017-01-18 14:38:11 743
原创 Java处理Http请求的几种方式总结
1.commons-httpclient 简洁快速模拟HTTP请求<dependency> <groupId>commons-httpclient</groupId> <artifactId>commons-httpclient</artifactId> <version>3.1<...
2017-01-10 18:17:38 474
原创 HttpClient 4.5.2版本设置连接超时时间-CloseableHttpClient设置Timeout
HttpClient 4.5版本设置连接超时时间-CloseableHttpClient设置Timeout(区别于4.3.2) HttpClient升级到4.5版本后,API有很多变化,HttpClient 4之后,API一直没有太稳定,我感觉4.5版本抽象后,很多API应该快稳定了。 使用HttpClient,一般都需要设置连接超时时间和获取数据超时时间。这两个参数...
2017-01-10 14:48:43 4076
原创 MySQL性能优化研究
一当发现程序运行比较慢的时候,首先排除物力资源问题之后,就将注意力转向mysq数据库:1、首先确定运行慢的sql语句:mysql> show full processlist;2、确认低效的查询:多次执行第一步发现time耗费大的sql语句。查看耗费的时间。 3、为sql生成一个执行计划query Execution plan(QEP)mysql>...
2016-11-03 00:12:15 196
原创 面霸宝典Notes(二)
java6大设计原则:一 : 类单一职责原则: 一个类只有一个引起这个类变化的原因。即一个类只完成一个功能,如果做不到一个类只完成一个功能,最少要保证一个方法只完成一个功能。二:依赖倒置原则: 高层组件应该依赖抽象而不依赖具体,即面向接口编程,一般依赖的成员变量或者参数都应该是抽象的不应该是具体的。三:里氏代换原则: 凡是父类出现的地方...
2016-11-02 23:29:09 198
原创 MySQL行级锁与表级锁研究
MySQL中的锁(表锁、行锁) 锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所在有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。 ...
2016-10-31 23:00:54 252
原创 java内存泄露和内存溢出区别
虽然jvm可以通过GC自动回收无用的内存,但是代码不好的话仍然存在内存溢出的风险。最近在网上搜集了一些资料,现整理如下: —————————————————————————————————————————— 一、为什么要了解内存泄露和内存溢出? 1、内存泄露一般是代码设计存在缺陷导致的,通过了解内存泄露的场景,可以避免不必要的内存溢出和提高自己的代码编写水平; ...
2016-07-01 18:30:46 92
原创 面霸宝典Notes
1.MAP HashMap的底层结构实际上是“链表散列”,即数组和链表的结合体。从上图可以看出,HashMap底层就是一个数组结构(Entry<K,V>[] table),数组中的每一项又是一个链表。 HashMap扩容时的分析: 当HashMap中的元素越来越多的时候,hash冲突的几率也就越来越高,因为数组的长度是固定的。所以...
2016-05-27 00:07:59 148
原创 git 常用命令
git:git pullgit branchgit clonegit checkout -b f_ origin/f_git pushgit mergegit rebase git checkout -d f_ origin/f_ git tag -a v1.0.2 -m "v1.0.2"git push --tagdf -hi df -...
2016-03-04 00:10:48 73
原创 javaMelody监控接入使用
1.jar pom<!-- javamelody监控接入begin 20150520 gaozhenzhai --> <dependency> <groupId>net.bull.javamelody</groupId> <artifactId>javamelo...
2016-03-03 23:55:14 382
原创 jQuery ajax各种形式使用
1.post function deleCustomsVender(cvId) { var url = "$popSellerAdminModule.getTarget("/customs/shop/customs_deleCustomsVender.action?_charset_=utf-8")"; if(confirm("确定要...
2016-03-03 23:36:30 145
原创 多线程-java线程池使用
(一)new Thread(new SolrDataHandleThread()).start();new Thread(new ElasticSearchDataHandler()).start();new Thread(new RedisDataHandler()).start(); private class SolrDataHandleThread implemen...
2016-03-01 16:46:04 153
原创 solr&&ES API
solr api:private org.apache.solr.client.solrj.impl.HttpSolrServer solrServer92;private org.apache.solr.client.solrj.impl.HttpSolrServer solrServer96; Collection<SolrInputDocument> docs...
2016-02-29 11:50:13 156
原创 Struts 2的漏洞 与需要版本升级(From Apache官网)
Struts 2的漏洞原理:Struts又爆远程代码执行漏洞!在这次的漏洞中,攻击者可以通过操纵参数远程执行恶意代码。Struts 2.3.15.1之前的版本,参数action的值redirect以及redirectAction没有正确过滤,导致ognl代码执行。 The Struts 2 DefaultActionMapper supports a method for sho...
2013-07-24 10:47:42 175
原创 java.io.IOException: Too many open files解决方案
异常:java.io.IOException: Too many open files:解决方案:ulimit -nLinux: vi /etc/security/limits.conf# End of file* soft nofile 65535* hard nofile 65535命令:ulimit -n原因: ...
2013-03-06 15:35:34 649
原创 Joda-Time&Date4j使用研究-开源JAVA日期时间处理类库
1)Joda-Time简介Joda-Time提供了一组Java类包用于处理包括ISO8601标准在内的date和time。可以利用它把JDK Date和Calendar类完全替换掉,而且仍然能够提供很好的集成。Joda-Time主要的特点包括:1. 易于使用:Calendar让获取"正常的"的日期变得很困难,使它没办法提供简单的方法,而Joda-Time能够 直接进行访问域并且索引...
2013-01-29 18:27:22 270
原创 MySQL、SQLServer和Oracle 数据结构变动-添加修改删除字段总结
MySql:添加单列:ALTER TABLE 表名 ADD 列名 数据类型 添加多列:ALTER TABLE 表名 ADD 列名1 数据类型1,Add 列名2 数据类型2 修改单列数据类型:ALTER TABLE 表名 CHANGE COLUMN 列名 数据类型 同时修改多列数据类型:ALTER TABLE 表名 CHANGE COLUMN 列名 数据类型,CHANGE...
2013-01-29 10:59:33 171
原创 Maven常用配置及Tomcat插件配置
Maven用了一段时间了,基本上被我摆平了。结合Eclipse跟Bamboo,Maven还是相当给力的!先整理下已知内容,以免过早遗忘,甚至丢失!相关链接: Maven零散笔记——常用配置 Maven零散笔记——配置Nexus pom.xml基础配置: maven中,最让我迷惑的还是那一堆配置!就拿这个属性配置来说: Xml代码 <properties&g...
2013-01-25 12:54:20 263
原创 ftp4j的使用研究-开源FTP客户端Java类库
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能。可以将ftp4j嵌到你的Java应用中,来传输文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括:通过 TCP/IP直接连接,通过FTP代理、HTTP代理、SOCKS4/4a代理和SOCKS5代理连接,通过SSL安全连...
2013-01-16 18:04:42 220
原创 Spring Data JPA研究-使用Spring Data JPA 简化JPA 开发(ZZ)
从一个简单的 JPA 示例开始本文主要讲述 Spring Data JPA,但是为了不至于给 JPA 和 Spring 的初学者造成较大的学习曲线,我们首先从 JPA 开始,简单介绍一个 JPA 示例;接着重构该示例,并引入 Spring 框架,这两部分不会涉及过多的篇幅,如果希望能够深入学习 Spring 和 JPA,可以根据本文最后提供的参考资料进一步学习。自 JPA 伴随 Jav...
2013-01-14 17:38:24 77
原创 MD5加密的几种实现方式研究
MD5加密的几种实现方式如下:一、第一种方式DigestUtils.md5Hex(member.getPassword())需要引入commons-codec-1.4.jar二、第二种方式String tmpPassword = MD5Creator.getDM5Password(member.getUsername(), member.getPassword());1)新...
2013-01-10 17:08:27 1094 1
原创 开源Java Web开发框架-Firefly研究
一、Firefly简介Firefly是一个高性能的一站式Java Web框架,涵盖了web开发的主要技术栈,包含模板引擎、IOC/MVC框架、HTTP服务器、Common工具、Log、Json解析器等模块。Firefly是一个一站式高性能Java Web框架。Firefly使用简单,在main函数中只需一行代码就可以启动一个Web服务,并且超级轻量,jar包总共500k,启动一个Web...
2013-01-09 23:12:59 423
原创 开源JAVA CMS-FreeCMS研究
一、FreeCMS简介 FreeCMS项目是为了致力于打造更好的中国开源免费CMS而发起的。这个项目的目标是提供一个安全,实用有效和可扩展的CMS系统。FreeCMS的特点:公开源码、免费使用、代码通俗易懂、注释详细、面向二次开发友好!FreeCMS项目隶属于FreeTeam开发组织!二、下载地址 下载地址http://code.google.com/p/freec...
2013-01-09 22:53:27 115
原创 G4Studio开源快速开发平台研究
G4Studio是一套基于JavaEE、面向小微型软件企业的免费开源产品套件,集需求分析、软件设计、编码实现、运行测试、运营维护、软件项目管理于一体,力求覆盖整个软件生命周期,被誉为“程序员私活神器”。目前最新版本为G4Studio v3.2。 G4Studio是什么?有什么用?--------------------------------------------------------...
2012-09-04 14:34:39 159
原创 MessagePack使用研究
MessagePack是一个基于二进制高效的对象序列化类库,可用于跨语言通信。它可以像JSON那样,在许多种语言之间交换结构对象;但是它比JSON更快速也更轻巧。支持Python、Ruby、Java、C/C++等众多语言。比GoogleProtocol Buffers还要快4倍。代码实现1: package com.newtest;import java.io.IOExcept...
2012-09-03 18:20:41 261
原创 MySQL两大常用存储引擎MyISAM,InnoDB的区别
本文主要整理了MySQL两大常用的存储引擎MyISAM,InnoDB的六大常见区别,来源于Mysql手册以及互联网的资料InnoDB与Myisam的六大区别MyISAMInnoDB构 成上的区别:每个MyISAM在磁盘上存储成三个文件。第一个 文件的名字以表的名字开始,扩展名指出文件类型。 .frm文件存储表定义。数据文件的扩 ...
2012-08-10 14:27:28 64
原创 JAVA实现二维码、条形码生成与破译-开源Zxing使用研究
二维码编码代码实现类:package zxing;import java.io.File; import java.util.Hashtable; import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; import com....
2012-08-02 17:39:52 402
原创 JAVA实现PDF文件读取、处理研究-开源PDFBox实现
实现代码如下:import java.io.*;import org.apache.pdfbox.pdfparser.PDFParser;import org.apache.pdfbox.pdmodel.PDDocument;import org.apache.pdfbox.util.PDFTextStripper;public class PDFReader {...
2012-07-26 16:53:58 433
原创 MongoDB数据库导出、导入与备份、恢复
MongoDB导入命令:mongoimport --host mongodb1.example.net --port 37017 --username user --password pass --collection contacts --db marketing --file /opt/backups/mdb1-examplenet.jsonmongoimport --hos...
2012-07-24 16:49:55 173
原创 JAVA实现图片处理缩略图-三种开源实现方式
代码实现如下:第一个开源: Thumbnailatorlong begin = System.currentTimeMillis();try {Thumbnails.of(new File("E:\\test\\photos\\亲密敌人.jpg")).size(300, 200)//.rotate(90).outputQuality(0.8f).toFile(n...
2012-07-24 16:04:47 814
原创 MonjaDB -基于Eclipse的 MongoDB 的 GUI 客户端工具
MonjaDB 是一个 MongoDB 的 GUI 客户端工具,提供直观的 MongoDB 数据管理的功能,支持 Windows/Mac/Linux.MonjaDB 是一个 Eclipse 插件,必须先安装 Eclipse。 主要特点:易用WYSIWYG 编辑 JSON/Table/Tree 数据非常灵活的窗体管理"Actions" 是个强大的类似宏的函数,高度兼...
2012-07-09 19:51:16 171
原创 Pinyin4j的使用研究-开源JAVA中文字符和拼音之间的转换
Pinyin4j是一个流行的Java库,支持中文字符和拼音之间的转换。拼音输出格式可以定制。代码实现如下:1.带声调的方法 /** * 汉字转换位汉语拼音,英文字符不变 带声调的方法 * @param chines 汉字 * @return 拼音 */ public static String converterToSpellWithTONE(Strin...
2012-07-06 19:49:25 126
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人