自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (22)
  • 收藏
  • 关注

原创 Jre裁剪

纯属个人研究实践,如需在实际应用中,裁剪jre需谨慎。以下是裁剪步骤:1、 安装jdk1.6(之所以要安装jdk,因为后面需要使用到jdk中一些工具)并拷贝一份jre至D盘中,删除除了bin和lib文件夹以外的文件,如下图所示:如有需要,可以也保留一些license相关的文件。2、 精简bin文件,删除除了“java.exe”,“javaws.exe”,“javaw.exe...

2018-11-15 08:46:25 982

原创 优化Java线程实现类

多线程编程一方面比较复杂,另一方面运行出错后,难以定位等,所以针对对多线程实现的场景需要更谨慎,多关注编程实现的细节, 以便更好的实现和问题定位。我们先来看一段实现Thread线程类的代码: public class ThreadTest { public static void main(String[] args) { new Thread() {...

2018-11-20 08:48:06 310

原创 代码:统计某个java类依赖其它的哪些类

主要功能是统计某个java类依赖了哪些其它的类,引用的次数是多少等等。统计类ClassImportStatistic.java:package org.slive.project.style.classimport;import java.io.File;import java.io.IOException;import java.util.ArrayList;import j...

2018-09-30 08:53:09 1165

原创 Jedis二次开发

背景Redis作为一个功能强大的nosql数据库,在项目中使用越来越广泛,为了更高效合理使用Redis,Redis提供了多种语言的客户端实现,而Jedis就是java中使用最广泛的Redis客户端实现。在Jedis客户端jedis.jar包中,有一个jedis.class类,是一个大而全的对应Redis命令的类,方法比较多,使用起来不是很方便,主要存在两方面比较突出的问题:不同的数据结...

2018-09-20 09:06:18 359

原创 Java实现IPV4正则表达式及思考扩展

       最近在工作中有涉及到IP有效性校验问题,按照以前的做法,习惯性百度一下“Java实现IP有效性验证”,复制相关代码到项目中,定义一个如IpUtils.java的类,实现一个校验validIp(ip)方法,然后再验证一下OK就了事。然而这次并没有这么做,一来觉得自己对IP相关知识和Java正则表达式了解不够深,二来不想一味地只做代码搬运工,所以还是决定亲自实现这一个功能。 ...

2018-08-26 19:37:10 1332

原创 PropertyPlaceholderConfigurer类重构

    在使用Spring框架的项目中,通过代码直接读取properties配置项不方便。为了更好读取,继承PropertyPlaceholderConfigurer类,重写processProperties()方法,将加载到Spring框架中的配置项缓存到一个Map中,同时对外提供接口方法进行调用,以达到目的,具体实现如下:1、定义接口PropertiesConfig及方法 import jav...

2018-02-22 15:19:00 509 1

原创 Java实现简单的Json解析器<二>

源代码见:https://github.com/Slive/org.slive.simpleJson将Json String解析为Java对象相对于“将Java 对象转换Json String”更为复杂一些,这里分两步走:第一步,将Json String 转换为一个Java JsonObject类,JsonObject类似一个树结构,用于存储Json信息。第二步,将Ja

2018-01-30 18:51:20 1736 2

原创 Java实现简单的Json解析器<一>

源代码见:https://github.com/Slive/org.slive.simpleJson基于Json进行数据传输在现在的互联网应用中已经非常非常广泛,所以了解Json数据结构是很有必要的。为了加深理解,自己动手实现一个简单的Json解析器。实现Json解析器包括两方面:a、将Java 对象转换为Json Stringb、将Json String解析为Java对象

2017-11-01 23:20:58 2135 1

原创 tr069协议简单实现源码分享[JAVA]

直接下载:http://download.csdn.net/detail/lipslive/8421151github地址:https://github.com/Slive/tr069

2015-02-03 21:47:15 5793 2

原创 一个简单的数字记忆训练软件介绍

近段时间,闲来无事,做了一个简单的游戏,目的是

2014-08-15 20:59:55 2269

原创 eclipse中快速打开CMD窗口插件介绍

本插件是参照esay explorer插件进行开发的,能够在eclipse中快速打开CMD窗口,并自动切换到当前文件目录下,方便利用CMD执行命令。如图所示:代码见:http://download.csdn.net/detail/lipslive/6926915将QuickCmd文件放到eclipse的dropins下或者将插件放到plugins即可。

2014-02-16 17:07:25 11336 1

原创 转变观念,行动起来

最近几天参加了公司的培训,主要是关于公司核心价值观,信息安全,HR人事管理等内容培训。虽然这些东西看起来是很虚的东西,培训更是无聊,而且自己不会完全认同公司的核心价值观,更不会完全认同公司的文化,但实话实说,通过培训课程学习,特别是通过跟不同部门的同事的分享和交流中,自己还有一些深刻感悟的:1、要有转变观念的意识,这个是最大的收获。只有有了转变观念的意识,才能引导自己一步步前进;2、成功不

2013-12-13 22:06:54 1159

原创 判断两个IP大小及是否在同一个网段中

功能点 判断某个IP地址是否合法判断两个IP地址是否在同一个网段中判断两个IP地址的大小关系知识准备IP协议子网掩码Java正则表达式基本原理IP地址范围0.0.0.0~255.255.255.255,包括了mask地址。IP地址划分A类地址:1.0.0.1~126.255.255.254B类地址:128.0.

2013-09-02 12:46:14 27908 2

翻译 【翻译练习】指导英语学习者如何阅读

原文出处: http://www.englishclub.com/reading/guide.htm指导英语学习者如何阅读      你想变成一个优秀的读者吗?很多英语学习者心中都有这个目标。英语吧(EnglishClub)为英语学习者提供的阅读指南可以帮助到你。      在这个指南中,你将了解到:阅读为什么很重要;哪些阅读材料对英语语言学习者有用;在英语语言

2013-08-26 18:15:05 2867

翻译 【翻译练习】Jetty/Feature(特征)/Jetty Maven Plugin(插件)

原文链接:http://wiki.eclipse.org/Jetty/Feature/Jetty_Maven_Plugin介绍     注意:Jetty 9 内容可在  Documentation Hub 中获取     直接链接: http://www.eclipse.org/jetty/documentation/current/jetty-maven-plug

2013-08-12 19:03:00 5067

原创 eclipse RCP开发一个简单的MYSQL客户端工具介绍

开发前准备:1、安装mysql 5.1.152、安装jdk1.6并配置JDK环境3、安装eclipse 3.5.2 http://www.eclipse.org/downloads/packages/eclipse-rcpplug-developers/galileosr2 下载RCP版本的(包含了swt和rcp)4、安装windowbuilder,先安装eclip

2013-02-19 09:34:01 4897 1

Jedis二次开发

jedis类中的方法按照Key,String,List,Set,SortSet,Pub/Sub等分类包装,对应不同的实现类;针对不同实现类中的值部分,实际是将泛型值(是pojo类)转换为json字符串进行存储,或者将json字符串转换为相应的值(pojo类)返回

2018-09-20

过滤代码工程文件注释

对代码工程中的(如java,jsp,c++,xml,html,js,properties,py等类型)文件注释进行过滤删除,以减少代码的占用空间和打包后的大小等。

2016-08-12

tr069简单实现源码分享

tr069简单实现源码分享

2015-02-03

一个简单的数字记忆训练软件

简单的不能再简单数字记忆训练软件,主要是为了通过使用这款软件,提高自己的“糟糕”的记忆力。

2014-08-15

eclipse中快速打开CMD窗口插件

本插件是参照esay explorer插件进行开发的,能够在eclipse中快速打开CMD窗口,并自动切换到当前文件目录下,方便利用CMD执行命令。 将QuickCmd文件放到eclipse的dropins下或者将插件放到plugins即可。

2014-02-16

Java自定义日志模块实现

自定义日志模块(接口及代理实现),而不直接使用第三方日志框架接口,避免在日志框架升级或者切换时,代码过多耦合。 这个举例说明一下: 比如,在某一项目开始时使用的是“log4j”框架,后面经过研究发现“sf4j”框架功能更强大,想切换到“sf4j”。常规的做法是,修改项目中每一处调用到“log4j”相关模块的代码。如果是项目比较大,所要花费的工作量也真不少,但如果使用了上面的方式,则只需要实现“LoggerAdapter”接口,使之与具体的日志(logger)进行适配,并且(如果必要)重写或者调整LoggerAdapterFacory类即可。 注意:代码使用的是utf-8编码

2013-06-18

基于naga开发的TCP客户端/服务器程序

1、利用“naga-2_1-r42.jar”包进行二次开发; 2、调用NIOService类中的打开socket和serverSocket函数进行编程; 3、例如,服务器端: NIOService service1 = new NIOService(); NIOServerSocket serverSocket = service1.openServerSocket(port); // 设置监听事件,包括打开监听后,关闭后这两个: serverSocket.listen(new ServerSocketObserverAdapter() { public void newConnection(NIOSocket nioSocket) { // 可在此处添加处理事件 } public void serverSocketDied(Exception exception) { // 关闭serverSocket处理 } }); // 还需要一个循环事件,执行事件监听,此处可能需要使用到多线程编程 // 设置接收链接方式 serverSocket.setConnectionAcceptor(ConnectionAcceptor.ALLOW); while (true) { // 循环不断监听事件 service1.selectBlocking(1); } 4、又例如,客户端,包括链接上,接收包,关闭链接后三个事件和write()方法: NIOService service2 = new NIOService(); NIOSocket socket = service2.openSocket(InetAddress.getLocalHost(), port); // 设置接收包格式 nioSocket.setPacketReader(new RegularPacketReader(1, true)); nioSocket.setPacketWriter(new RegularPacketWriter(1, true)); nioSocket.listen(new SocketObserverAdapter() { public void connectionBroken(NIOSocket nioSocket, Exception arg1) { // 打开后处理 System.out.println("Client ip:" + nioSocket.getIp() +" port:"+nioSocket.getPort()+ " disconnected."); nioSocket.close(); isConnected = false; } public void connectionOpened(NIOSocket nioSocket) { // 关闭链接后处理 System.out.println("Client ip:" + nioSocket.getIp() +" port:"+nioSocket.getPort()+ " connected."); } public void packetReceived(NIOSocket nioSocket, byte[] packet) { revNum = nioSocket.getBytesRead(); // 包处理 revDataAndParse(packet); }}); // 还需要一个循环监听事件并执行,此处可能需要使用到多线程编程 while (true) { service2.selectBlocking(1); } 5、该项目开发过程基本上是以上3、4点的封装过程,利用接口编程,实现一个客户端基础类(TCPClientBase) 和服务器端基础类(TCPServerBase),其中客户端基础类有两种方式,一种是使用于单独的客户端的单元;另 一种使用与服务器端接收一个链接后的单元; 6、项目类使用: 1) communication.tcp.client.TCPClientBase是基础抽象类,任何外部使用都必须继承该类,并重写一 个“protected abstract void revDataAndParse(byte[] data);”方法,建议外部重写时,设置成protected&private 以防止类外部调用。同样在继承该基础类时,可以在继承类中添加各种需要的引用及必要的方法,实例在 communication.tcp.example.TCPClientUnit体现,重写revDataAndParse方法如下: /** * 处理数据将数据置于队列中,或者直接解析....... */ protected void revDataAndParse(byte[] data) { // SystemOut.arrayToHexString(data); // sendData(data); // System.out.println(new String(data)); } 2) communication.tcp.server.TCPServerBase也是基础抽象类,任何外部使用都必须继承该类,并重写至少包括一些内容: /** * 服务器端构造方法 * @param ip * @param port * @throws ClassNotFoundException */ @SuppressWarnings("unchecked") public TCPServerUnit(String ip, int port) throws ClassNotFoundException { // 注意保持与泛型中的类一致性 super(ip, port,(Class<TCPClientUnit4Server>) Class.forName(TCPClientUnit4Server.class.getName())); } 7、弊端:程序为未经过严格的验证,使用效果如何未知;客户端中的接收包有一定的局限性,接收数据包不利于开发解析,对于实时性要求比较 高的系统不一定适用,如modbusTCP。 8、详细使用过程,请参考doc目录中的api帮助文档。

2013-04-13

modbus_tcp详解

关于Modbus tcp协议的详细描述。

2013-04-08

eclipse RCP开发一个简单的MYSQL客户端工具介绍_

之前一个有些问题,右键打不开数据库表。 对学习elcipse 下使用rcp框架进行插件开发有帮助。

2012-12-03

eclipse RCP开发一个简单的MYSQL客户端工具介绍

对学习elcipse 下使用rcp框架进行插件开发有帮助

2012-12-01

mibbrowser

ireasoning 免费的mib文件浏览器,对于研究SNMP很用帮助。解压打开bin目录下运行browser.bat即可

2012-07-02

android开发入门与实践

不错的关于android开发入门与实践文档

2011-11-11

MySQL数据库界面操作

好用的mysql数据库操作界面!对使用mysql很有帮助!

2009-11-12

内存释放工具

好用的内存释放工具!

2008-05-16

EmEditor 4.13 Profesional.rar

不错的编写程序的工具,比记事本好用多了

2008-05-09

傲游浏览器

简易的浏览器!感觉还不错

2008-05-09

jsp精华文章

JSP相关的一些精华文章

2008-03-22

5日精通CSS层叠样式表

不错的学习CSS叠层资料

2008-03-22

五笔打字通

可以用来学习五打字,比较实用

2008-03-16

LiteIE.exe

一个简易的IE浏览器,绿色版

2008-03-16

3D.exe

3d软件,能运行很久

2008-03-13

空空如也

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

TA关注的人

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