biGpython

生亦何欢,死亦何苦? 予我長袖,我必善舞!

导航

2011年11月23日 #

TCP/IP协议简介

摘要: 1 TCP/IP协议基础 TCP/IP协议包括两个子协议:一个是TCP协议(Transmission Control Protocol,传输控制协议),另一个是IP协议(Internet Protocol,互联网协议),它起源于20世纪60年代末。 在TCP/IP协议中,TCP协议和IP协议各有分工。TCP协议是IP协议的高层协议,TCP在IP之上提供了一个可靠的,连接方式的协议。TCP协议能保证数据包的传输以及正确的传输顺序,并且它可以确认包头和包内数据的准确性。如果在传输期间出现丢包或错包的情况,TCP负责重新传输出错的包,这样的可靠性使得TCP/IP协议在会话式传输中得到充分应用。IP协 阅读全文

posted @ 2011-11-23 11:39 biGpython 阅读(504) 评论(0) 推荐(0) 编辑

2011年11月21日 #

在eclipse中反编译并查看jar包的class文件,批量反编译

摘要: 第一种:很方便,直接用F3或者ctrl点击查看。Eclipse反编译工具Jad及插件JadClipse配置 超傻瓜的教程:Jad是一个Java的一个反编译工具,是用命令行执行,和通常JDK自带的java,javac命令是一样的。不过因为是控制台运行,所以用起来不太方便。不过幸好有一个eclipse的插件JadClipse,二者结合可以方便的在eclipse中查看class文件的源代码。下面介绍一下配置:A.下载JadClipse,http://jadclipse.sourceforge.net/wiki/index.php/Main_Page#Download,注意选择与eclipse版本一致 阅读全文

posted @ 2011-11-21 15:15 biGpython 阅读(2587) 评论(0) 推荐(0) 编辑

同步/异步与阻塞/非阻塞的区别

摘要: 这两组概念常常让人迷惑,因为它们都是涉及到IO处理,同时又有着一些相类似的地方.首先来解释同步和 异步的概念,这两个概念与消息的通知机制有关.举个 例子,比如我去银行办理业务,可能选择排队等候,也可能取一个小纸条上面有我的号码,等到排到我这一号时由柜台的人通知我轮到我去办理业务了.前 者(排队等候)就是同步等待消息,而后者(等待别人通知)就是异步等待消息.在异步消息处理中,等待消息者(在这个例子中就是等待办理业务的人)往往注册 一个回调机制,在所等待的事件被触发时由触发机制(在这里是柜台的人)通过某种机制(在这里是写在小纸条上的号码)找到等待该事件的人.而在实际 的程序中,同步消息处理就好比简 阅读全文

posted @ 2011-11-21 11:46 biGpython 阅读(261) 评论(0) 推荐(0) 编辑

2011年11月18日 #

J2EE通用编码指导

摘要: 一个J2EE应用系统需要做下列几步工作:开发和编译代码时指定字符集为UTF-8。JBuilder和Eclipse都可以在项目属性中设置。使用过滤器,如果所有请求都经过一个Servlet控制分配器,那么使用Servlet的filter执行语句,将所有来自浏览器的请求(request)转换为UTF-8,因为浏览器发过来的请求包根据浏览器所在的操作系统编码,可能是各种形式编码。关键一句:request.setCharacterEncoding("UTF-8")。网上有此filter的源码,Jdon框架源码中com.jdon.util.SetCharacterEncodingFil 阅读全文

posted @ 2011-11-18 13:17 biGpython 阅读(181) 评论(0) 推荐(0) 编辑

2011年11月17日 #

长连接与短连接 同步与异步

摘要: 这个东西看过好多遍了,总是混淆,在代码实现没有下功夫,总在看概念性的东西。长连接与短连接长连接:client方与server方先建立连接,连接建立后不断开,然后再进行报文发送和接收。这种方式下由于通讯连接一直存在。此种方式常用于P2P通信。短连接:Client方与server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。此方式常用于一点对多点通讯。C/S通信。 其实长连接是相对于通常的短连接而说的,也就是长时间保持客户端与服务端的连接状态。长连接与短连接的操作过程通常的短连接操作步骤是:连接→数据传输→关闭连接;而长连接通常就是:连接→数据传输→保持连接(心跳)→数据传输→保 阅读全文

