??xml version="1.0" encoding="utf-8" standalone="yes"?> W二QAnonymous Inner Class (匿名内部c? 是否可以extends(l承)其它c,是否可以implements(实现)interface(接口)? W三QStatic Nested Class ?Inner Class的不同,说得多好(面试题有的很W统)?/FONT> W四Q?amp;?amp;&的区别?/FONT> W五QHashMap和Hashtable的区别?/FONT> W六QCollection ?Collections的区别?/FONT> W七Q什么时候用assert?/FONT> W八QGC是什? Z么要有GC? W九QString s = new String("xyz");创徏了几个String Object? W十QMath.round(11.5){於多少? Math.round(-11.5){於多少? W十一Qshort s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? W十二,sleep() ?wait() 有什么区? W十三,Java有没有goto? W十四,数组有没有length()q个Ҏ? String有没有length()q个Ҏ? W十五,Overload和Override的区别。Overloaded的方法是否可以改变返回值的cd? W十六,Set里的元素是不能重复的Q那么用什么方法来区分重复与否? 是用==q是equals()? 它们有何区别? W十七,l我一个你最常见到的runtime exception?/FONT> W十八,error和exception有什么区? W十九,List, Set, Map是否l承自Collection接口? W二十,abstract class和interface有什么区? W二十一Qabstract的method是否可同时是static,是否可同时是nativeQ是否可同时是synchronized? W二十二Q接口是否可l承接口? 抽象cL否可实现(implements)接口? 抽象cL否可l承实体c?concrete class)? W二十三Q启动一个线E是用run()q是start()? W二十四Q构造器Constructor是否可被override? W二十五Q是否可以承Stringc? W二十六Q当一个线E进入一个对象的一个synchronizedҎ后,其它U程是否可进入此对象的其它方? W二十七Qtry {}里有一个return语句Q那么紧跟在q个try后的finally {}里的code会不会被执行Q什么时候被执行Q在return前还是后? W二十八Q编E题: 用最有效率的Ҏ出2乘以8{於? W二十九Q两个对象值相?x.equals(y) == true)Q但却可有不同的hash codeQ这句话对不? W三十,当一个对象被当作参数传递到一个方法后Q此Ҏ可改变这个对象的属性,q可q回变化后的l果Q那么这里到底是g递还是引用传? W三十一Qswtich是否能作用在byte上,是否能作用在long上,是否能作用在String? W三十二Q编E题: 写一个Singleton出来?BR> W二QAnonymous Inner Class (匿名内部c? 是否可以extends(l承)其它c,是否可以implements(实现)interface(接口)? W三QStatic Nested Class ?Inner Class的不同,说得多好(面试题有的很W统)?BR>Nested Class Q一般是C++的说法)QInner Class (一般是JAVA的说?。Java内部cMC++嵌套cL大的不同在于是否有指向外部的引用上。具体可见http: //www.frontfree.net/articles/services/view.asp?id=704&page=1 W四Q?amp;?amp;&的区别?BR>&是位q算W?amp;&是布逻辑q算W?/FONT> W五QHashMap和Hashtable的区别?BR>都属于Map接口的类Q实C惟一键映到特定的g?BR>HashMap cL有分cL者排序。它允许一?null 键和多个 null 倹{? W六QCollection ?Collections的区别?BR>Collections是个java.util下的c,它包含有各种有关集合操作的静态方法?BR>Collection是个java.util下的接口Q它是各U集合结构的父接口?/FONT> W九QString s = new String("xyz");创徏了几个String Object? W十QMath.round(11.5){於多少? Math.round(-11.5){於多少? W十一Qshort s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? W十?/FONT>Qsleep() ?wait() 有什么区? 搞线E的最?BR>sleep()Ҏ是ɾU程停止一D|间的Ҏ。在sleep 旉间隔期满后,U程不一定立x复执行。这是因为在那个时刻Q其它线E可能正在运行而且没有被调度ؓ攑ּ执行Q除?a)“醒来”的U程h更高的优先 W十?/FONT>QJava有没有goto? W十?/FONT>Q数l有没有length()q个Ҏ? String有没有length()q个ҎQ?BR>数组没有length()q个ҎQ有length的属性?BR>String有有length()q个Ҏ?/FONT> W十?/FONT>QOverload和Override的区别。Overloaded的方法是否可以改变返回值的cd? W十?/FONT>QSet里的元素是不能重复的Q那么用什么方法来区分重复与否? 是用==q是equals()? 它们有何区别? W十?/FONT>Q给我一个你最常见到的runtime exception?BR>ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, W十?/FONT>Qerror和exception有什么区? Map不是 W二?/FONT>Qabstract class和interface有什么区? W二十二Q接口是否可l承接口? 抽象cL否可实现(implements)接口? 抽象cL否可l承实体c?concrete class)? W二十三Q启动一个线E是用run()q是start()? W二十四Q构造器Constructor是否可被override? W二十五Q是否可以承Stringc? W二十六Q当一个线E进入一个对象的一个synchronizedҎ后,其它U程是否可进入此对象的其它方? W二十七Qtry {}里有一个return语句Q那么紧跟在q个try后的finally {}里的code会不会被执行Q什么时候被执行Q在return前还是后? 2 << 3 W二十九Q两个对象值相?x.equals(y) == true)Q但却可有不同的hash codeQ这句话对不? W三?/FONT>Q当一个对象被当作参数传递到一个方法后Q此Ҏ可改变这个对象的属性,q可q回变化后的l果Q那么这里到底是g递还是引用传? W三十二Q编E题: 写一个Singleton出来?BR> Singleton模式主要作用是保证在Java应用E序中,一个类Class只有一个实例存在?BR>一般Singleton模式通常有几U种形式: HashMap允许null作ؓ一个entry的key或者valueQ而Hashtable不允? q有是QHashMap把Hashtable的containsҎL了,Ҏcontainsvalue和containsKey。因为containsҎҎ让h引v误解? 最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是Q在 Hashtable和HashMap采用的hash/rehash法都大概一P所以性能不会有很大的差异?/FONT>
在PHP 4.3手册的Windows安装节Q没有解释如何让PHP与Apache 2配合使用Q而有关Apache 2安装的小节缺׃你需要的大量信息。在|上公布的其他安装指南中Q也包含了不错误,使一些安装h员只好不断试验和犯错。例如,有些人甚臛_PHP的DLL替换成其他PHP版本的DLL。OKQؓ了节省你的宝贉|_我们准备了这最权威的指南文章,帮你扫除一切烦恹{?
使用正确版本的Windows
首先要说一说兼Ҏ:Apache 2不能在Windows 95上运行;在Windows 98上勉够运行,但不能作为服务用。从4.3版本开始,PHP也不再支持Windows 95。所以,你的Windows操作pȝ必须是Windows NT?000或者XP?
Apache 2Q源码还是二q制?
如果你有Visual C++ 5.0或更高的版本Q或者安装了Microsoft Visual StudioQ那么虽然可以根据源码来生成ApacheQ但L对不要这样做。在Visual Studio IDE中,Windows下的生成q程非常复杂。即使从命o行编译,也绝对不是一件易事。所以,除非你喜Ƣ创建makefileQ否则最好获得一份Windows Installer二进制发行包Q也是一?msi文g。等你对Apache有了_多的认识Q知道自pq行哪些定制操作Ӟ才可考虑亲手生成Q编译)Apache?
如果已经安装好ƈ正在q行老版本的ApacheQ首先要停止它,卸蝲它,然后才能开始安装新服务器。多个版本的Apache 2不能共存?
双击Apache 2 .msi文g。同意许可协议后Q正设|Network Domain和Server NameQ如果不打算Apache安装到远E计机Q那么设|localhost可以了Q,在Administrator’s Email Address区域输入你的电子邮g地址Q保持端?0/服务选项单选钮的选中状态。在下一个对话框中如果选择Typical安装Q可以快速地获得一个能实际工作的服务器环境?
安装提示
默认安装目录从C:\Program Files\Apache Group变成C:\Apache或者符?.3文g名格式的其他名称。这样一来,以后每次输入Apache安装路径Ӟ都不必ؓ其添加引受?
E候片刻,安装向导会告诉你Apache 2安装成功。接下来惟一要做的事情就是进行测试,h开览器ƈ讉KlocalhostQ这样应该看到默认的Apache 2主页?
然后可以删除主Web服务器目录中的所有示例文Ӟ它们默认位于C:\InstallDirectory\Apache\Apache2\htdocs中。如果有一个现成的主页Index.htmlQ请把它拯到这里;另外Q也可以马上创徏一个空白主c对于未初始化的HTMLQ以下代码就可以了:
QhtmlQ?
QheadQtitle=default server pageQ?headQ?
QbodyQDefault server pageQ?bodyQ?
Q?htmlQ?
让Apache 2为PHP做好准备
从现在开始,你需要较多地以h工方式进行安装,不能单地点击和选择几个选项了事。尽快习惯它吧,q才是Apache的方式。你需要编辑文件来讄不同的配|选项Q如果操作不当,你所做的修改׃妨碍Apache的正加载。如果设|引发错误,那么错误可能被记录到Apache 2错误日志中(默认为C:\InstallDir\Apache2\Logs\Error.logQ。但能够像这栯行记录的毕竟是少敎ͼ大多数错误只会记录到Windows事g日志中(开始| 讄| 控制面板| 理工具| 事g查看器)?
令h遗憾的是Q在你对安装讄q行调试ӞWindows事g日志q不是一个方便的工具。更好的做法是在命o行窗口中试Apache服务器的加蝲Q这栯立即看到错误报告。所以,在完成了我即讨论的配置修改后,h开一个命令行H口Q切换到Apache的binary目录QC:\InstallDir\Apache2\binQ,在那里启动Apache?
Apache配置文g是C:\Apache\Apache2\Conf\Httpd.confQ可用Q何文本编辑器来编辑。查找DirectoryIndexQ定位到下面q一行:
DirectoryIndex index.html index.html.var # index.php
Z允许Apache处理PHP,要删除注释字W(#Q,变成Q?
DirectoryIndex index.html index.html.var index.php
q要允许在Q何目录中使用.htaccess文gQ所以请在配|文件中查找AllowOverrideQ把q个讄从NoneҎAll。保存了所做的改动后,可l在文本~辑器中打开该文Ӟ因ؓ{会儿安装PHPӞ要再ơ编辑这个文件?
安装PHP
虽然可以下蝲PHP的源码,但和Apache 2一P最好直接用二q制发行包。Apache 2可采?U方式来q行PHPE序Q通过一个CGI接口来运行(外部调用Php.exeQ,或者用PHP的DLL文g在Apache的内部运行。后一U方式的速度较快。所以,针对每个版本的PHPQ都会提?个Windows二进制发行包。较的?msi包,它会安装CGI可执行程序Php.exeQ但其中拿掉了通过Apache DLL来运行PHP脚本所需的模块。较大的.zip包则包含了所有这些东西,你可以从snaps.php.net|站的Win32区域下蝲它们。文件下载完毕后Q把它解压到C:\PhpQ保留文件夹名称Q。除非你有绝对的把握Q请同时下蝲PHP手册Q它有多U语a的版本可供选择?
配置Apache 2来运行PHP4
现在来到了最有趣的部分:Apache和PHP完美地配合v来。首先,请将C:\Php\Dlls目录中的所有DLL文g拯到Windows的System目录Q?windir%\SystemQ。接着Q在Apache的配|文ӞHttpd.confQ中查找包含了大量AddType命o那个节Q自己添加下面这一行:
AddType application/x-httpd-php .php
C:\Php\Php.ini-recommended拯到Windows目录Q?windir%Q,把它重命名ؓPhp.iniQƈ用文本编辑器打开它。编辑其中对doc_root、extension_dir和session.save_pathq行讄?行,使其和下面展C的一_注意要把InstallDir替换成你的Apache 2的安装目录的名称?
doc_root = c:\apache\apache2\htdocs
extension_dir = c:\php\extensions
session.save_path = c:/temp
在session.save_path中用正斜杠和反斜杠都是允许的。PHP手册声称q些路径参数需要在最后添加一个反斜杠Q但q个说法是不正确的。在PHP 4.3中不需要这样做。另外,如果C:\Temp不存在,误己创建它?
下一步是允许ApachePHPE序作ؓ模块来运行,q要求你采取2个步骤。首先,C:\Php\Php4ts.dll拯到Windows的系l文件夹Q?windir%\SystemQ。在Httpd.conf中找到LoadModule节Q自己添加下面这一行:
LoadModule php4_module “c:/php/php4apache2.dll?
如果你出于某U原因而需要在CGI模式中运行PHPE序Q用Php.exeQ,请将上面q一行变成注释,q在Httpd.conf中添加下面这些行Q?
ScriptAlias /php/ "c:/php/"
Action application/x-httpd-php "/php/php.exe"
一切都搞定了吗?
保存所做的更改后,你需要亲自去证明两点Q才能确保Apache 2/PHP 4成ؓ一对完的搭档QApache能正常加载吗Q它能正处理PHP吗Q?
要知道Apache是否能够正常加蝲Q在你已l打开的命令行H口中输入以下命令:
apache –k start
另外Q如果Apache正在q行Q可用以下命令重新启动它Q?
apache –k restart
从命令行启动Apache的好处在于,如果出现一个错误,Apache会立x告它。你可能遇到的最常见的问题在于,Apache可能׃某种原因而无法加载Php4apache2.dll。如果Apache报告了这个错误,h前面所q的步骤重新操作一遍,保一切都没有错误?
要知道Apache是否能正地处理PHP,L你的文本~辑器创Z个简单的PHP,命名为Phptest.phpQ其中只包含下面q一行:
Q? phpinfo(); ?Q?
文件保存到主Web服务器目录(C:\InstallDirectory\Apache\Apache2\HtdocsQ,用浏览器讉Khttp://localhost/phptest.php。如果一切正常,应该看到一个含有PHP徽标的网,其中包含大量讄和其他信息。要知道PHP当前是通过CGI来运行,q是在Apache内部q行Q可以检查一下环境变量orig_script_name。如果PHP通过CGI来运行,q个变量的值就?Php/Php.exe。如果ApachePHP脚本作ؓ模块来运行,该变量的值应该是/Phptest.php?
]]>
然后启动D:\jboss-4.0.0RC1\bin下的run.bat
{Jboss启动h以后在浏览器地址栏里输入http://localhost:8080
可以进入Jboss的控制台?BR>
你的web应用攑֜D:\jboss-4.0.0RC1\server下的L一个目录下minimal,all或者default下都可以
JBoss 解压后,?jboss路径\docs\examples\jca 目录下有各种数据库配|文件的h?BR>选择一个你合适的Qcopy ?server\all\deploy ?server\default\deploy ?然后修改其中的如下内容:
?数据源的 jndi-name 修改Z在应用程序中需引用的“数据源名称?BR>填写 合适的驱动E序cd
填写 正确的连?url (connection-url)
填写 正确?q接帐号/密码
在样本配|文件中Q上q内定w有缺省|扑ֈ对应的位|,修改卛_?BR>另外h意:该配|文件可"随意"命名?XXXX-ds.xml,该命名的后辍?保"?-ds.xml"
假如你的web应用部v在default下,你的8080端口也被占用了,你可以修Ҏ
D:\jboss-4.0.0RC1\server\default\deploy\jbossweb-tomcat50.sar
目录下的server.xml文g里的8080端口Ҏ可以了
]]>
以下论坛排名不分先后Q还有许多业界知名的论坛Q主要有点偏门,q个不做概述Q呵c?
IT营销理c?
http://www.topren.net/
适合人员Q企业策划,CIO
业界知名的知识站点“唐人社区”,信息化管理顾问可以去看看Qh也很多,下蝲资料也不,实质性内定w要进一步加强,我记得是非常专业的网站?
评hQ不错,速度也还可以?
IT技术开发综合类
http://community.csdn.net/
适合人群Q只适合软g开发?
技术开发最全面的论坛,里面可以遇到很多牛hQ版面也很全Q什么J2EEQ?NET啊,该有的全上,在这里基本上可以提出M问题Qh气也是最旺的Q不q一般提出的意见都有正方两面的,所以最l解决问题,q是靠自己?
评hQ专业,很牛|是速度慢?
www.itpub.net
适合人群Q数据库开发h?
数据库方面是非常著名的,牛h不少Q不q,现在比较杂,什么都做,|络Q操作系l,行业应用Q到体育贴图Q当然有些也不错Qh气非帔RQ特别是灌水斚wQ^_*.
评hQ强Q速度一般;
http://bbs.chinaunix.net/forum/
适合人员Q系l工E师
q里的特色就是操作系l方面在业界是最著名的,牛h不少Q目前,在数据库Q网l方面也颇有建树Q当然灌水方面也不赖Q呵呵,属于温柔?
评hQ强Q速度q可?
bbs.chinajavaworld.com/
适合人员QJAVA开?
JAVA斚w非常l合的论坛了Q牛Z很多Q是一个难得的JAVA论坛Q涉及你惌的关于JAVA目前M技术?
评论Q强Q速度q可以?
http://www.huihoo.com/forum/
适合人员Q中间g开发?
人气不错Q版面风格独特,在开源,中间Ӟ工作方面非怸错,问题讨论都非常深刅R也很专业?
评hQ很好,速度一般;
IT售前技术顾问综合类
http://www.sysvs.com/bbs
适合人员QIT售前及技术顾?
业界知名的售前技术顾问论坛,比较新异的知识点Q各个IT行业版快划分也比较好Q也非常专业Q绝Ҏ我稀饭(喜欢Q的风格Q网站风g内罕见,也有很多专业文章Q没有地方灌_厉害?
评hQ很好,速度比较?
|络工程c?
www.1000bbs.com
适合人员Q布U?|络工程?
人气很旺Q特色是版面比较紧凑Q综合布U这一块很权威Q很H很专,旉非常久了Q颜色比较明快,是太低端了Q?
评hQ不错,速度一?
http://www.sharecenter.net/
适合人员Q网l工E师
之所以我喜欢是这个网站很多做CISCO工程都知道,也是别h介绍我去的,旉非常久了Q颜色比较暗谈,属于忧郁型?
评hQ不错,速度也还可以
IT理l合c?
http://club.amteam.org/
适合人群Q大多数Q?
评论cL较多Q基本上在其他媒体上看到的评论,q里都会有,要想了解IT发展的情况,来q里看看?
评hQ很好,休闲工作都可以看?
]]>
]]>
Q献l所有的颓废或即颓废的Z
Q本文摘自网上)
成功的背后,有着许多不ؓ人知的故事,而正是这些夹杂着泪水和汗水的q去Q才成就了一个个走向成功的普通h——凌晨两点半Q早已习惯了一个h坐在电脑前的我,望着屏幕QQ思A在暗夜的包容下静静流淌,时光仿佛又定格在三年多前的那一刻:?83分”。那是被中国万千学子UCؓ“黑色七月”中的一天,下班回家的母亲从安打开后说出的一个数字,虽然早知道自׃会考上大学Q但如此的成l也多少Z自己的意料。母亲是在单位用电话查询得知高考分数的Q面对众多的同事Q她几乎不敢怿自己的x。而同在一张办公桌的同事:她的奛_—也是市委书记的独生奻I分数?10分?
或许八十q代出生的我们n上肩负着太多的东西,父母绝大多数的希望寄托在了q一代的w上Q以至于忘记了他们所能承受的负荷Q于是便有了代沟Q有了反叛。而短短二十年_州大地又发生了太多d覆地的变化和对传l文化的冲击Q这些前人所未能l历q的巨变真真切切的摆在了我们q一代的面前Q没有休止,没有方向。我们摸索着、试探着、寻扄属于自己的道路,q期间的痛苦、欢乐、迷惘也只能p己去体会Q我们在一ơ次的变化中感受着Q经历着Q也成长着…?
从何谈v呢,q去十数q的l历像一q电影,一q尚在上映,没有l局的悲喜剧Q时间将自己׃个懵憧无知的男孩化ؓ历经沧桑世事的时代青q_它的力仍未消退Q蹲伏在某个角落Q伺机改变着你的一切…?
七八岁时的我很好的承了父亲的“愚孝”传l,在这个家族中Q不善言谈,木讷呆板的我一直是亲戚们取W的对象Q奶奶也多少ơ对只会做事Q不会说话的母亲_你的儿子来只能是讨饭的命,不会有Q何出息。每一ơ,母亲都希望我能争口气Q做Z样子l他们看看。可说归_每年夏天Q放学后的我都要遵从父亲的命令拎着两个大铁壶行走将q一里的路程l奶奶家打开_冬天Q每隔几天去背蜂H煤Q倒煤渣,q样的日子一直持l到高中毕业?
89q的中国正是各种“气功”风靡万千h的时代Q无C所谓的“大师”打着“神功”,“特异功能”的q子晃悠在各个“神坛”上Q贪婪地接受着被他们蛊惑得魂颠倒的Z送来的礼品,钱币以及所能送上的一切…?
家族自然也不能免俗,亲戚们虔诚的学着各种d的功法,期待着特异功能的出现。堂哥收藏了一c_厚的市场上有兛_气功师和特异功能的书c,被我照单全收。对知名气功师“了如指掌”,世界各地的神U现象诸如“金字塔”,“百慕大”,“ufo”也是自qq和研究的对象。ƈ跟着家乡的一个赶气功潮的老中d模像L偷偷学v了他自称家传的“太极一元功”?
一l就?q_光也经历了气功潮的qȝ以及各地假气功师露出庐山真面目,被拘捕的消息Q那时年的我还很ؓ他们鸣不qIq期间。仍然没有放弃对发明的热望,不过特异功能加上奇思妙惻I可想而知当时我的脑子里尽是些什么东ѝ但是六q时还是着实想Z一些有市场价值的发明Qƈ告诉了当时还在成都科技大学ȝ子的表哥Q记得其中一Ҏ微型z机,洗衣机按比例羃,专门用来z小件衣服,最好用单片机控制各U功能(那时单片是高新科技Q自己只是从一些专业期刊上看到q,似懂非懂的感觉能够用到洗机上)Q夏天时会很方便。遗憄是他们对我的x不屑一,自己有一U“心歠Z的感觉Q对于发明的兴趣也由此压抑了两年。两q后Qv出了“小童”洗衣机Q功能还是Ş态上与自p想的z机均毫无二致?
qp糊的上了初一Q却对做一名与世无争的隐士产生了极大的兴趣Q梦想通过潜心的修炼来改变或者脱这个世界,q日C也尽是自创的厌世诗歌和散文,有一D|间还潜心ȝ如何自杀Qƈ设计了多U无痛死ȝ方式Q(现在xQ还真要感谢当时没有Cq条路,否则׃会有现在的我了)q日怸课时的表现都昑־很神U。语文老师我的日Cl班MQ—虽然她很欣赏我的文章,班主L我的母亲召到学校Q很紧张的问Ҏ的精是不是有问题(q是母亲后来告诉我的jQ,而直到有一天在屋内的水泥地板h着l功Ӟ睡着了被母亲发现Q不得不中止l了三年的伪气功。后来看了司马南所著的那本“神功内q”后Q才Ҏ谓的特异功能d没了兴趣?
初一下学期无意中发现一本母亲单位发的“创造学”,pȝ的阐qC各种创造发明的理论和实例,q本书对我的影响不亚于基督教徒手不释L“圣l”,曾被灭的热情再ơ死灰复燃,于是乎开始照猫画虎,在课堂上放Q自己的思A天马行空般驰聘在qL乐园?
初中时便开始厌恉些枯燥无呻I陈旧落后的课E,面对着不断重复的考试Q其中却没有一丝知识是自己感兴,愿意学习的。也想不些知识即使灌输到自己的脑子里对今后的发展会有何用Q想想中国的p教育Q真正做C从娃娃抓P学了十几q下来,语法规章词汇倒是掌握了不,可又有多h能够q用p同老外交流呢?哑巴p、应试英语害了中国整整一代hQ虽然自q在没能体会到正在实施的素质教Ԍ可看着依然层出不穷的少q犯|,以及学生所背的不见减轻的书包,真的想不Z看不出素质教育的优点来—也许还要有一个接受过E吧。也或许是中国特有的教育环境Q众多学生只能通过q乎惨烈的角逐,t着大批被考试淘汰的落榜生的肩膀才能跨入理想的学校—这一切或讔R着中国素质教育的实施?
学习成W差,再加上行为古怪,性格懦弱Q我在班中“理所当然”的享受着来自各方面的歧视Q还记得在初三中考时Q学校ؓ了提高中考升学率Q准备将所谓的好学生和差学生隔d来,q劝说一些中考ؓ茫的学生攑ּ考试权,只是后来Q由于一些“原因”没有实施。现在想来,最遗憾的莫q于当时Z不更大胆一些,多逃些译֎做更喜欢的事情?
phq了三年的初中生涯,临中考前Z不致使父母太q伤心,用了半个月的功,仅差三分够上市一中的分数U쀔—这L分数已能q入班中的前20名。家中交?000元赞助费让我q入了这所中学—虽然当时已l不再想上学Q可不好驛_父母的意愿,只好以插班生的n份了进厅R?
应该说那时依然不善言辞,木纳呆板Q性格懦弱Q再加上学习很差。当时的高中要求住校Q同宿舍的同学没有一个h自己当人看待,我承接了宿舍中ؓ其他人倒洗脚水Q洗袜子{诸如此cȝ事情Q默默忍受着他们的奚落,甚至以阿q_安慰着自己?
96q三月十四日Q无法忍受这一切的我,带着节省下来的四十元钱和自己的一些想法,以及Ҏ想的憧憬Q希望能到国家专利局谋到一份工作,哪怕只是做杂务Q只要能接触到各U专利文件和资料p。在家中留了一信Q偷L坐火车来到北京,现在xQ当时也未免太过单纯Q但q何不是一Dh生体验,短短数日Q真切体会到q个C会的残酷冷漠和世态炎凉:记得到北京后已经是午?2炚w了,在候R室的大理矛_板上一夜未眠,三月份的北京依然很冷。第二天一早买了䆾北京地图Q按囄骥找C国家专利局。ƈ骗过门卫q入gQ一层层的询问,l于扑ֈ了专利局局长的办公室,局长没在,当时室中有一男一奻I他们随意ML的资料,l了本《专利法》就我打发C。心灰意Lx然出来,׃要再回去Q可吃饭问题如何解决Q?
逐个询问了无数家饭店是否招勤杂工Q但没有一家敢容纳——因为我没有w䆾证。就q样在北京流了四天四夜Q期间被卖血者(所谓的血_引诱q、被警察驱逐过、被街头地痞D打q—只因ؓ看我不顺眹{也同乞丐们睡过C道。那几天看透世态炎凉,心也冷了Q想着一辈子也许p样下厅R?
或许是冥冥中的安排,W四天时在一个公园的长椅上休息时Q遇C?0多岁的老年人,w上的服已l很_推着一辆同L旧的自行车,见hp“见q我儿子吗,他说来北京,我找他好几年了”,看样子已l精失常。他看到自己ӞҎ说“我儿子也跟你这么大Q三q前偷偷从家里跑出来Q只留信说要dȝ看,我找他三q了。”就q样一遍遍重复着…?
一阵心酸,也想起了自己的父母,他们是否也会q样—那样对他们而言太过D酷……我用仅剩的5元钱l家中打了个电话Q是父亲接的Q他问我在哪Qƈ_母亲已经三天没有吃饭Q休息,整日以泪z面Q如果再没有消息Q她会疯掉的?
那天晚上Q父亲和近70岁的舅舅q夜来到北京Q他们一个候R室一个候R室的找,可因为候R室没有位子,自己是在一个饭店的柱子后面半蹲半靠的Әq夜晚—单薄的衣物抉|不住北京深夜的严寒?
回到家中Q我对父母说不想再上学,但他们还是希望能把高中读完——那一ơ,真的伤透他们的心,l于q是回到了学校?
最初返校的一D|_H然对制作炸弹生了兴趣Q于是连l多半个月从市图书馆攉各种关于炸药和相关炸弹制作的资料Q结合头脑中的想象和所掌握的一些化学配方以及电子知识,开始在头脑中设计各U特D“炸弹”。或许处奛_的hq求完美Q哪怕是“犯|”也不例外,那段日子头脑中的灉|层出不穷Q众多独一无二的“炸弹”构思相l出W?
也许q自己都感觉心理上有些出|于是市图书馆能够找到的心理学相关书c翻了个遍,配合其中所介绍的一些方法试着去调整心态,p栯了些日子Q慢慢的恢复了正常?
很感Ȁ当时的市图书馆就在学校附q,使我总能课间休息溜d书Q无论是物理Q化学,q是dQ文Zcȝ书籍Q只要觉得有用的书我都没有错q,两年多来利用上课旉阅了将q一千五癑֤册的各类藏书Q而老师们多ơ在课上“抓住”自己,却从未没收过所ȝ书—没有办法,谁让自己Ҏ侠、言情之cȝ说不感兴趣呢,久之Q班MQ也拿我没了办法ؓ了锻炼意志力Q也Z换一个Ş象—同时不惛_受他人的ZQ我独自搬到一间曾l发生过火灾而无人愿住的宿舍中,面对四面漆黑的墙壁,实施着形象再造计划?
首先要克服胆懦q性格Q好走极端ƈ患有d恐高症的我在一个夜晚溜q电视台院内Q开始向上攀?0多米高的电视塔铁Ӟ壮着胆子爬到一半时Q不自然的向下方望了一眼——四面悬I的?0c的高空Q全w立d软,手脚也开始无意识地抖动,但仍q清醒:生或是死——此dl没有退路!q样U莫q了10多分钟后Q终于控制住自己的n体,接着爬到了塔Ӟ站在端向下望时Q再也没有先前那U眩晕感Q充斥的却是前所未有的自信,那一刻,我战胜了自己Q?
在宿舍内自制了一些粗陋的健n器材Qƈl合买回的关于散打和截拳道的书籍Q开始习武,q坚持着每日冲冷水MQ以至于后来全校都知道有个下雪天q在z冷水M的怪hQؓ了下译能够抢先打饭Q时总二楼阛_Un跃下……日子就q样一天天q去Qn体日益健壮,渐渐Cq不在乎旁h的评论和蔑视Q我试着越自己?
高中的日子也有不小插曲Q曾l在看过一本美国h写的孤n大v飘游的小说后Q对挑战Z极限发生了兴,于是找来不少d资料Q做了一番准备后Q决定一个星期内不进食,同时也不饮水—资料表明:在较寒冷的环境中Q如果不喝水人可以活六天。我选定了在96q?1月䆾的一个星期一开始(当然是要瞒着家h了)Qƈ且照怸学—初hZ让自己在来出现此类Ҏ情况时心中有敎ͼ不至于因为绝望而死Q试验的前三天,我详l记下了每天的活动量和排泄情况,q大致计着由此损耗的热量Q第三天中午Ӟ几乎坚持不住的想饮水Q而胃也在不停的抽搐,走\时如同脚t棉׃般,我咬牙坚持了下来。第四天Ӟ不仅大小便已l停止排泄(q对肄损害相当大,后来由此剩下的饭钱全部换成了药品Q所q的是自q诊断q算对\Q试验ƈ未对w体造成太大伤害Q,而且不再感到_也没有了饥饿的感觉,头脑中一片宁静安详的感觉Q到了第六日Q走路时全然没有了感觉,旁h的对话仿佛来自很遥远的地方,我知道已l接q生死边~,晚上l于中止了这场实验,那几天瘦了七斤。试验的六日内d吃了大半块馒_350ml的水Q用量杯_定Q,q得C个较为满意的l果?
btwQ从前的我易走极端,请各位千万不要重复这验,只是希望q个数据能o您在危难状况时增加存zMȝ信心。ؓ了能够拥有自q实验室,q且扑ֈ需要的化学药品Q我千方百计的四处寻找,可惜Q一个小城市中,又怎会有齐全的化学品商店呢Q一个偶然的ZQ在**局内部闲逛时Q无意中发现一座不太v眼的二层楼Q而里面竟然有一个化学实验室Q还有几个存攄子A器的储藏室,q_没有出。想q入q些戉KҎ而言q难事Q略施小计便可以L出入—还要归功于门锁的原始:Q,每次q不多拿Q只是带走少量的化学药品。或许是一些药品的奇怪缺失引起了他们的注意,一ơ想取些药品Ӟ感觉有些不太对劲Q仔l观察才发觉安装了红外报警器。于是回去花了一个星期研I盗设备,q购CcM的报警器材做试验Q找C破解ҎQ也得到了需要的化学药品——这D늻历或许奠定了自己后来的黑客基j.事先声明Q我q未对实验室造成M损害Q所H得的化学药品dg未超q?0元—只不过市场很难买到才出此下{?
高中时留下较深印象的当属做不完的作业以及{不完的试卷Q看不完的课外辅g。一上课Q试卷便铺天盖地而来Q自习课时更是如此,各科老师走马灯般发着试卷Q每一个都声称很重要。虽然自己可以n受不交作业的“特权”——老师们完全放弃了Ҏ的管束—他们已无能为力Q看着周围的同学v劲儿作着毫无用处的作业,心里不由得想W,也只是苦W——这一切ƈ非自愿,而仅仅是Z能够来混入一所大学。至今仍感到U闷的是Q如果需要,当时的我可以弄懂最专业的科技论文Q却对课本上的内容始l无法记住。现在想来,q或许是“兴是最好的导师”的最佳例证jQ其中也有逆反心理在做崇?
高中三年Q同学之间没有友情,有的也只是相互竞争和压蝾Q每个h都知道,名额有限Q如果希望升入大学,你不得不力去超q你周围的同学。这些本不该是我们这个年龄段所应该承受的,可现实就是如此残P对于众多农村学子而言——如果希望过得更好,考大学只能是唯一的出路(但事实果真如此吗Q大学毕业后仍将要面对这个社会惨烈的竞争Q我们这代h始终无法LQ。这是n处大城市的考生所无法体会的(不^{的分数U能令他们较Lq入大学校园Q如果说q也是一U不q等的话Q那也只能说是见怪不怪了Q。于是每q͘q高考,便不时会听到因不堪承受过重心理压力的高考应届生自杀或进入精病院的消息。更可悲的是q类消息q不会在考生中引起反响—他们早已麻木。置w事外的我(本就不想考学Q也没有那L压力Q^静的看着q一切,也试图找Z个答案—你能告诉我吗?
很快三年q去Q也q来了不得不参加的高考…?
我永q忘C了母亲回家后的面孔。她的脸上是一U自被L后的l望Q也隐含着对自己儿子今后命q的深深担忧—十多年辛勤付出所培养出的儿子Q在一个以决定一生命q的考试中交l她的答案。在以子女高考成l衡量成功的城市,q是一个难以容忍的数字Q意味着q个高考弃儿今后的道\充满坎h折?
本已厌倦了陈旧落后的课本知识,下决心不再上学的我,此时不敢也不能再面对母亲的眼睛。已l她太多的失望……。后来,按照父母的意愿,来到了石家庄一所计算学考试学校。却遇上了以改变一生的转变……?
98q?1月,17岁的我第一ơ在学校机房内接触了电脑Q虽然仅是dos界面Q虽然还对电脑一H不通,但却不由得被q个W罩着秘气息的家伙征服了Q也是那一刻,在内心暗暗立下了一个目标:三年内,不仅要征服电脑,q要成ؓq个行业最的专Ӟ
Z扑֯接触电脑的机会,记得曄在一个星期内Q连l奔波在5个地方,着他们或者公怸用电脑的时候,x设法去蹭机,qw携带着一张光盘—我买的W一张光盘—一张关于网l入侵和软g破解的盗版光盘,面对着那里面犹如天书的教学文章Q以及神U莫的入R和破解YӞ忘记了吃饭和睡觉Q绞脑汁的惌M解它们。那个星期,d睡了不到六个时?
那次之后Q大病了一场。这场病也成了自己得以赖在病床上不受q扰看书的最好借口。ؓ了学习Y件破解—基本前提是要了解汇~语a—用了一个星期啃完ƈ了解了ibm的那本汇~教材,又ؓ了能够用那些黑客程序,两个星期之内Q掌握了c语言的基本编E和调试—这是在没有电脑可供使用的基上,Z了解|络Q一本本最新的|络书籍被我“蹂w”了一遍又一遍,没有人指|仅仅凭着兴趣Q凭着xZ名黑客的渴望Q终于读懂了那些晦ӆ艰深的文字(q也许是早期中国电脑书籍的一个通病Q?
l不住我的Y硬泡,{应在两q后买电脑的父母挤出钱来提前C台兼ҎQƈ攑֜表哥在市农行的单w宿舍中——他q不常来Q某U程度上Q成了自q个h乐园?
三个月,整整三个月,一个h同电脑交着Q时间已l失M概念Q昼夜星辰的交替g也没有意义,饿了Q去食堂吃些东西Q困了,倒在电脑旁的床上打个盹,醒来后接着“交战”。至于学校,惌v来的时候便回去一ơ,也仅仅是让班MQq记得有q个学生。结合电脑,学习了所购买的上千元的书c和光盘。掌握了1000多种各类软g的应用,软g破解Q编E等能力也有了飞跃性的提高。现在想来,那或许是自己一生中最快乐的一D|光,没有压力Q没有歧视,只有兴趣和动力,疯狂地吸收着q个行业所能了解的一切?
99q三月䆾Q河北微软培训中心在计算Z界打Z招收W一批学员的q告Q那时还Ҏ不知道认证的概念Q仅仅凭借着能够接触到真实的|络环境Q以及如果通过认证后能够得到年?0万的承诺——当Ӟq也仅仅是广告宣传而已。便又劝说家中出钱报名参加了W一届学习班?
事隔怹Q很多往事已成了q眼烟云Q但一件小事却始终隑ֿQ报名时Q自己问负责语不太好是否也能学习Q他回了一句:没关pR但好像又想起了什么,紧接着又问Q你q四U了吗?那一刻,仿佛猜到了所面的将是什么?
一个高考落榜的学生惛_考什么世界认证的pȝ工程师,q在家乡q速传ZW谈Q回家后每个知道q个W柄的h看待自己的眼中都带着蔑视和不屑,我知道,已经没有了退路?
那届培训班共?8名学员,除我之外都是有着相关工作l验的本U和士。捧着6本砖头般的英文教材。反复闪现在脑v中的也只剩下了“拼命”这个单词。白天,对着金山词霸译着书中每个不懂的单词—试图读通书中的含义Q那时ȝ了一个包?000多个专业术语的单词表Q硬C下来。晚上,上课时结合未在看书时搞懂的知识点Qƈ用录x授译ֽ下,回去后反复去听,ȝ解。两个月的培训,弄懂了每一堂课Qƈl识了业内的很多朋友。n上由此少?0几斤肉——或许是一个减肥的好方法?
99q五月,我成为培训班中第二个通过mcp认证的学员—虽然仅需一门课Q但也是一个好的v点,毕竟当时的石家庄没有几个人拥有该认证。兴奋地M已未至的学校炫耀Ӟ却被新换的班MQ心翼地问道:你是李明吗?待得到肯定答复后Q毋庸置疑地_你已l被学校开除了……?
刚离开学校时的我本想籍着自己的电脑能力寻找一份合适的工作Q孰料在其后的多半个月中Q频J更换了3家公司,都是一些电脑代理公司,几个Z是一个组合,甚至有一家代理工控机的公司,同时竟还做着食品烹制的生意!但牛皮却q吹得很大。我知道再呆下去只会I时_q速逃离Q连工资都没有去要?
q好c着同一培训班朋友的推荐Q我来到矛_庄万利福市作了一名网,每天的工作就是维护公司办公网l,pos机的正常q营Q以及unix服务器的数据备䆾Qƈ利用vb和sqlE序~写一些应用和数据库查询YӞ工作很是清闲Q这D|_在公司搭起了一个网l环境,闲暇时便做着教材后面的实验和|络安全的研I。当时的薪水是每?00元?
几个月很快过去,Z能够l自׃些压力,谢绝了主的挽留Q回家后准备剩余U目的考试?
现在xQ在家中的那D|_也是人生中一个很大的转折点,性格乖枭的奶奶突发脑血栓,在医院住了一个多月,L也在此时凑热闹,心脏病接着发作Q而父亲由于照他们,p尿病上升到6个加号——这是非常危险的信号Q母亲也被篏得诊断出心脏间歇Q我奶奶体重?80多斤Qؓ其每Lw都是一个艰巨的工作Q,没有工作的自己却又不能帮上太多忙Q准备去矛_庄考试——却在公交R上将父母l的600多元考试费被偷扒走。而借钱考试Ӟ仅剩的一门课q考两ơ,竟都是仅差一分而没有通过。真切体会到了什么叫Ʋ哭无泪Q?
回来后ؓ了排解心情,ȝ自己接触电脑及网l一q多来的|络安全和破解经验,写了一遍两万余字的文章Q被《Y件》杂志发表—发表之前在杂志Cּ起了很大争议——先前从未刊登过cM的文章。发表后Z所有编辑的意料Q这文章被评ؓ该杂志创刊以来最受读者欢q的文章Q由此也带动了后来媒体对于黑客群体的x—而此Ӟ体会qh生v落的我也已经准备淡出q个圈子了?
也是q个月,再次接触C上v博达|络讑֤公司的河北办事处l理Q现已是博达公司的市场ȝ。第一ơ是数月前朋友引荐,当时他对我的表现q不太满意,而这ơ,听朋友说我已l将认证评全部考完Q他很欣赏我的毅力,于是Q顺利进入了q家公司Qƈ成ؓ路由器行业内q龄最也是学历最低的工程师。负责河北和内蒙古两省内公司所售\由器的安装维护和调试。由于学历的~故Q薪水被定ؓ1500元,q几乎是公司薪资标准的最底线?
2000q三月的一个深夜,l理打电话说邢台电信局所用的一台我们的路由器出了些问题Q要求立刻过去,q夜用了100多元打RM邢台Q到电信局时已l是12点多了,故障是cisco?507和我们的路由器无法互通,那是自己W一ơ独自出差,也是W一ơ见到cisco的\由器Q此前在公司培训时仅仅知道cisco是我们的竞争ҎQ面对着几乎完全陌生的命令行和设备,有些束手无策。无奈之下长途唤醒了上v总部的技术主,在他一步步的提C和帮助下,W二天早?炚w前终于排除了故障。而如果故障在7点后仍无法排除的话,那客L损失将?位数来计了Q什么是压力Q这是压力Q?
以后的日子便是在频繁的出差中度过Q除了排除故障,q要承担l客户培训和Ҏ~写斚w的Q务,以及跟随ȝ陪同一些主要客Pq段日子为后来的工作奠定了良好的基础Q也很大E度上锻g各方面的素质Q,没有d时便在国怸心的办事处准备着mcsd和mcdba的考试Q由于曾l的黑客l历Qvb语言以及sql数据库的~程q不是太大的N—这总要比汇~容易得多。一门心思的准备着考试—至于娱乐和休闲Q就让它们见鬼去吧,那时Ҏ没有旉Lq些东西?
5月䆾的时候才了解到cisco的认证体p,不知天高地厚的我对这套认证又发生了兴,不仅仅在于它同自q工作息息相关Q同是相兌业,工作中也要时常接触)Q也在于它的通过隑ֺ?000q的矛_庄书店中很难见到有关cisco斚w的书c,Zccna的考试Q将书店中能见到的所有有关cisco的书c都C回来Q甚臛_括了ccie的英文教材?
q三个月不分昼夜的学习——利用一切可能的旉Q出差时在火车和汽R上看Q在办公室中晚上C在公司地板上打个盹Q醒了再接着学,q结合公司的路由器做着实验?月底的时候终于拿下了ccna的认证(Ҏ现在某些L一个星期拿下ccna的培训机构来Ԍ专门从事路由器调试工作的我用两个多月好象太慢了些Q不q打下的基础却很牢固Q)Q那时ccna在业内的影响力很大——包括后来到上v接受为期一个月的新产品培训Ӟ公司各地的技术支持都很钦佩。后来约略统计了一下,那段日子的^均睡眠ؓ每天三个时左右?
2000q?月䆾cisco全部认证体pL了个d更新Q内容和考题均发生了很大变化Q在相关教材都没有推出的情况下,便又开始了准备ccnp2.0Qcisco认证|络专家Q和ccdp2.0Qcisco认证售前|络设计专家Q考试的相兌料,q借了几台旧的cisco路由器,向cisco更高端的认证发v冲刺?
当然Q冲Z余,也没有忘记我曄的“老本行”,只不q这时更多的們于对因特|上的网l设备的破解与控Ӟ记得最疯狂的一ơ是个周末,q箋60个小时坐在电脑旁Q不停的试着q入各种最先进的网l设备,那一ơ,控制?00多台各国的\由器?00多台其他cd的网l设备、美国一所大学?2016核心路由器(q是当时cisco最高端的\由器Q、国内两个省Q请原谅Q由于业内原则,我不会透露它们的名字)的数?2000pd的\由器Q本可以控制更多Q不q拨号上|的|速实在太慢,限制了R入)。这意味着如果愿意的话Q仅需在世界上转几个弯Q键入几道命令,那所大学以及q两个省臛_二分之一的电信通讯|络至瘫痪两个小时——但我永q也不会q样d。而o人遗憄是,自己仅仅是利用了它们配置上的~陷以及|上早已公布的漏z,中国乃至世界的网l安全状늜的o人堪忧…?
Z贴补认证考试所带来的花销Q也在河北的微Y培训中心D教授cisco的ccna培训评以及mcse的部分认证课E。同时就可以免费利用培训中心的网l资源和听取mcsdQmcdba的课E培训。ƈl交一些各界的朋友Q一双雕的Ҏ曄让自己暗自得意了很长一D|_如果按照q龄来看的话Q好?9岁的我应该是中国最q轻的ccna讲师了吧Q到2000q?2月时Q经q多ơ重考—仍焉只是一两分的差距,在Y件设计(mcsdQmcdbaQ、网l设备维护(ccnp2.0Q、以及系l集成的|络设计(ccdp2.0Q的交叉学习和考试中,庆幸的是竟然没有因此而搞昏头脑,12月一个月的时间都是在考试中度q的Q也是这个月Q一万多元的U蓄消耗一I,多日加班U攒的休息日也得C充分利用Q交错考试也(q个月经历了20多次不同的认证考试—包括一些重考,也经历了出生以来对自己意志力的最大考验Q锻g今后面对压力的韧性和忍耐。D个例子:如果希望拿到ccdp的认证,首先需要通过ccda的考试Q而da的考试对英语阅ȝ要求极高Q它是通过一个个的案例分析来判断你在|络设计斚w的能力的Q每个case如果单独打印出来Q将占用臛_4Q?|印纸。一般而言Q你会碰??个caseQ而在自己W三ơ冲刺da的考试Ӟ竟然到?个caseQ这些认证考试每次重考难度都加大)Qƈ且仅有短短的两个时Q只有在了解q些案例的基上,才能d50多道题目。精几q崩溃!两个时q去了,打印机将成W打印了出来,一条绿U:passQ自qƢ呼声随卛_M整个楼道?
事后在网上搜索了一番,q查询了相应的一些培训机构,不经意间发现自己已成Z界上最q轻的同时拥有“微软认证系l工E师QmcseQ”、“微软认证数据库专家QmcdbaQ”、“微软认证Y件设计专ӞmcsdQ”、“思科认证|络专家Qccnp2.0Q”、“思科认证|络设计专家Qccdp2.0Q”认证,且均在相关领域工作过的工E师?
虽然q小Q但那时的自己在沛_的系l集成行业已l有了相当的知名度,工作也已驾轻qQ而我也希望着更多的挑战—当Ӟ׃均ؓ自费考试Q略昑־薄的薪资已经无力再承担认证费用。于是下军_准备d京看一看,得知要离开的消息后Q经理诚x留,q许诺提高薪资,矛_庄另外一安兯模的pȝ集成公司也希望我能过d作,开出的月薪?000元——这在消Ҏq不高的矛_庄已l属于高薪?
L已决Q辞d作只w来C北京Q颇h味的是,虽然当时互联|行业已l跌臛_了冰点,但招聘会上却充斥着pȝ集成行业的公司,各公司纷Uh出“ccna优先”的标题Q这在一定程度上也验证了自己的判断:?9q网设计最J盛的时候,Z选一个方向,l过很长旉的考虑Q才坚定了在pȝ集成行业工作的决心—如果选择|页设计Q有一定基的我可以拿到4000或者更多,但内心却在问—这始终是一个假象,你真的具备拿如此高薪水的能力Q仅仅一个网设计没有技术含量,你认为它能繁荣多久?不停地思烦q些问题Q最l选择了留在博达,q决定待能力提高时再作考虑?
招聘会上Q所拥有的那些认证,再加上参与的众多省|络的徏讄验,几乎每一家在收到我的历后都立刻要求我去面试,q纷UC希望能够留在他们公司,而学历—却反而成了最无关紧要的因素,原本做好了来北京做搬q工的最坏准备——此时真的有些受宠若惊(对照一q前的那D|子,心中亦是感慨万千Q。面试对我而言Ҏ不是问题Q自然薪资也戏剧性地水涨舚wQ在所谈的众多公司中—包括上市公司,外企Q以及业内翘楚:曾有一家新加坡的服务器公司开ZE后9000元的高薪Q他们的ȝ理直a不讳地说他看中的是我的学习能力以及拼搏精,如此的年U能够拿到如此多的认证和工作l验不是每个人都能达到的。但最后由于一心希望向集成行业发展Q最l谢l了邀诗?
在公司的选择中,一家名不见l传的小公司吸引了自q注意力,记得那时pȝ集成部的ȝQ一名清华自动化pȝ士Qƈ曑֜hp工作多年—也是自己后来的上司Q曾l在面试时很诚挚地说Q依你现在的能力Q去一家大公司完全没有M问题Q不q大公司q不需要你能够独当一面,很大E度上仅是制度下的一颗螺丝钉Q但最大的特点是E_。而选择新成立的公司的话,自n能力会得到迅速提高,如果公司发展hQ升q的Z也很多,收益自然颇丰。不q最大的特点是风险很高Q小公司随时有可能会被市场所淘汰Q你的职业生涯也会有所改变。他希望能考虑清楚后再l予{复?
喜欢冒险的我做出了抉择,来到了这家公司,在系l集成部门就职,职位是售前支持经理,负责电信行业相关的方案设计。部门的员工均有在业内各知名公司工作q的l验Q堪UC内精英。由于职责划分明,怺之间没有太多的利益冲H,大家合作得很融洽Q上班是同事Q下班是朋友。ؓ了完成从厂商售后工程师到集成行业售前设计专家的{变,那段旉接受了众多来自各U不同厂商的各类产品培训Q也参加了相当多讑֤厂商的正规培训,再加上同事们的真诚帮助,使自己顺利地完成了过渡。ƈ对于pȝ集成行业的发展运作有了进一步的了解?
或许是一切来得太q顺利,q少ȝ的我有些满Q自认ؓ在同龄h中已l算是佼D了Q也想今后就q样q下M--q纪轻轻便有着一份o人M慕的职业Q稳E_当地做个工程师。没有了往昔ؓ学习而悬梁刺骨的毅力Q言谈中也多了几分狂傌Ӏ回家时母亲看出了我的自满,Ҏ有说什么,只是闲谈中看似无意的问了一句:最q看q什么书没有。她知道她的儿子会读懂她的u外之韟뀂心头一凛:两个月来已经没有再完整看q一本书c了Q这q是从前的我吗?心Q气躁曄是自׃度用来评价IT行业的,如今却照搬到了自q头上?
于是开始准备CCIE的考试--q个在网l行业公认难度最大的认证Q而且也是p最大的一认?-没有10万元是拿不下来的Q当Ӟq仅仅只是必备条件之一Q它q需要你必须h丰富的设备调试经验,以及面对压力和挫折时泰然自若的心态。两天的LAB考试时其中的隑ֺq非一般h所能想象,仅以W二天下午的troubleshootingZQ考官Zؓ的在一个用各种CISCO讑֤搭徏的网l环境中讄上百个故障点--包括g和Y仉|上的,甚至你所使用的调试线~都有可能发生问题。短短的数小时内Q你要做的就是要让这个网l环境恢复正常,l大多数人都在这一兌刷下阉|。记得自׃位CCIE朋友在讲C曄的认证经历时Qؓ准备LAB的考试Q曾l整整两个月没有跨出实验室一步,出来时所有的同事都没有认出眼前这个瘦骨嶙峋,胡须满布的hQ那D|_他瘦?0斤!--现在xQ真有些古代武林高h闭关修行的味道。巨大的付出也意味着丰厚的回报,当时中国仅有不到100名CCIEQ一位CCIE的薪水是上不顶的,从年?0万到上百万均有,q也是后来h们趋之若鹜的M考CCIE的原?间接D了中国CCIE的良莠不?-当然Q这是后话?
那段旉Q花费上万元购买5?手\由器搭徏成一个最基本的lab环境Q放在了自己的办公桌上,IZ时便以做实验Z。七月初Q两ơ报名参加了CCIE的笔试,历史在重演,每次考试均以一分之差未通过。而这个时候,发生了一件事Q也由此改变了自׃后的人生道\?
如果没有记错的话Q?001q的7月䆾Q中国股市经历了最为动荡的一ơ调_3000亿市g股市中蒸发了Q但却未想与自n有什么关?q不喜欢炒股。有联系的便是公司的董事长曾l是做证券ƈ在短旉U篏大量财富的,7月䆾的一个上午,我们部门正在联想总部接受AVAYA的售前工E师培训-它是我们的合作伙_联想的一位经理在休息时还在连夸我们所做的设计Ҏ。中午时Q经理的电话大家全部召回,宣布׃董事长ؓ了应付股市疲软,抽调资金Q公司解散。而在q之前,公司却正处于扩张阶段Q众多项目已l签U和正在{Q虽然或怸会达到预定的目标Q但实现盈利也是指日可待。从未想q公怼在这个时间关闭。很多h都不能接受这个事实,包括自己。ƈ不是担心找不到工作,而是q种落差让h无法承受。正Ʋ大展n手时却……,晚上吃离别饭的时候每个h都很Ȁ动,L感在歌声和酒席上宣泄着Q很多h落了泪。那一晚,我们都醉了…?
两次冲刺失利再加上这L如其来的事gQn心俱疲的我突然很惛_放松一下,也希望在旅途中能够再次思烦自己今后的方向,因此谢绝了大唐电信系l集成部l理的加盟邀?既有旅行的原因,另一斚w原部门主正在寻N险投资,{备着公怹下的事情Q他希望大家q能一同合?不想因ؓqg事情而导致如果去大唐工作一D|间后Q仍要再ơ离开-q将影响自己在业内的个h信用。而信誉,也间接决定着你在q个行业能否立Q立EI
背上睡袋和帐P独自去野外旅行了一个多月,在罕无hq的深山和森林中Q望着满天J星Q心灵得C前所未有的^静。曾q失在茫茫林P也曾l在攀岩时滚下陡坡Q曾l与毒蛇qQ同孤狼ZQ多次在生与死之间徘徊Q却从未感到q害怕。我在寻扄自己今后的h生方向,也寻回了昔日的自?不再担心什么,本就一无所有,何惧暴雨狂澜Q?
回来后不久,9-11事g发生了,世界真是,地球另一端的事情很快媄响到了北京,本已衰落的IT行业再次雪上加霜Q北京的投资公司撤回了大部分准备针对IT行业的投资,q暂不考虑有关IT业公司的商务计划书。立竿见ql果便是Q经q无数次谈判、即融资成功的原部门主这ơ也N厄q?融资化ؓ了影?
只不q,q次我已l^和了许多Q躲在住处读着先前购买却没有时间翻阅的各类书籍Q边想着今后的道路。一天无意中扑ֈ了从家乡带来的很不v眼的塑料袋,里面满是零碎的小U片Q那是自己初中和高中时所有的灉|汇集--曄L搞发明的我所惛_的上癄思想l晶。其中很多灵感现在看来,都还有着不少的闪光点。翻看着Q惊讶于当初备受歧视的我竟会有着如此多的发明构思,惌v了六q前的我Z让自q发明得到认同而离家出赎ͼ来到北京后的那段非hl历。而从毕业时vQ三q了Q三q内Z订下的一个目标而努力,内心中再没有了那份激情,而三q前所订下的目标已l基本实玎ͼ是否扑ֈ了下一个目标?对,做一个成功的发明?-q也是我十年前的梦想Qؓ理想而奋斗的人是最快乐的?
遗憾的是也要为生存操劻I在积蓄所剩无几的时候,便又开始了扑ַ作,虽然2001q?1月䆾的系l集成行业已l呈现颓势,“奶酪”风行整个中xQ裁员的风浪此vgQ有点像2000q底时的|页公司Q不q无论在何种行业Q中高人才也L供不应求Q这一点倒是不会改变。没费什么周折来C一家业内新崛v的网l设备公司的增g务部门,仍然从事先前的老本?-售前Ҏ设计Q不q服务对象由原来所从事q的电信、城域网以及银行|络换成了国家政府、部委的|络?
在这安兯模的公司里,一边工作,一边试N新去d曄搞发明的头脑-所q这三年留在脑中的条条框框ƈ不很多,很快Q头脑中的灵感日益增多了h?
部门的工作氛围也很愉快,上司是一位很能干的女?却没有半点上司的影子。如同在先前的公司时一P彼此信QQ互相帮助(q也是自己选择IT行业作技术的一个原因,同事间少有勾心斗角,怺间都是朋友)Q完成着公司分派的一个个d。闲暇时一块讨论着自己新构想的一些发明的可行性和实施问题。y的是Q进入公司的那段旉里,正赶上公司正在兼q属于同一集团之下的另一家网l公司,公司内h心Q动,而工作,也开始日益繁忙了hQ各U方案设计应接不?时常需要加?众所周知QIT行业内的加班是不l加班费的。没有太多的旉再去考虑自己的一些发明。是否辞掉工作去做真正想做的事?但这意味着再次失去E_的收入,面对多数人的不理解,以及一个不可知的未来?q是留下来稳E_当地做个白领Q工作一D|间后转ؓ目l理或者去做销售,一生就q样q_^常常地过下去Q那是一个可以预知的未来。我的内心再一ơ开始犹豫不决…?
一ơ加班时同公司的一位销售闲聊,她看出我的徘徊,直截了当地说Q如果你选择工作Q就要认真去做,如果惛_做你喜欢的事情,干脆辞d作去qԌ不要指望两g事你都兼。与其这h摆倒不如踏实地d一件事情,否则什么都做不好!一a惊醒梦中人,是呵Q鱼与熊掌不可兼得,怎么q这么简单的道理都忘掉了Q想惛_丛林中时的感悟,那次Q终于下定了军_…?
2002q?月,在公司要求{正的那天Q我q静的对部门ȝ提出了辞职申Pd公司Ӟ已经完全实现了三q半前的那个承诺Qƈ开始向新的目标q进…?
应该_在刚辞职的那D|间里Q依然迷惘。虽然模p知道希望通过个h创业Q寻N险投资商Q从而将自己的发明{化ؓ产品。但该怎么dQ如何实施,心中却没有多头l。手中有C所惛_的项目,其中涉及到“能与电脑沟通ƈ实现互动的电脑椅”,“汽车GSM+无线定向l合防盗控制pȝ”,“笔记本全方位防盗及控制pȝ”等Q第一步自然是要申请专利了Q而专利的甌需要提交具体的电\设计图,Z能够作出设计图,对电子行业ƈ不熟悉的我从书店再次买来上千元的相关书籍、在|络上搜集到CGB计的信息、研I单片机Q无UK讯以及国际最先进的电子器件的应用{,q从中筛选出最需要的资料Q一个多星期昏天黑地的学习后Q已能够用行业术语同业内专家交流了,电\图也d颇具专业水准-各个行业均有盔R之处,我想q也是曾l做售前时所赋予我的一能力。但随着研究的不断深入,也越来越感到qQ这些项目均需要对现有讑֤q行较大的改造,而且对于投资商而言Q太前沿的东襉K要极高的U技含量Q也意味着巨大的投资,未知的市场前景,很长的投资回收期--甚至可能血本无归,风险太大。摆在眼前的一个现实是Q投资商凭什么要巨额资金投到这么一个充满未知和悬念的项目上Q还是在IT业最不景气的时候?--q也是ؓ什么众多投资商都希望将钱投到处于发展和成熟期的企业Q他们需要的是短期内看得见的利润回报。尤其是l过了NASDQ的狂潮之后,现在已经是盈利ؓ王,而不再是概念致胜的时代!
冷静下来的我面对着再一ơ的抉择Q是舍弃现有目而再Lq开发更有市场前景,风险更小的项目,q是一条\走到黑?-人生其实不也是由大大小的选择构成的吗Q犹如赌博(自己从不参与赌博Q只是世间万物皆有相通之处,所选赌博一例虽不算太恰当,却也贴切Q,权衡利弊后的每次下注便要承当L错的风险Q而赌王同赌徒的区别就在于他不仅能赢得P输的时候也同样攑־下。荣׃惊、敢于放弃便标志着他下一ơ的成功Q?
q运的是在研I“笔记本l合防盗pȝ”的甉|理模块Ӟ灉|在脑中闪玎ͼ随着数码讑֤的增多,Z外出旅游的热情日益高涨,Z么不做个通用型的充电器,l各U数码设备充电呢Q问题确定了下来Q剩下的便是搜烦市场及网l中关于充电器方面的各种资料Q去各国的专利数据库中寻找是否有相关发明。经q一D|间研IӞ在通过分析Ҏq终于找到各U充电器的共性之后,我自行设计了一U能够充l大多数电子讑֤Qƈ可在各种环境下利用多U供甉|式ؓ不同的设备充电,q可让消费者可以根据自q有设备以及用环境自己定制所需要的充电和供甉|式的充电器。该充电器整合了我在做系l集成的Ҏ设计时所采用的模块化设计思想QƈH破了传l充电器的设计模式,各个附g之间都是怺联系Q紧密结合的。紧接着便开始复习专利法Q设计电路图q学着写专利申L各种文g。通过专利代理为此目甌了数国家专?自然Q这个时候,我也能够同电源专家自如交了J接下来的事情应该是书写商务计划书Q吸引投资商了。ؓ了o计划书言之有据,又买来大量有关管理,市场营销Q策划以及胦务,人力资源Q风险投资等斚w的书c学习参考,q听取了各行业朋友们的徏?他们都在很认真的帮助我,用了半个多月的时间写成了一份初E,或许是上天的有意安排Q也或许是潜意识希望这个ƈ不甚满意的文E毁掉,MQ一天下午,两夜未眠的我竟稀里糊涂的用一个从|上down下的加密软g文E以及备份加了密Q在忘掉密码的基上竟又加密了一ơ,文档再也无法恢复Q半个月的心血化ؓ灰烬Q而那时其它一些事情也同时烦扰着我,看不到前面的路,也不知道能走向何方?在惌攑ּ的一刚wQ内心却抉|着。它反复地说Q坚持下去,再坚持一会儿Q你会成功的。烦忧的我便开始按照《世界上最伟大的推销员》一书所规定的,逼着自己每天大声朗读成功誓言Q自己鼓q自己。又一
ơ读懂了“忍耐”这个词所表征的含义…?
转机发生在五月䆾Q“中国科技投资|”打来电话,希望能够了解一下这个项?q给他们一份品介l的文-数天前曾l在q个|站上注册过一ơ。那天晚上连同第二天的上午,没有d电脑椅的我写Z一份上万字全新的计划书初稿Qƈ发送给了他们,W二天,便与他们{订了合作协议,谈话q程中,了解刎ͼq个有着政府背景Qƈ作ؓ企业融资q_的公司在此之前从未同个h融资目q行q接触,针对的仅为公司融资项目,而这ơ,是一个特例,q准备将自己的项目作为重Ҏ荐项目向投资商推荐,五月底,我的目攑֜了公司的|站上,q处于“重Ҏ荐项目”中最显要的位|。大大激׃我的信心?
同期Q朋友们也在帮着联系投资商,U博会上也遇C一些对此项目感兴趣的投资商和企业,注册的科技开发公司即获得批准。我冷静的注视着所发生的一切。这q不成功,恰恰相反Q这仅仅是一个开始,一个通向更加曲折的道路的开端。我知道Q现在正是最困难的时候:׃甛_专利Q公司注册以及其他的花销Q积蓄已l捉襟见肘,而此时却q未跟投资商有过实质性的接触Q样品由于一些原因不能去试做。同一位清华MBA的朋友交谈时Ҏ_你现在所能做的,是{待Q千万不要放弃。但我不知道q要{待多久Q还能忍耐多久,我等待着Q忍耐着…?
从网l行业的兴vQ繁盛,疯狂Q跌入谷底,慢慢复苏Q三q的旉目睹q、思考过Q也亲n加入、感受过Q三q的l历好像q了几十q_在其中成长了许多Q也逼着L考一些问题。但不后悔,所学到和经历的一切,是传l行业数十年乃至上百q都不能遇到的。虽然现在已l蟩Zq个行业Q可某些行业内的行事准则仍在影响着自己的判断和行ؓ?
在对成功的追逐中Q我也在不断的寻找成功的定义Q成功是什么?或许多数Z认ؓ有名有钱便是成功Q但自己却认为:成功更是一U精状态,能够下决心去做别Z敢想的事Q在挑战自我时得到锻|体验q了Q也试过了,人生没有虚度。最后的所谓成功只是这个过E中的副产品Q真正的成功是你勇于越自己Q作你真正想做的事,zd你自己!
故事到这里似乎也应该l束了,不过多年的经历也让自己ȝ了一些经验,不吐不快?
首先惌一谈自己工作时的几Ҏ触:
1Q认真规划自q职业方向Q选择一个行业时Q是否真正对其有兴趣Q与你的理想是否合拍Q请慎重安排自己的职业道路,而选中了一条\Q就要认真做下去Q只有对一个行业有了深入地了解Q你才有资格得到你希望的薪水?
2Q求职时的简历以单明Cؓ好,招聘官其实最不喜Ƣ看到的是厚厚一摞,夹着大堆证书和像片的历了Q能单明了的用一至两늺表明你自己就可以了,q有Q简历可以适当夸张Q但最好实事求是,比如历中说自己对某项技术如何精?但你事实上却q不了解Q三a两语p令你露出马脚Q或者说自己曑֜某某公司做过某某职位-但或怽可能仅仅听说q该公司的名字。这L话一调查你就已经毁掉了自q信誉。刚出来时最好能够在W一个公司做上一D|_不仅有助于你对业务的了解Q还能在再次更换工作时给下一个公怸个诚信度?
3Q求职时不要q分看重薪水和职位以及办公环境,知识和经验的U篏以及人际关系的徏立最为重要,q于计较眼前的得׃使你失掉很多Z?
4Q做一名合格的pȝ集成行业的售前工E师Q前提便是要有良好的文档~写能力-无论你是否承认,q也是ؓ什么很多h不愿做售前的原因Q一个方案有两三NQ虽有许多模版供参考,但许多东西还是要你自己写q?BR>
5Q良好的沟通能力也是售前专家的基本素质之一Q面对行业各异的客户Q要能在可能短的时间内了解到客户需求,现状以及制定Z套适合该行业客LҎQ没有好的沟通能力是很难办到的?
6Q演讲能力也不可或缺Q作Z名售前,很多时候都要去向客户介l公司的产品Q解x案以及短期的产品培训Q不敢讲话,怯懦Q将是你的致命伤?
7Q团队协作能力,一个方案不是一个h所能独立完成的Q现在公司更讲你能否融入能这个团队,作ؓ一分子发挥能力。很喜欢q种团队_Q记得感触最q是在先前公司的一个方案投标,׃目来的匆忙Q,我和自己的上司、另一名售前和一位销售连着加了几天的班Q每ơ都是凌晨三四点才回去,而其中一天由于自p斚w的原因,她们已经本可以直接走的,但三个女孩一直陪我到凌晨四点才各自回家休息,她们担心我一个h加班太寂寞,而且如果有能够帮忙的地方大家可以一块做。同事与朋友间似乎没有了太多的界限?
8Q好的n体。在IT业,加班、出差早已是司空见惯的事情,如果没有一个健L体魄Q很快你将被淘?q决不是p耸听。D个例子,如果不是因ؓ先前习练散打Q那么几q下来的拼命学习Q我的n体早垮了?
9Q极Z不间断的学习能力Q如果想做好一个网l方案的话,不仅qx要对各种|络讑֤和最先进技术了解,q要能在很短的时间内熟悉和了解客L行业和业务背景,q在Ҏ中ؓ客户着惻I阐明|络的徏讑֒更新对客户业务方面的改善Q这需要极强和不间断的学习能力。能够在最短的旉内搜集到自己所需要的信息Qƈ很快的将q些信息分析Q吸Ӟ利用。每一个行业方案都相当于你要在最短的旉内了解ƈ分析该行业,每个Ҏ都是独一无二的,没有很好的学习意识和学习能力很难做到q些?
lg所qͼq就是ؓ什么好的售前工E师奇缺的原因,如果你能做到以上几点Q还担心薪水吗?呵呵Q谈了这么多Q还惌谈自己对于个人创业的一些感触,不知道诸位看官是否有兴趣坚持到最后。创业前请先冷静思考,是否做好了吃苦忍耐的准备Q是否拥有了较ؓ完善的h脉,知识储备是否CQ自w素质(w体Q心理)是否辑ֈ。而且Q一个好的想法ƈ不会成ؓ一个好的融资项目,更主要的是在市场Q团队管理以及其他方面,x谓的功夫在诗外?
善于跟各cd中的人士交往Q而不仅仅局限于业内朋友?-了解他们的h生经历,思维习惯Q爱好,学习他们处理问题的模式方法,探察C会各个角落的现象和问题Q这也是你以后发展的巨大本钱?
没有q些会遇到很多难以惌的困难,成功的概率也大大降低。记得一ơ在火R上,我甚臌一位曾去过29个国家的高工程师,一位“黑C会”的头目(当然Q他是不会说自己是黑C会的)Q茅台酒厂的一位销售代表相处甚Ƣ,从他们n上,也学C很多东西?
d帮助他hQ真心对待你w边的每一个hQ才能徏立v良好的h际关p?而不要奢求回报。自己曾在北京公交R上主动ؓ一位女士指路ƈ陪同她到了她要去的地方,路上交谈中才得知Ҏ国内某知名媒体的ȝ理,后来我们成了朋友Q她也帮了自׃忙?
q博的知识积累,如果选择了个人创业,意味着你即单独面对和考虑各种H如其来的繁杂问题,对于市场、胦务、管理、营销、税务等各方面都要去通盘{划Q而不仅仅是凭借你的技术就能搞定这些,知识的积累ƈ不是一朝一夕所能完成的Q^时多看些各方面的书籍Q对今后的用处会很大。自׃d一q买书的p在6500元左叻I但这些书帮助我少C许多弯\?
提高你的心理素质Q克服内心的q和性格~陷。如果存在着多疑Q敏感,天真Q犹豫不冻I胆怯,多虑{这些性格q的话Q那么,逐一克服它们Q在此之前,不要考虑创业Q这些弱点将成ؓȝ你走向成功的l脚矻I而且Q学会忍?很多时候,成功往往取决于你是否能够坚持下来Q且坚持到最后:能够冷静面对C会所带给你的各种偏见和歧?有时q些反而是促你成功的动力?
惛_了就大胆dQ既然认准了一个自己希望的方向Q这个方向一定要是你所感兴的-或者是你的理想--否则很难坚持下去Q,尽全力去闯。如果一件事情在实施之前仅有10%的把握,但只要去努力Q去坚持Q成功率会越来越高的Q但不去做的话,q?%的成功机会都不会有。而且如果W一ơ进入一个行业,指望一ơ成功犹如天方夜谭,p|在所隑օQ但在过E中会积累很多经验教训,接着做下一个项目的话,q些教训会帮助你走向成功的?
个h素质以及优秀的团队才是投资商所看重的,如果仅仅希望凭借自q一个发明就奢望投资商投资的话,那是痴h说梦。好的发明多的是Q但99%的专利发明都被束之高阁,有没有想qؓ什么?发明向品{化的q程中,存在着很多不可预测的环?产品市场前景如何Q生产环节和成本如何调控Q市场推q期有多长?何时能够实现盈利{等Q如果发明h没有克服q些困难的勇气和毅力Q以及良好的心理素质Q随旉可能败下阉|。何况在中国Q知识权从未真正受到过重视Q仅靠专利法是无法应付众多仿冒厂商的。而一个有着优良素质的领D(比如优秀的管理才能,敏锐的市场分析能力等Q和目标一致的团队的话Q一个项目失败,他们完全可以再次L更好的项目去做。根本不必担心公司的盈利能力?
又一D|事将要展开Q事隔多q_所发生的这些真实片断一片片从脑h处Q玎ͼ如今却要这些痛苦甚x些残L回忆诉诸键盘Q如果能l朋友们一些启C的话,我也心满意?
]]>
1. Struts
评hQ成熟的展现层MVC框架。容易上手。但也有严重的缺点:
* ActionForm和Domain Model的重叠ؓ病,以至于Struts现在都要
它是Controllerlg了。应该说ActionForm是一个试囑ְ视图中的表单元素?BR>Domain Modell定的不成功的尝试。错错在他不应该整体绑定,而应该像Tapestry
那样单个元素绑定到单个Field?BR>* ActionForm中的int字段会自动初始化?Q换成Integerq是一P真是faint to deat
h。你׃能用null么?q?1也比0要好得多啊?BR>* 虽然提供了validation机制Q但不符合实际需要。一旦validationp|Q想做点后处?BR>都不行。只好在Action里手动调用myValidateҎ?BR>* redirectҎҎ没考虑qcluster或者前端proxy的需要。默认实现在使用相对路径?BR>会自动填上本机的机器名和默认端口?BR>
可选替代:Tapestry
2. Hibernate
评hQ功能强大而灵zȝO/R mapping框架。不q因为都是local的,估计大型分布式系l?BR>q是要用EJB。另外在cluster下配JVMUcache时要心?BR>
3. Jakarta下的commons-*pdcd
评hQ最常用的是StringUtils.isBlank()Ҏ。commons-collection也提供了很多实用?BR>数据l构。不q最qcommons-collection出现?.1?.0版二q制不兼容的问题Q可能会
l其他类库带来一点版本兼Ҏ问题?BR>
4. Log4j1.2.8
评hQ多年了版本一点也没变。不知道该恭l他寿比南山q是骂他不思进取。现在虽?BR>整合Capache-loggingQ但什么时候出下一版还是没准。现在似乎流行通过commons-lo
gging去调用它?BR>
可选替代:commons-logging
5. Ant
评hQ有了AntQ谁q会用其他make工具。编译,打包Q部|Ԍ试一气呵成,而且内徏?BR>持CVS和JUnit?BR>
6. JUnit/Cactus
评hQ不写单元测试的E序员不是E序员,而不用JUnit写单元测试的E序员肯定不是J
avaE序员。JUnit影响所及,诞生了一pd其他语言的xxxUnit家族。Cactus是Junit在J2
EE下的服务器端扩展?BR>
7. POI/iText
评hQ如果不q要动态生Excel或者PDFQ关键时刻还是可以救你一命?BR>
8. JSTL
评hQ写JSP的压宝贝。而且直接集成到JSP2.0中?BR>
可选替代:Tapestry?BR>
9. commons-digester
评hQ解析XML配置文g的利器。很多h偏爱JDOM。其实比起DOM方式的空间节Ҏ来,SA
X方式的时间事件流效率更高。特别在单的配置文g下,实无必要ȝJDOMq种庞然大物
?BR>
10. HiveMind
评hQ除Spring之外的另一个IoC内核。可以将业务逻辑d分解Z个个单的service
。从而最大限度的提高代码的可复用性。不q在aspect斚w可能要弱于Spring?BR>因ؓq没releaseQ所以h气也不如Spring?BR>需要更多研I到底谁能更多减代码量?BR>
]]>
以下是答?BR>
W一Q谈谈final, finally, finalize的区别?BR>final—修饰符Q关键字Q如果一个类被声明ؓfinalQ意味着它不能再z出新的子c,不能作ؓ父类被ѝ因此一个类不能既被声明?abstract的,又被声明为final的。将变量或方法声明ؓfinalQ可以保证它们在使用中不被改变。被声明为final的变量必d声明时给定初|而在以后的引用中只能dQ不可修攏V被声明为final的方法也同样只能使用Q不能重?BR>finally—再异常处理时提?finally 块来执行M清除操作。如果抛Z个异常,那么相匹配的 catch 子句׃执行Q然后控制就会进?finally 块(如果有的话)?BR>finalize—方法名。Java 技术允怋?finalize() Ҏ在垃圾收集器对象从内存中清除出M前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对q个对象调用的。它是在 Object cM定义的,因此所有的c都l承了它。子c覆?finalize() Ҏ以整理系l资源或者执行其他清理工作。finalize() Ҏ是在垃圾攉器删除对象之前对q个对象调用的?/FONT>
匿名的内部类是没有名字的内部cR不能extends(l承) 其它c,但一个内部类可以作ؓ一个接口,由另一个内部类实现?/FONT>
注: 静态内部类QInner ClassQ意味着1创徏一个static内部cȝ对象Q不需要一个外部类对象Q?不能从一个static内部cȝ一个对象访问一个外部类对象
Hashtable cM?HashMapQ但是不允许 null 键和 null 倹{它也比 HashMap 慢,因ؓ它是同步的?/FONT>
W七Q什么时候用assert?BR>断言是一个包含布表辑ּ的语句,在执行这个语句时假定该表辑ּ?true。如果表辑ּ计算?falseQ那么系l会报告一?AssertionError。它用于调试目的Q?
assert(a > 0); // throws an AssertionError if a <= 0
断言可以有两UŞ式:
assert Expression1 ;
assert Expression1 : Expression2 ;
Expression1 应该L产生一个布倹{?
Expression2 可以是得Z个值的L表达式。这个值用于生成显C更多调试信息的 String 消息?BR>断言在默认情况下是禁用的。要在编译时启用断言Q需要?source 1.4 标记Q?nbsp;
javac -source 1.4 Test.java
要在q行时启用断aQ可使用 -enableassertions 或?-ea 标记?
要在q行旉择用断言Q可使用 -da 或?-disableassertions 标记?
要系l类中启用断aQ可使用 -esa 或?-dsa 标记。还可以在包的基上启用或者禁用断a?
可以在预计正常情况下不会到达的Q何位|上攄断言。断a可以用于验证传递给U有Ҏ的参数。不q,断言不应该用于验证传递给公有Ҏ的参敎ͼ因ؓ不管是否启用了断aQ公有方法都必须查其参数。不q,既可以在公有Ҏ中,也可以在非公有方法中利用断言试后置条g。另外,断言不应该以M方式改变E序的状态?
W八QGC是什? Z么要有GC? (基础)?BR>GC是垃圾收集器。Java E序员不用担心内存管理,因ؓ垃圾攉器会自动q行理。要h垃圾攉Q可以调用下面的Ҏ之一Q?
System.gc()
Runtime.getRuntime().gc()
两个对象Q一个是“xyx?一个是指向“xyx”的引用对象s?/FONT>
Math.round(11.5)q回QlongQ?2QMath.round(-11.5)q回QlongQ?11;
short s1 = 1; s1 = s1 + 1;有错Qs1是short型,s1+1是int?不能昑ּ转化为short型。可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确?/FONT>
(b)正在q行的线E因为其它原因而阻塞?BR>wait()是线E交互时Q如果线E对一个同步对象x 发出一个wait()调用Q该U程会暂停执行,被调对象q入{待状态,直到被唤醒或{待旉到?/FONT>
Goto—java中的保留字,现在没有在java中用?/FONT>
Ҏ的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父cM子类之间多态性的一U表玎ͼ重蝲Overloading是一个类中多态性的一U表现。如果在子类中定义某Ҏ与其父类有相同的名称和参敎ͼ我们说该Ҏ被重?(Overriding)。子cȝ对象使用q个ҎӞ调用子cM的定义,对它而言Q父cM的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参C数或有不同的参数cdQ则UCؓҎ的重?Overloading)。Overloaded的方法是可以改变q回值的cd?/FONT>
Set里的元素是不能重复的Q那么用iterator()Ҏ来区分重复与否。equals()是判M个Set是否相等?BR>equals()?=Ҏ军_引用值是否指向同一对象equals()在类中被覆盖Qؓ的是当两个分ȝ对象的内容和cd盔R的话Q返回真倹{?/FONT>
ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException
error 表示恢复不是不可能但很困隄情况下的一U严重问题。比如说内存溢出。不可能指望E序能处理这L情况?BR>exception 表示一U设计或实现问题。也是_它表C如果程序运行正常,从不会发生的情况?/FONT>
W十?/FONT>QList, Set, Map是否l承自Collection接口?
ListQSet?/FONT>
声明Ҏ的存在而不d现它的类被叫做抽象类Qabstract classQ,它用于要创徏一个体现某些基本行为的c,qؓ该类声明ҎQ但不能在该cM实现该类的情c不能创建abstract cȝ实例。然而可以创Z个变量,其类型是一个抽象类Qƈ让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract cȝ子类为它们父cM的所有抽象方法提供实玎ͼ否则它们也是抽象cMؓ。取而代之,在子cM实现该方法。知道其行ؓ的其它类可以在类中实现这些方法?BR>接口QinterfaceQ是抽象cȝ变体。在接口中,所有方法都是抽象的。多l承性可通过实现q样的接口而获得。接口中的所有方法都是抽象的Q没有一个有E序体。接口只可以定义static final成员变量。接口的实现与子cȝ|除了该实现类不能从接口定义中l承行ؓ。当cd现特D接口时Q它定义Q即程序体l予Q所有这U接口的Ҏ。然后,它可以在实现了该接口的类的Q何对象上调用接口的方法。由于有抽象c,它允怋用接口名作ؓ引用变量的类型。通常的动态联~将生效。引用可以{换到接口cd或从接口cd转换Qinstanceof q算W可以用来决定某对象的类是否实现了接口?/FONT>
W二十一Qabstract的method是否可同时是static,是否可同时是nativeQ是否可同时是synchronized?
都不?/FONT>
接口可以l承接口。抽象类可以实现(implements)接口Q抽象类是否可承实体类Q但前提是实体类必须有明的构造函数?/FONT>
启动一个线E是调用start()ҎQɾU程所代表的虚拟处理机处于可运行状态,q意味着它可以由JVM调度q执行。这q不意味着U程׃立即q行。run()Ҏ可以产生必须退出的标志来停止一个线E?/FONT>
构造器Constructor不能被承,因此不能重写OverridingQ但可以被重载Overloading?/FONT>
StringcLfinalcL不可以ѝ?/FONT>
不能Q一个对象的一个synchronizedҎ只能׃个线E访问?/FONT>
会执行,在return前执行?/FONT>
W二十八Q编E题: 用最有效率的Ҏ出2乘以8{於?
有C背景的程序员特别喜欢问这U问题?/FONT>
不对Q有相同的hash code?/FONT>
是g递。Java ~程语言只由g递参数。当一个对象实例作Z个参数被传递到Ҏ中时Q参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变Q但对象的引用是永远不会改变的?/FONT>
W三十一Qswtich是否能作用在byte上,是否能作用在long上,是否能作用在String?
switchQexpr1Q中Qexpr1是一个整数表辑ּ。因此传递给 switch ?case 语句的参数应该是 int?short?char 或?byte。long,string 都不能作用于swtich?/FONT>
W一UŞ? 定义一个类Q它的构造函Cؓprivate的,它有一个static的private的该cd量,在类初始化时实例话,通过一个public的getInstanceҎ获取对它的引?l而调用其中的Ҏ?BR>public class Singleton {
private Singleton(){}
//在自己内部定义自׃个实例,是不是很奇怪?
//注意q是private 只供内部调用
private static Singleton instance = new Singleton();
//q里提供了一个供外部讉K本class的静态方法,可以直接讉K
public static Singleton getInstance() {
return instance;
}
}
W二UŞ?
public class Singleton {
private static Singleton instance = null;
public static synchronized Singleton getInstance() {
//q个Ҏ比上面有所改进Q不用每ơ都q行生成对象Q只是第一ơ
//使用时生成实例,提高了效率!
if (instance==null)
instanceQnew Singleton();
return instance; }
}
其他形式:
定义一个类Q它的构造函Cؓprivate的,所有方法ؓstatic的?BR>一般认为第一UŞ式要更加安全?
W三十三 Hashtable和HashMap
Hashtablel承自Dictionaryc,而HashMap是Java1.2引进的Map interface的一个实?
多个U程讉KHashtableӞ不需要自׃ؓ它的Ҏ实现同步Q而HashMap
必Mؓ之提供外同步?
]]>
]]>
XML数据模式是一个文本可扩展语言Q相比之下,RDF有一个非常简单的模式Q即二元关系模式。当ӞM?/SPAN>RDF声明形式都可以用XML来表C,?/SPAN>XML是被讑֮为固定的、树状的文本Q在描述数据元上~Z一定的灉|性?/SPAN>RDF模式却是有够的灉|来描q这U主观的、分布式的、用不同形式来表辄元数据?/SPAN>
2Q?/SPAN>RDF?/SPAN>XML所使用的资源不?/SPAN>
XML中所谈到的节点,?/SPAN>XML文中的节点Q尤其是在文结构中特定之处。在RDF中,节点不在是节Ҏw了Q而是M其他可用URIS标识的资源,因此RDF是一U元数据语言?/SPAN>
3Q?/SPAN>XML Schema?/SPAN>RDF的语意不?/SPAN>
XML Schema最初的语意解释是限制在XML文中的Q它是隐含的?/SPAN>RDF原本是语意解释Q用于对那些不能够用树Şl构来很好徏模的知识q行建模。MQ?/SPAN>XML/XML?Schema是数据徏模语aQ?/SPAN>RDF是元数据建模语言Q当元数据需要编码成数据ӞXML语法非常的有用Q如果纯?/SPAN>XML语言来进行元数据建模那么在灵zL就会受到阻?/SPAN>
4. XML?/SPAN>XML?SchemaU束它的语法l构Q?/SPAN>RDF的语法虽然是XML格式Q但q没?/SPAN>XML?Schema来约束它的结构,?/SPAN>RDF?Schema是解释性的?Q即解释RDF?中的词汇的意义?/SPAN>
5. RDF可以看成一U?/SPAN>Web知识表示语言Q或者说一个逻辑语言Q有形式化的语法Q模型论语义Q证明论Q还有完全性,可靠性定理,MQ是个完备的形式化系l?/SPAN>??/SPAN>XML只是一U用于描q语法的语言Q即其他语言的语法都可以是基?/SPAN>XML
6Q?/SPAN>RDF文g可以被合qӞ聚集Q?/SPAN>XML文g的合q和聚集Q有命名I间的限?/SPAN>.
7. RDF的数据模型是?无序的边带有标识的有向图Q?/SPAN>XML的数据模型是有序的节点带有标识的树型l构?/SPAN>.8. RDF相对?/SPAN>XML来说语法自由,h良好的互操作性,?/SPAN>XML?/SPAN>Schema的约束?/SPAN>
XML是一U数据交换格?/SPAN>
RDF是一U知识表达语a?/SPAN>RDF有多U语法,?/SPAN>RDF图,N3(三元i?/SPAN>),?RDF/XML{(XML只是RDF的一U可选书写方式)?/SPAN>
RSS是一U描q站点信息的格式。有多种怺竞争的版本,他们的主要差别是支持的术语表不同Q但大同异Q以及书写格式不同?/SPAN>W
?/SPAN>RSS?/SPAN>RDF的子集,是强?/SPAN>RDF可用于描q很多知识,?/SPAN>RSS是其中一U;
?/SPAN>RDF?/SPAN>RSS的子集,是强?/SPAN>RSS可以用多U格式来写,?/SPAN>RDF只是其中一个可选的格式?/SPAN>
由此?/SPAN>可以q么?/SPAN>:RDF是一U知识表达语aQ也可以描述站点信息格式?/SPAN>RSS是一U描q站点信息的格式Q也可以?/SPAN>RDF来描q。另外,RDF有这么两U叫法:Resource Description Framework ?Resource Description Format
RSS也有?/SPAN>U叫法:Really Simple Syndication ?RDF Site Summary ?/SPAN>Rich Site SummaryQ对?/SPAN>RDF?/SPAN>RSS的不同叫法是描述不同侧重?/SPAN>的說法?/SPAN>
今天肯定有hq记得IE 4刚刚推出来的时候有一个有的功能Q那是新闻频道。这个新闻频道的功能与Netscape推出的新闻频道是很相似的Q当时Netscapeq是市场上领先的览器)。ؓ此Netscape 定义了一套描q新闻频道的语言Q这是RSSQ只不过Netscape自当时v每况愈下Q所以最l也没有发布一个正式的RSS规范Q只发布了一?.9版本Q。而微软也在当时推Z支持自己IE的CDFQChannel Definition FormatQ数据规|与RSS非常接近。微软试囄新闻频道的功能把“推?Push)技术变成一个应用主,q与Netscape抗衡。不q出乎预的是,“推”技术自始至l没有找到合适的商业模型Q而且伴随着其他各类|络Ҏ的出现Q也日益无法昄自n的优ѝ新闻频道在览器中的地位最l日暮西山,最后也在IE的后l版本中消失了?/FONT>
新闻频道的确q入了低P但是RSSq没有被业界人士所抛弃。过Mq_Blog从一个专业群体开始,逐步成ؓ了网l上最热门的新话题。而RSS成ؓ了描qBlog主题和更C息的最基本Ҏ。于是RSSq项技术被著名Blogger/Geek戴夫·温那QDave WinnerQ的公司UserLand所接手Ql开发新的版本,以适应新的|络应用需要。新的网l应用就是BlogQ因为戴夫h那的努力QRSS升C0.91版,然后辑ֈ?.92版,随后在各UBlog工具中得C应用Qƈ被众多的专业新闻站点所支持。在q泛的应用过E中Q众多的专业人士认识到需要组lv来,把RSS发展成ؓ一个通用的规范,q进一步标准化。一个联合小l根据W3CC代的语义|技术RDF对RSSq行了重新定义,发布了RSS 1.0Qƈ把RSS定义为“RDF Site Summary”。这工作ƈ没有与戴夫h那进行有效的沟通,而戴夫则坚持在自p想的方向上进一步开发RSS的后l版本,也ƈ不承认RSS 1.0的有效性。RSS由此开始分化Ş成了RSS 0.9x/2.0和RSS 1.0两个阵营Q也由此引v了在专业人群中的q泛争论?/FONT>
因ؓ争论的存在,一直到今天QRSS 1.0q没有成为标准化l织的真正标准。而戴夫h那却?002q?月独自把RSS升C2.0版本Q其中的定义完全是全新的模式Qƈ没有MRSS 1.0的媄子。这引发了网l上q一步争议,I竟让一个越来越普及的数据格式成Z个开攄标准Q还是被一家公司所定义和控Ӟ成ؓ了争议的焦点。戴夫h那ƈ没有p解,他的观点是RSSq需要进一步发展,需要专业h士更明确的定义,不过恐怕这U轻描E写不能消除h们对RSS“被一家商业公司独占”的担心?/FONT>
前面的铺垫对用户来说也许没有什么太大的意义Q可能更多h兛_如何在自qBlog增加RSS输出Q这样可以让很多新闻聚合工具Q例如CNBlog刚刚推荐?/FONT>NewzCrawlerQ很Ҏ扑ֈ你ƈ自动获得你在Blog中的更新内容?/FONT>
所以我们会在后面的pd文章中逐步增加对RSS工具的介l,以及如何在你的Blog中添加RSS输出格式和相关的标志链接。等不及的用P可以先到我的个h站点上的一个旉接地方尝试v来了Q我提供了一?/FONT>单的RSS生成工具和相关的介绍Q对Blogger.com工具最佻I其他工具q没有做试Q?/FONT>
RSS 可以扩展到很多应用领域,或可能成ZU“提C性”信息的事实标准格式?/P>
很多更新频繁?A >微内?/FONT>都可以透过RSS 被用者所订阅Q这样可以达到最低成本的情况下帮助用者获得有价值的信息?/P>
下面是一些有的RSS数据源: 新闻站点捕获的信息{化ؓRSSQ?/P>
很多提供API的网站都愿意把自q信息l第三方做进一步的处理和提供服务。例如Amazon.com 和GoogleQ以及eBay都有q样的服务。所以很多爱好者便把这些服务变成了RSS源。例如,Amazon RSS Feed Builder?可以帮助你选择自己喜欢的图书类别{化ؓRSSQ获得不断更C息。此外,如果你申请了GoogleAlert的̎Pq可以把特定关键词的搜烦变成RSSQ不但自己可以n用,q可以分享给别hQ例如: - Amazon : "Technical" Books ?(q个标志和XML一P有些人喜?
- GoogleAlert: "Learning Object"
- GoogleAlert: "教育 Blog"
- GoogleAlert: "互联教育体系"
- "electronic portfolio" ?QcogdogblogQ?/P>
你愿意把自己的GoogleAlert RSS分n出来吗?Q只要在q些列表后面自己~辑填写可以了?BR>
最q有一U把M东西都{换成RSS的趋势,不经意地又发C几个RSS资源Q?BR>1Q将wired的搜索内容变成rss
?/FONT>sharpreader中输?/FONT>搜烦地址Q即可完成在wired中搜索关键词的订阅。如果要搜烦其他内容Q将搜烦地址中“weblog”换作你x询的关键词即可?BR>
2Q将google news的搜索内容变成rss
?/FONT>sharpreader中输?/FONT>搜烦地址Q?/FONT>卛_完成?/FONT>google news中搜索关键词的订阅。如果要搜烦其他内容Q将上述地址中“blog”换作你x询的关键词即可?BR>
3Q将求职信息变成rss
?/FONT>rssjobs上注册后Q可以搜索你需要的求职信息Q{换成rss后,?/FONT>sharpreader中进行订阅。这个是非常实用的功能,再无d波于多个求职站点之间了。只可惜国内q没有此U应用?/FONT>?
RSS阅读工具列表
String prefix=""; //整数部分转化的结?BR> String suffix=""; //数部分转化的结?BR> //处理数点后面的?BR> if(rail.equals("00")){ //如果数部分?
suffix="?;
} else{
suffix=digit[rail.charAt(0)-'0']+"?+digit[rail.charAt(1)-'0']+"?; //否则把角分{化出?BR> }
//处理数点前面的?BR> char[] chDig=head.toCharArray(); //把整数部分{化成字符数组
char zero='0'; //标志'0'表示出现q?
byte zeroSerNum = 0; //q箋出现0的次?BR> for(int i=0;i<chDig.length;i++){ //循环处理每个数字
int idx=(chDig.length-i-1)%4; //取段内位|?BR> int vidx=(chDig.length-i-1)/4; //取段位置
if(chDig[i]=='0'){ //如果当前字符?
zeroSerNum++; //q箋0ơ数递增
if(zero == '0'){ //标志
zero=digit[0];
} else if(idx==0 && vidx >0 &&zeroSerNum < 4){
prefix += vunit[vidx-1];
zero='0';
}
continue;
}
zeroSerNum = 0; //q箋0ơ数清零
if(zero != '0') { //如果标志不ؓ0,则加?例如?亿什么的
prefix+=zero;
zero='0';
}
prefix+=digit[chDig[i]-'0']; //转化该数字表C?BR> if(idx > 0) prefix += hunit[idx-1];
if(idx==0 && vidx>0){
prefix+=vunit[vidx-1]; //D늻束位|应该加上段名如??BR> }
}
if(prefix.length() > 0) prefix += '?; //如果整数部分存在,则有圆的字样
return prefix+suffix; //q回正确表示
}