简单,可复制

点点滴滴,尽在文中

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年1月6日

摘要: Java Socket的api可能很多人会用,但是Java Socket的参数可能很多人都不知道用来干嘛的,甚至都不知道有这些参数。backlog用于ServerSocket,配置ServerSocket的最大客户端等待队列。等待队列的意思,先看下面代码public class Main { public static void main(String[] args) throws Exception { int port = 8999; int backlog = 2; ServerSocket serverSocket = new Serve... 阅读全文
posted @ 2012-01-06 15:30 ggjucheng 阅读(32498) 评论(2) 推荐(6)

摘要: ejb一直是一个让我很纠结的技术,虽然ejb作为sun推荐的最佳实践,在sun的J2EE教程中,推荐jsp和servlet作为view层,ejb作为业务逻辑层。上述就是J2EE教程讲J2EE体系中J2EE的EJB示意图了,讲了EJB的位置,详情可以看:http://docs.oracle.com/javaee/1.4/tutorial/doc/然而我所接触使用ejb开发的程序员(都是国内),用了ejb,都没什么特别好感,甚至我以前的项目经理说,很多人被sun给欺骗了。目前ejb已经出到了3.x了,然而国内已经几乎没有使用ejb3.x,有的也是ejb2.x,都是老系统遗留,有的是银行项目,有的是 阅读全文
posted @ 2012-01-06 10:41 ggjucheng 阅读(18299) 评论(0) 推荐(2)

2012年1月5日

摘要: vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数,如:root@ubuntu:~# vmstat 2 1procs -----------memory- 阅读全文
posted @ 2012-01-05 01:01 ggjucheng 阅读(323665) 评论(16) 推荐(23)

2012年1月4日

摘要: 如果远程Linux的VNC桌面很久没有输入,那么使用VNC View打开远程linux桌面时,桌面显示不出来,显示一片黑屏,并且点击键盘或者鼠标仍然毫无反应,仍然一片黑屏。这时候需要在vnc server上设置一下。编辑 /root/.vnc/xstartup[root@localhost ~]# vi /root/.vnc/xstartup 去掉下面两行的注释:unset SESSION_MANAGER exec /etc/X11/xinit/xinitrc 执行下面的命令重启vnc server:[root@localhost ~]# vncserver -kill :1 [ro... 阅读全文
posted @ 2012-01-04 23:53 ggjucheng 阅读(16846) 评论(1) 推荐(0)

摘要: 配置终端显示颜色Options->SessionOptions ->Emulation然后(ran2 hou4)把Terminal类型改成xterm,并点中ANSI Color复选框。配置字体和编码字体设置:Options->SessionOptions->Appearance->font然后改成新宋体,文字大小设置为11号,character改成utf-8的方式。去掉显示的下划线Options->SessionOptions->Appearance->Current color选择编辑,在新打开的窗口去掉show underlinevi中颜色显 阅读全文
posted @ 2012-01-04 22:33 ggjucheng 阅读(16527) 评论(0) 推荐(0)

摘要: vim里面的编码主要跟三个参数有关:enc(encoding), fenc(fileencoding)和fencs(fileencodings)fenc是当前文件的编码,也就是说,一个在vim里面已经正确显示了的文件(前提是你的系统环境跟你的enc设置匹配),你可以通过改变 fenc后再w来将此文件存成不同的编码。比如说,我:set fenc=utf-8然后:w就把文件存成utf-8的了,:set fenc=gb18030再:w就把文件存成gb18030的了。这个值对于打开文件的时候是否能够正确地解码没有任何关系。fencs,是用来在打开文件的时候进行解码的猜测列表。文件编码没有百分百正确的判 阅读全文
posted @ 2012-01-04 22:17 ggjucheng 阅读(10682) 评论(0) 推荐(0)

摘要: 异常不可用于逻辑处理异常是错误处理,但是不可以用于逻辑处理,假设我们封装了一个MsgQueue,这个类负责收集由服务端一条接受线程收集客户端消息,另一条工作线程负责取出消息,并对消息进行处理。class Msg {...};class MsgQueue { public: void put(Msg msg) throw (std::length_error); Msg get() throw (std::out_of_range); .....}这里定义了MsgQueue的两个方式,分别是收集客户端消息,然后保存消息的put方法,还有处理客户端消息,取... 阅读全文
posted @ 2012-01-04 14:24 ggjucheng 阅读(5159) 评论(9) 推荐(1)

摘要: 前言 原文翻译自http://www.cplusplus.com/doc/tutorial/typecasting/,觉得这篇文章讲C++类型转换简单明了,所以特别翻译了下。 在C++中,将一个已知的类型转换为另一个类型,我们称呼为类型转换,本文会介绍C++的各种类型转换。隐式转换隐式转换不需要任何操作符,它们会自动执行,当值被赋值到兼容类型,就会执行,例如:short a=2000;int b;b=a;隐式转换,也包括构造函数和运算符的转换,例如:class A {};class B { public: B (A a) {} };A a;B b=a;显式转换C++是一个强类型的语言。许多.. 阅读全文
posted @ 2012-01-04 10:20 ggjucheng 阅读(3407) 评论(0) 推荐(0)

2012年1月3日

摘要: 前言TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译,使用TinyXML进行C++ XML解析,使用简单,容易上手。这个解析库的模型通过解析XML文件,然后在内存中生成DOM模型,从而让我们很方便的遍历这棵XML树。 DOM模型即文档对象模型,是将整个文档分成多个元素(如书、章、节、段等),并利用树型结构表示这些元素之间的顺序关系以及嵌套包含关系。TinyXML介绍在TinyXML中,根据XML的各种元素来定义了一些类: TiXmlBase:整个TinyXML模型的基类。 TiXmlAttribute:对应于XML中的元素的属性。 TiXml 阅读全文
posted @ 2012-01-03 23:08 ggjucheng 阅读(44837) 评论(0) 推荐(4)

摘要: 虽然一些C++第三库已经继承了MD5操作,但是有时我们更需要一个轻量的md5库函数,这里提供了一个MD5类,可以传入一个字符串生成md5结果。md5库下载下载解压后,有md5.h md5.cpp main.cpp三个文件,其中md5.h和md5.cpp是MD5类的头文件和实现文件,main.cpp是测试文件。编译和运行g++ md5.cpp main.cpp -o main./main输出结果:abc md5 is 900150983cd24fb0d6963f7d28e17f72其中main.cpp文件内容,也是MD5类的使用示例,如下:#include "md5.h"#i 阅读全文
posted @ 2012-01-03 19:35 ggjucheng 阅读(21590) 评论(1) 推荐(2)