posted @ 2011-11-17 11:16 biGpython 阅读(1915) 评论(0) 推荐(0) 编辑

2011年11月15日 #

Java字符编码知识简介

摘要: 1、基本信息摘要:在Java应用程序特别是Web应用中,经常遇到字符的编码问题。为了防止出现乱码,首先需要了解字符编码的基本概念以及Java是如何处理字符编码的,这样就可以有目的地在输入/输出环节中增加必要的转码。本文将分以下几部分介绍:1.什么是字符集?什么是编码?2.常用字符集有哪些?3.为什么会有乱码?4.Java字符编码5.JSP编码6.有没有万金油?7.参考资料和推荐参阅2、什么是字符集?什么是编码?l字符(Character):是文字与符号的总称,包括文字、图形符号、数学符号等。l字符集(Charset):就是一组抽象字符的集合。字符集常常和一种具体的语言文字对应起来,该文字中的所 阅读全文

posted @ 2011-11-15 10:28 biGpython 阅读(789) 评论(0) 推荐(0) 编辑

2011年11月14日 #

java类型信息

摘要: 运行时类型信息:RTTI,假设编译时已经知道了所有的类型反射机制,在运行时发现和使用类的信息范例:继承于shape下的circle square 等类,shape中拥有方法draw(System.out.println(this + "drawed")),其子类自动继承,shape有抽象方法toString(),子类实现其抽象方法。在新建List中加入其子类对象,遍历集合调用draw方法,输出各自的toString。RTTI的含义:在运行时,识别一个对象的类型。多态机制,“下面的事就由多态机制完成,shape对象实际执行什么代码,是由引用所指向的具体对象决定的。因为希望大部 阅读全文

posted @ 2011-11-14 21:49 biGpython 阅读(427) 评论(0) 推荐(0) 编辑

2011年11月11日 #

Log4j高级教程,根据包输出日志

摘要: 以前都是把所有日志都输出到一个文件下面,今天有个同事问想把某个包下的日志输出到指定的地方,于是就在网上查了一些资料,总结一下,以免以后用到。真的是没有那么多时间来整理啊 哎,今天用到的是最下面的几个,指定包或者类的日志文件输入到指定的文件,关键在于先前配置了rootlogger的全部配置,如何让自定义的包或类下的日志不受全局rootlogger管理?注意这句:log4j.rootLogger = DEBUG,S,E,D #全局log4j.logger.org.apache.axis=DEBUG,R1 #指定的 org.apache.axis包下所有的日志log4j.additivity.or. 阅读全文

posted @ 2011-11-11 15:39 biGpython 阅读(4016) 评论(0) 推荐(0) 编辑

2011年11月9日 #

“java程序打成jar包 如何处理第三方jar包”

摘要: eclipse的export的 runnable jar file 导出的jar包的形式应该可以避免这个问题,直接想所依赖的jar里的class文件也一并打入jar包里了。问题一:现在有一j2se程序,依赖于jdk1.5、poi.jar、commons-lang.jar。打成jar包后,依赖于jdk的部分代码是可以执行的。但是依赖于poi.jar、commons-lang.jar这两个包的程序没有办法执行。我知道是因为在classPath中无法找到上述两个包的缘故。但不希望每次都通过设置classpath的方式去运行这个jar程序。请问通过什么样的打包办法可以让程序不用设置classpath而 阅读全文

posted @ 2011-11-09 13:44 biGpython 阅读(4723) 评论(2) 推荐(1) 编辑

JMeter整合自己java代码

摘要: 我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","Java Vuser"等协议.同样,Jmeter也支持自定义编写的测试代码,不过与LoadRunner不同的是,Jmeter没有自带编译器,需要借助第三方编译器才能实现.下面举一个简单的Java自定义测试代码例子,使用Java编译器编写测试代码(Java编译器可以用Eclipse,JBulider 等),实现功能为:在测试前输入任意一个字符串,然后判断该字符串的长度是否大于5,如果大于则测试结果成 阅读全文

posted @ 2011-11-09 10:05 biGpython 阅读(1549) 评论(1) 推荐(0) 编辑