随笔:15 文章:2 评论:14 引用:0
BlogJava 首页 发新随笔
发新文章 联系 聚合管理

2008年6月25日

很久以前像是就有了,Bill Gates自己恶搞。现在在他真的裸捐,辞职了。
 
没人能猜得到在微软工作的最后一天比尔·盖茨会做些什么。微软高管为他召开的庆祝会现在仍绝对保密,全世界的“粉丝”只能通过一段恶搞视频来猜测偶像心中的感受,并以此欢送他。这段视频的名字叫做《比尔·盖茨:在微软的最后一天》,目前在视频网站Youtube上的总观看次数接近300万次。

这段视频最早出现在今年年初CES消费类电子产品展上,当时盖茨作了自己在IT业界的最后一次演讲,并播放了自拍的一段搞笑视频,模拟自己在微软的最后一天。视频充分体现了盖茨天马行空的想象力以及轻松的自嘲,当然还有他在经济、文化和政界的影响力。

参演视频的捧场嘉宾阵容很豪华,除了微软CEO史蒂夫·鲍尔默等微软高管外,参与演出的甚至还包括U2乐队的主唱波诺、希拉里和奥巴马、美国前副总统戈尔、著名导演斯皮尔·伯格、好莱坞巨星乔治·克鲁尼等。

“比尔,我们的乐队已经没有空位了。”U2乐队的主唱波诺在听完盖茨的吉他弹唱之后说。斯皮尔·伯格的回答则是“表演天赋用钱也买不到啊”,因为他刚看完盖茨搞笑的试镜。“我认为政治真的不适合你。”希拉里拒绝了比尔·盖茨想要成为其竞选伙伴的要求。而奥巴马则干脆回答说:“你是比尔?哪个比尔?比尔·克林顿?”最后,盖茨只能抱着收拾好的箱子坐车回家,伤心地结束了自己在微软的最后一天。

当然,盖茨并不会真的面临“失业”的危险,这样的视频也只是调侃而已。按照早已定下的安排,在本周五退休之后,盖茨的主要工作将放在慈善事业上,虽然也有分析师认为他三年后将复出,但目前业界已经是一片纪念的氛围。大致计算一下,在Youtube网站上对此视频的观看次数有近300万次,有网友留言说“它很棒,感觉非常盖茨”。




这段视频的名字叫做《比尔·盖茨:在微软的最后一天》,目前在视频网站Youtube上的总观看次数接近300万次。

posted @ 2008-06-25 19:04 小Q 阅读(300) | 评论 (0)编辑 收藏

2008年6月24日

 如果你正准备投身到IT这行,或者你还是个IT新手,下面列出的很多"小秘密"也许会让你惊讶不已,因为我们通常不会大声的讨论它们。  如果你是个IT老手,这些所说的估计你大部分都遇到过,而且很有可能还有自己的心得 —当然,非常欢迎你花几秒钟的时间把你的所知道的其它小秘密添加到本文的讨论中。  大部分的这些秘密是针对网管,IT经理,以及桌面支持人员的。  它们不是针对开发人员和编程人员 —这些人有他们自己的一套小秘密 — 但我说的这些其实也可以放到他们身上。

10.) 做IT的相对于其它行业薪水较高,但正是因为待遇好,公司就会认为可以把你当奴隶般的使用

 尽管不像2001-2002年间的点com风暴和IT大潮里那么夸张,现在的做IT的人仍然要比其它很多行业的人挣的多(至少那些只需要大专或本科学历的职位里是这样的)。  各种证据显示在未来的十年里社会对IT人才仍然会保持大量的需求,因为科技在企业和社会里扮演的角色越来越重要。  然而,正因为IT职业人员是如此的昂贵,很多公司对待IT员工就像是对待包身工。  如果因为某些人会工作的很晚导致你晚上9点你还要必须回答技术支持问题,你会听到老板说,”这就是你的工作。“ 如果你在周末还需要加班6小时去部署一个软件更新包,以确保工作时间不宕机,你会得到,”因为既然你是带薪休假,就不会再有补休时间。  这就是我们花大价钱雇你的原因!“

9.) 用户出的荒唐可笑的错误的责任在你身上

 有些用户在工作时受到挫折后会愤怒的向你咆哮。  他们会大叫,“怎么又出问题了?”或者“这个电脑又不工作了!”或者(我个人常遇到),“你对我的计算机究竟做了什么?”可实际原因是他们不小心把IE浏览器的图标从桌面上删除了,或者脚不小心把鼠标的插头从机器上踢掉了,或者把咖啡撒在了键盘上。

8.) 每天你都会从替罪羊变成英雄,而后又变成替罪羊,而后又变成英雄的反复好几次

 当你奇迹般的修复了一个问题,而这个问题已经让好几个员工被迫停工10分钟了 — 他们不知道修复这个问题是如此的简单 — 此时你就成了英雄,成了的大家最喜爱的员工。  但是一个小时后,由于网络堵塞不能打印时,他们会轻易的忘掉你的英雄事迹 — 此时你将会成为大家的头号敌人。  但是当这一天快要结束时,如果你告诉用户一些使用微软Outlook的小窍门,那么你的英雄的身份又回来了。

7.) 证书并不总能使人成为一个更好的技术专家,但却能帮助人找到一份更好的工作或者更高的薪酬

 猎头公司和人资部门喜欢IT证书。  通过证书他们很容易能给空缺的职位找到相匹配的候选人。  同样,HR也可以简单的通过证书来排除一些候选人。  你也许听到了很多IT老手诉苦,抱怨那些凭证证书进入公司却没有工作能力的人。  他们说的基本上是对的。  这种现象很多地方都有。  但实际上证书能够打开你职业生涯的大门。  它体现了你对自己的人生有计划,有抱负,有求知受教育和扩展自己的技能的愿望。  如果你是一个有经验的IT从业人员,而且有各种证书来证明你的阅历,那么你会发现自己职场非常的受欢迎。  技术证书只是用来证明你基本技能很简单的方式,它可以给你做职业上的宣传。  然而,大部分的证书并不能用来证明你可以如此的胜任你的工作。

6.) 你的非技术专业的同事会把你当作他们的家庭电脑的私人技术支持顾问

 你的同事(也包括你的朋友,家人和邻居)会把你当作他们的个人技术顾问,让你解决他们的家用电脑和家庭网络上的问题。  他们会给你发邮件,打电话,或者路过你的办公室时侯问你如何对付他们的家用电脑里的病毒,如何搞定上次停电后就不工作了的无线路由器,以及如何把照片和视频传到网上让远在衣阿华州的爷爷能看到。  有些人甚至会提出把电脑搬到你的办公室让你来修。  客气的人会提出给你报酬,但很多人只是希望你给他们提供义务性的帮助。  帮助这些家伙们可能会有很多好处,但你必须要小心什么事情能帮,什么事情应该拒绝。 看一看TechRepublic的 “Ten ways to decline a request for free tech support.”会对你有些帮助。

5.) 当事情干的漂亮时,供应商和顾问们会把所有的赞扬都拿走,而当事情搞砸时,你成了罪人

 跟IT顾问打交道是我们工作中非常重要的一部分,也是一项非常有挑战性的事情。  顾问会提供合适的专家支持帮助你部署很专业的系统,当所有的事情正确运行时,你和顾问们的关系就是良好的合作伙伴。  但你要小心了。  当事情出了问题时,有些顾问会试图把责任都推给你,责备你,说他们的方案在其他案例里都工作的很好,一定是你本地的IT架构有问题。  相反,当项目非常成功时,就会站出来一些顾问身份的人把所有的荣誉都拿走,却无视你为定制和实现这个方案所做的实实在在的工作。

4.) 你需要花上大量的时间去维护老的技术架构,而事实上做个新的会更省事

 在IT这个行当中,一提到“我们将会采用最新最前沿的技术”,无疑会成为对大家最有吸引力的事情之一。  然而,在大部分的IT工作中通常却不是这样。  实际情况是IT工作者典型的任务是花更多的时间去维护,料理,照看已经建成的系统,而不是实现新系统。  甚至那些一直研究最前沿最强大的技术方案的IT顾问们也仍然倾向于主要使用已建成的已证实技术解决方案。

3.) IT老员工经常会成为使用新技术的反对者

 有很多公司实际上应该采用更多更前沿的技术。  如果升级或者替换掉他们的软件或基础架构可以省下大量的时间和金钱,而且提高生产率和利润。  然而,通常却是这样的一种情况,迁移到新的技术上的阻力不是预算上的限制,也不是管理层的反对,而是IT部门的资深老员工。   一旦系统建立起来,能跑能用,他们就拒绝去改变它。  这可以认为是真确的,因为他们的任务就是让那些基础架构稳定运行,但这也同样成了一种借口,从而拒绝接受新的东西,拒绝在新的技术领域里扩展自己的能力。  他们变的懒惰,自满,自鸣得意。

2.) 一些IT专家采用某种技术的目的是为了巩固自己的势力,而不是出于对企业有帮助。

 另外一种很隐蔽的但是值得批评一下的事情是,有些IT工程师选择和使用的技术依赖于技术人员对这种技术的掌握情况,而不是这种技术是否是真的最适合这个业务。  例如,IT工程师会选择某个需要特殊技能才能维护的技术路线,而不是选择一种很现成的解决方案。  或者,由于IT经理有过Linux/UNIX的背景经历,所以就会采用Linux-based的方案,反对基于Window的方案,即使采用window平台的方案会更有利于项目。(或者,举个例子,一个Windows管理员很可能会把那些Linux-based的方案置之一边。)  他们会有很多的借口和理由为他们的行为做解释,但很多都是不坦白的。

1.)IT工程师不停的用一些专业术语来忽悠那些不懂技术的业务经理,以此掩盖他们把事情搞才一团糟的事实

所有的IT人员 — 即使是最棒的员工 — 偶尔的也会把事情办遭.  这种事情一般会发生在很紧急的关头,而且要面对的系统是被搞的无比复杂而且很难入手。  然而,并不是所有的IT职员都擅长承认他们犯下的错误。  大部分人都会利用业务经理(甚至是高层技术经理们)不是很清楚具体技术细节的事实,当系统出问题或宕机时拿一些专业术语去忽悠他们(掩盖事实的真相)。  例如,向业务经理介绍为什么财务系统会宕机了3小时,技术人员会说,“我们在系统使用的SQL Server服务器上遇到了蓝屏。  该死的微软!”技术人员没有说出的真实情况是由于没有先在工作站服务器上测试就进行驱动更新导致了这次蓝屏。

 你觉得还有什么其它的关于在IT业工作的小秘密?欢迎加入讨论。

posted @ 2008-06-24 22:26 小Q 阅读(252) | 评论 (0)编辑 收藏

2008年6月22日

     摘要: 下午去看的,《纳尼亚传奇2》,因为之前看过《纳尼亚传奇1》,所以很想看“2”,本来打算看《Kong Fu padan》的,但是偶MM,还没看,说好一起看的,所以就暂时忍着的,心痒啊。  阅读全文
posted @ 2008-06-22 19:00 小Q 阅读(427) | 评论 (3)编辑 收藏

2008年3月23日

打个比方,就像大话西游里的一句台词:“猜中了开始,没有猜中结局”(大体就是这个意思,原话就记不清了),有始有终似乎不是我的性格,但是有了开始,一定会有结局的,只是不是原本想好的结局。换句话说,就是有计划,但变化更牛,由来一句:“计划赶不上变化”。

最近心血来潮,想搞个“网络标签”的玩意,有模有样的列了个表,时间,计划XXXXX。呵呵,到头来做,却进程缓慢。一般都是下班,面坐电脑,发呆时做。但是,先有个念头,看看新闻吧,磨叽了好久,这下该做做了吧。又累哦。做了小会就睡了。

反省,反省下了。人不能懒到这个地步的。怎么说也是有为青年啊。

posted @ 2008-03-23 10:36 小Q 阅读(854) | 评论 (1)编辑 收藏

2008年3月18日

表姐qq上发现的,很牛很强大
 

1.we two who and who?
咱俩谁跟谁阿   
2.how are you ? how old are you?
怎么是你,怎么老是你?   
3.you have seed I will give you some color to see see, brothers ! together up !  
你有种,我要给你点颜色瞧瞧,兄弟们,一起上!
4.as far as you go to die
有多远,死多远!!!!
5.hello everybody!if you have something to say,then say!if you have nothing to say,go home!!
有事起奏,无事退朝
6.you me you me
彼此彼此   
7.You Give Me Stop!!
你给我站住!
8.know is know noknow is noknow
知之为知之,不知为不知…
9.WATCH SISTER
表妹
10.dragon born dragon,chicken born chicken,mouse’’son can make hole!!龙生龙,凤生凤,老鼠的儿子会打洞!
11..I give you face you don’t wanna face,you lose you face ,I turn my face
给你脸你不要脸,你丢脸,我翻脸
12.one car comeone car go ,two car pengpeng,people die
车祸现场描述
13.heart flower angry open
心花怒放
14.go past no mistake past
走过路过,不要错过
15.小明:I am sorry!
  老外:I am sorry too!
  小明:I am sorry three!
  老外:What are you sorry for?
  小明:I am sorry five!
16.If you want money,I have no;if you want life,I haveone!
要钱没有,要命一条
17.I call Li old big. toyear 25.
我叫李老大,今年25。
18.you have two down son
你有两下子。
19.好好学习,天天向上:
good good study,day day up!

posted @ 2008-03-18 21:58 小Q 阅读(254) | 评论 (1)编辑 收藏

2008年3月1日

市场研究公司Gartner副总裁Carl Claunch提出了值得关注的将对数据中心产生重大影响的十项技术。这些技术
  目前还不太成熟。但是,这些技术在未来18至36个月里将成熟起来并且将广泛应用。这十种影响数据中心的技术是:
  1.统一通讯
  到2010年,80%的统一通讯组件将作为更广泛的产品组合的一部分购买。统一通讯功能涉及到五个核心市场,每一个市场都在以自己的方式向融合的方向发展。这五个关键市场是:语音邮件、PBX(将向IP PBX发展)、电子邮件与日历、会议与协作、即时消息和在线状态显示。统一通讯还吸收了附带的市场的一些功能。
  2.Web平台
  把各种专用的协议转移到IP是主要的推动因素之一,同时,以前的模拟信号(如大楼内部安全摄像机的信号传输或者传感器通讯)正在转向数字编码。
  3.IT操作流程自动化
  实现IT管理流程自动化仍是IT官员降低IT操作成本和复杂性的一个关键目标。自动化应用将继续增长的势头。随着企业的成熟,自动化应用将提供更多的流程知识以满足这些挑战。
  4.服务器结构
  计算结构(computing fabric)是服务器设计的一个发展。在本十年末寻求一些厂商提供的基于计算结构的服务器。未来的基于计算结构的服务器将把内存、处理器和IO卡作为组件对待,按照特殊的需求组合和安排。这样做的结果是通过减少浪费的资源来提高使用率。
  5.元数据管理
  数据服务提供对数据的格式化、标准化、发布和访问。元数据管理涉及到实现元数据优化、提取和语义一致等功能的参考模型以支持再使用、一致性、完整性和共享性。大多数机构将通过分阶段的方式实现元数据管理,选择逐步建立的方法。例如,以客户为中心的企业可能使用使用客户数据整合解决方案解决客户管理问题或者执行具体的管理规定。
  6.配置管理数据库
  在广泛的影响力的推动下,配置管理数据库(CMDBs)将继续在企业IT运营基础设施中扮演重要的角色。目前,Dependency Mapping工具给长期的发现技术带来了新的技术方法。人们将继续开发这些工具以帮助IT运营的建立、维护、可视化和监视逻辑应用程序或者服务拓扑管理和跨系统的依赖性。
  7.Mashups和混合应用程序
  Mashups通过使用公共的API(应用程序编程接口)传输的信息把多个来源的内容混合在一起。例如,一个应用程序把一家房地产网站的信息与另一个网站的地图界面混合在一起以显示出售楼盘的位置。Mashing是一种展示层方法,把在消费者方面(浏览器)和来源方面(网络传输协议)方面利用Web技术的应用程序集成和混合起来。最终用户可以根据跟人需求或者内容创建机会性的应用程序。
  8.超越整合的虚拟化
  虚拟化技术能够改善IT资源的再利用和提高灵活性以适应不断变化的需求和工作量。同自动化技术以及服务级的、基于政策的积极管理一起使用,资源的效率将得到极大的改善,灵活性将成为根据需要自动调整的功能,服务将能够从整体上进行管理以保证高水平的弹性。
  9.社交软件
  除了公共网络之外,Web 2.0公司现在正在把重点放在使用企业中的有针对性的应用程序方面。一般来说,社交网络技术现在是成熟的,应用范围很广。社交软件很容易使用和开发。这种软件将对商务活动产生积极的影响。
  10.绿色IT
  IT管理员正在全力以赴提供电源和冷却方法以处理服务器机架消耗的数千瓦电源。对于电源使用和企业对环境的影响有许多管理规定。这可以解释为技术提供商将受到市场和客户需求的混合压力。技术厂商的反应是把电源和冷却管理放在更优先位置。

posted @ 2008-03-01 00:22 小Q 阅读(293) | 评论 (1)编辑 收藏

2008年2月29日

HTML中的转义字符

  HTML中<, >,&等有特殊含义,(前两个字符用于链接签,&用于转义),不能直接使用。使用这三个字符时,应使用它们的转义序列,如下所示: 
&amp; 或 &#38;      &      和
&lt; 或 &#60;             <      小于号 
&gt; 或 &#62;            >      大于号
&quot;                         "       双引号
&nbsp;                                空格 
&copy;                        ©      版权符
&reg                           ®      注册符

  前者为字符转义序列,后者为数字转义序列。数字转为字符对应的ASCII码值。例如 & lt; font &gt;显示为,<font>,若直接写为则被认为是一个链接签。
  需要说明的是:
  a. 转义序列各字符间不能有空格; 
  b. 转义序列必须以";"结束;
  c. 单独的&不被认为是转义开始; 
    d.区分大小写。
  另一个需要转义的字符是引号,它的转义序列为"" "或"""
  HTML使用的字符集是ISO &859 Larin-1字符集,该字符集中有许多标准键盘上无法输入的字符。对这些特殊字符只能使用转义序列。

XML转义字符

  不合法的XML字符必须被替换为相应的实体。
  如果在XML文档中使用类似"<" 的字符, 那么解析器将会出现错误,因为解析器会认为这是一个新元素的开始。所以不应该像下面那样书写代码:
<message>if salary < 1000 then</message> 
  为了避免出现这种情况,必须将字符"<" 转换成实体,像下面这样: 
<message>if salary &lt; 1000 then</message> 
  下面是五个在XML文档中预定义好的实体:
&lt;             <        小于号 
&gt;            >        大于号
&amp;       &        和 
&apos;       '         单引号
&quot;        "         双引号
  实体必须以符号"&"开头,以符号";"结尾。 
  注意: 只有"<" 字符和"&"字符对于XML来说是严格禁止使用的。剩下的都是合法的,为了减少出错,使用实体是一个好习惯。

posted @ 2008-02-29 00:53 小Q 阅读(412) | 评论 (0)编辑 收藏

2008年2月28日

 

Adobe Integrated Runtime (AIR) 是一个跨操作系统的运行时,利用现有的Web开发技术(Flash,Flex,HTML,JavaScript,Ajax)来构建富Internet应用程序并部署为桌面应用程序。adobe air

      AIR 支持现有的Web技术如Flash,Flex,HTML,JavaScript和AJAX,可以用你最熟练的技术来开发您所见过的最具用户体验的RIA程序,例如,一个AIR程序可以使用如下一种或多种组合技术构建:

  • Flash / Flex / ActionScript 
  • HTML / JavaScript / CSS / Ajax 
  • PDF 可嵌入任何应用程序中

作为结果,AIR 应用程序可以是:

  • 基于Flash 或 Flex:应用程序根内容(理解为容器)为Flash/Flex (SWF) 
  • 基于Flash 或 Flex 的HTML 或 PDF。应用程序的根内容为基于Flash/Flex (SWF) 的HTML
  • 基于HTML,应用程序根内容为HTML, JS, CSS 
  • 基于HTML的Flash/Flex或PDF,应用程序根内容为基于HTML 的Flash/Flex (SWF) 或 PDF

      用户使用AIR 应用程序的方式和传统桌面程序是一样的,当运行时环境安装好后,AIR 程序就可以其他桌面程序一样运行了。

用户使用AIR 应用程序的方式和传统桌面程序是一样

posted @ 2008-02-28 09:00 小Q 阅读(370) | 评论 (0)编辑 收藏

2008年2月23日

通信运营商-五大天王

喧闹经年,中国第三次电信重组看来真的是要定下来了。“上周五(2月15日)重组方案确实得到通过了。”2月20日,一位长期跟踪电信重组事件的业内知情者对《华夏时报》记者证实了上述传言,不过该人士同时表示,“相关人事问题还没定下来”。根据知情人士的说法,现有的6家电信运营商将合并为3家,将形成新的中国移动、中国联通(网通)、中国电信三大全国性全业务运营商。业内分析者倾向认为,这其中中国联通与网通的整合将是最大的难点。

科技时代_第三次电信重组大局初定(图)(2)
现有6家运营商将变身3家

科技时代_第三次电信重组大局初定(图)(2)
新联通整合难度最大

只待人事安排
  2月21日,《华夏时报》记者得到知情者透露的最新消息称,当天国务院相关部门本来要开会讨论电信业高管的人事问题,不过最终没有成行,而且由于人事变动的复杂性可能这几天也还定不下来。
  在最近盛传的电信重组中,目前得到确认的消息是,重组方案已经在国务院常务会议上得到通过,并有望在两会召开前后宣布。而此次被通过的方案业内大部分观点认为是:中国移动合并铁通,合并后由中国移动主导;中国联通合并中国网通,合并后由联通主导;中国电信收购联通CDMA网络,卫通公司卫星业务并入一家国有航天产业集团,地面业务整合至中国电信,人员随着业务走。重组合并后形成中国移动、中国联通(网通)、中国电信三大全国性全业务运营商。
  在人事安排上之前有消息称:信息产业部副部长奚国华到中国移动当一把手;中国网通总经理张春江去中国电信;中国电信总经理王晓初去信产部;中国移动通信公司总经理王建宙因今年到60岁而退休。
  《华夏时报》记者随后电话采访了中国移动、中国联通、中国网通等几家主要电信运营商,这些相关部门的负责人回答相若,普遍表示还没有得到重组的相关消息。
  “这次看来不会是空穴来风。”电信业内资深人士项立刚对《华夏时报》记者讲述了他对此次电信重组传闻的感想。
  2月18日,瑞士信贷发布报告称,其刚刚协助TD-SCDMA联盟在欧洲举办了TD路演,在此次会上TD联盟秘书长杨骅证实,国务院正在召开常务会议讨论电信重组事宜。
  而从中国电信内部透露出的消息称,中国电信集团移动办近期动作频繁,开始正式大力推行其“C计划”,内部已经着手对中国联通CDMA网络的运作进行人员招聘培训等相关工作,同时中国电信和联通内部最近有过很多次沟通,大致的方向已经确定。
新联通整合难度最大
  针对日渐明晰的各大电信运营商重组组合单元之整合前景,业内述评不一。
  “中国联通与中国网通的整合难度最大!”项立刚分析认为,中国移动合并铁通,可以使铁通保持独立运作,只要在资金上给予支持,因此整合难度不大,中国电信合并卫通中,由于两者实力悬殊,在电信的主导下,难度也不会太大。
  他具体分析认为,中国联通与中国网通合并,是要实现全业务,两家现在一个主要是移动运营,一个主要是固网运营,合并后要完全独立运营的可能性很小。中国联通和中国网通合并,需要面临一次重大的人事调整和文化的融合,尤其是北方地区,中国网通各省运营商实力都是非常强大,两家合并,要产生出领导人,要配合好工作,要在收入、待遇上达到一致,这是一项巨大的工程,没有个两三年都未必能理顺,这些情况一定会对中国联通的发展产生负面效应。
  北京邮电大学教授曾剑秋也认为,联通和网通将激烈地争夺新联通总公司和北方十省各级分公司的主导权,完全融合至少需要4-5年时间。
  事实上在此之前的电信重组传闻版本中,中国联通一直是重组的焦点与难点。
  众所周知,中国联通目前拥有两张网络,G(GSM)网与C(CDMA)网,当初让联通运营这两张网是为了补充联通的实力,没想到却让联通处于尴尬状态,最直观的表现是其G网与C网相争,即业内称之为“双网互搏”。
  而此前的数次重组传闻,联通C网出售给中国电信的价格问题以及其未来的发展也是重组的不争难点,而这次重组方案被顺利认可,普遍认为是联通解决了C网价格以及自己未来重组中的地位问题。按目前所称的方案,中国联通G网与中国网通合并,由联通主导,成立“新联通”,中国网通的称号在奥运后将会“消失”。
  “两个弱者合并起来有什么意思!还不知道将来会出现什么变化,当年吉通、小网通,以及北方电信合并起来的大网通,还不是一样没做好。”有网通内部人员接受《华夏时报》记者采访时同样表达了自己对这种重组方案的忧虑。
观察
  重组只是起点
  电信重组似乎大局已定,但是在红头文件下发之前,各种消息依然层出不穷。
  此前分析人士普遍预计,中国电信行业的最终重组方案将在通常为期约10天的两会结束之后公布。2月21日有媒体称,该项重组计划可能在3月份举行的两会之前予以公布。同日,投资银行美林发布报告,预估重组时间表为:3月底前发放全业务牌照,在4-7月间则会公布各营运商母公司的架构变动及人事变动。
  与此同时,也有消息人士表示,尽管种种征兆显示电信重组已经加速,但由于运营商规模巨大,本次调整又涉及到四大上市公司及领导调整,原传闻版本还存在变数,“主要是人事方案难以确定”。
  “以政府主导的重组只是起点,而不是终点。”信息产业部一位多次参加重组方案论证的业内资深人士接受《华夏时报》记者采访时称,“所有的方案皆有其合理性,区别只是大家有不同的标准。”
  “通过此次重组主要解决分业竞争问题,使大家都有全业务经营权。”该人士称,“中国移动一家独大不是长远的事情。”
  “重组是‘外科手术’,之后还需要‘调理血脉’(非对称管制),虽然这见效慢,但还是要做。”他认为,现在评价此方案是否合理还为时过早,“一般合并过渡期为6个月,一年后评价手术是否成功”。

posted @ 2008-02-23 21:07 小Q 阅读(216) | 评论 (0)编辑 收藏

2008年2月21日

JDBC码是Java译码的一个部分,它给已写的编码带来了数量惊人的重复。另外,JDBC码几乎会经常性的带来一些低级错误。写出好的JDBC编码并不难,但是很痛苦。
DbUtils组件是一个精密而简单的组件,它并不做什么复杂的事而仅仅只是使很多的JDBC任务对开发者来说变得稍容易一点。尽管这时候很多持久框架和包都可以用来使数据持久变得更容易,然而JDBC仍然是大多数Java和Java2企业版(J2EE)开发者赖以生存的工具。因此,任何能让使用JDBC工作更容易的东西都是好消息。
DbUtils可以免费下载,它不依赖于任何其它的通用组件而只是依赖下面这些:

  • Java Development Kit (JDK) 1.2 (or later)
  • JDBC 2.0 (or later)

DbUtils文档并不是最好的,但是足以使你的工作正常进行。在下一节,你会看到DbUtils中最有用的类以及一些关于它们的用法的例子。你应该能够很容易地使用这些编码和例子,然后能够马上在你自己的项目中开始使用DbUtils。我将会集中精力于两个类(org.apache.commons.dbutils.DbUtils  和org.apache.commons.dbutils.QueryRunner)和一个接口(org.apache.commons.dbutils.ResultSethandler).在我给你们一些关于它们的用法的例子之前,让我们深入DbUtils里面来仔细看看它给我们提供了些什么。

DbUtils
DbUtils是一个为做一些诸如关闭连接、装载JDBC驱动程序之类的常规工作提供有用方法的类,它里面所有的方法都是静态的。

这个类里的重要方法有:

  • close:DbUtils类提供了三个重载的关闭方法。这些方法检查所提供的参数是不是NULL,如果不是的话,它们就关闭连接、声明和结果集(ResultSet)。
  • CloseQuietly: CloseQuietly这一方法不仅能在连接、声明或者结果集(ResultSet)为NULL情况下避免关闭,还能隐藏一些在程序中抛出的SQLEeception。如果你不想捕捉这些异常的话,这对你是非常有用的。在重载CloseQuietly方法时,特别有用的一个方法是closeQuietly(Connection conn,Statement stmt,ResultSet rs),这是因为在大多数情况下,连接、声明和结果集(ResultSet)是你要用的三样东西,而且在最后的块你必须关闭它们。使用这一方法,你最后的块就可以只需要调用这一方法即可。
  • CommitAndCloseQuietly(Connection conn):这一方法用来提交连接,然后关闭连接,并且在关闭连接时不向上抛出在关闭时发生的一些SQL异常。
  • LoadDriver(String driveClassName): 这一方法装载并注册JDBC驱动程序,如果成功就返回TRUE。使用这种方法,你不需要去捕捉这个异常ClassNotFoundException。使用loadDrive方法,编码就变得更容易理解,你也就得到了一个很好的Boolean返回值,这个返回值会告诉你驱动类是不是已经加载成功了。
ResultSetHandler

Click here to find out more!

正如它的名字所提示的,这一接口执行处理一个jaca.sql.ResultSet,将数据转变并处理为任何一种形式,这样有益于其应用而且使用起来更容易。这一组件提供了ArrayHandler, ArrayListHandler, BeanHandler, BeanListHandler, MapHandler, MapListHandler, and ScalarHandler等执行程序。 

ResultSetHandler接口提供了一个单独的方法:Object handle (java.sql.ResultSet .rs)。因此任何ResultSetHandler 的执行需要一个结果集(ResultSet)作为参数传入,然后才能处理这个结果集,再返回一个对象。因为返回类型是java.lang.Object,所以除了不能返回一个原始的Java类型之外,其它的返回类型并没有什么限制。如果你发现这七个执行程序中没有任何一个提供了你想要的服务,你可以自己写执行程序并使用它。

QreryRunner

这个类使执行SQL查询简单化了,它与ResultSetHandler串联在一起有效地履行着一些平常的任务,它能够大大减少你所要写的编码。QueryRunner类提供了两个构造器:其中一个是一个空构造器,另一个则拿一个 javax.sql.DataSource 来作为参数。因此,在你不用为一个方法提供一个数据库连接来作为参数的情况下,提供给构造器的数据源(DataSource) 被用来获得一个新的连接并将继续进行下去。

这一类中的重要方法包括以下这些:

  • query(Connection conn, String sql, Object[] params, ResultSetHandler rsh):这一方法执行一个选择查询,在这个查询中,对象阵列的值被用来作为查询的置换参数。这一方法内在地处理PreparedStatement 和ResultSet  的创建和关闭。ResultSetHandler对把从 ResultSet得来的数据转变成一个更容易的或是应用程序特定的格式来使用。
  • query(String sql, Object[] params, ResultSetHandler rsh):这几乎与第一种方法一样;唯一的不同在于它不将数据库连接提供给方法,并且它是从提供给构造器的数据源(DataSource) 或使用的setDAtaSource 方法中重新获得的。
  • query(Connection conn, String sql, ResultSetHandler rsh):这执行一个不要参数的选择查询。
  • update(Connection conn, String sql, Object[] params):这一方法被用来执行一个插入、更新或删除操作。对象阵列为声明保存着置换参数。

现在让我们来看一个例子,在这里你可以从一个数据库中获得一些数据。比如说,我正在使用MySQL 数据库.你还需要下载MYSQL JDBC驱动程序。我正在使用的MySQL数据库在本地主机,端口号为3306上运行。这个数据库地名字叫做test。你将要用到的Student表的结构如下:
Columns    Type
-------    ----
StudId     int
Name      varchar
在列表A中,你将会从Student表中得到一些信息,而且你可以按照你自己的额外需要修改这些信息。尽管你在使用JDBC,但要注意你几乎没写JDBC编码。(你可能要改变在例子中所规定的用户名和密码,这是以你的具体的数据库配置为基础的。)

这个编码遵从以下步骤:

Click here to find out more!

1.加载JDBC驱动程序类,并用DriverManager来得到一个数据库连接。
2.例示 QueryRunner 类。
3.使用连接、SQL查询、参数和ResultSetHandler来作为输入的查询方法。你使用一个类org.apache.commons.dbutils.handlers.MapListHandler,一个类 MapListHandler来获得一个结果集(ResultSet)并返回一个jaca.util.Map的实例java.util.List。因此结果集(ResultSet) 的每一行都变成了一个java.util.Map,所有这些java.util.Map的实例绑在一起放在一个java.util.List 中。

4. 反复得到列表(List)的值就是通过在列表(List)中获得每一个Map的值。

5.用QueryRunner 来执行一个没有参数的方法。在这里你要用BeanListHandler ,它是一个非常有用的ResultSetHandler ,因为你可以把ResultSet 转变成一个指定的Bean的列表中。这时你可以指定一个Bean类到Bean StudentBean中,如同在列表B中所显示的那样。

6. 你通过反复从列表(List)中得到多个bean,然后就可从每一个StudentBean实例中获取值。

注释:在列表B中,StudentBean 类中的StudId 必须是int,这是因为表Student的StudId列的类型是int。坚持这个类型的匹配是我们需要遵从的唯一规则。 

因为在这种情况下,StudentBean 类的属性和表Student 的字段是完好的对映着的,只要将StuentBean 类作为一个参数就是一个技巧。字段值用和字段名一样的名字插入到类的属性中。然而,如果你想要更多地控制bean的创建,则类BeanListHandler提供了第二个构造器:BeanListHandler(java.lang.Class type, RowProcessor convert). 接口Rowprocessor的执行把结果集(ResultSet)的各行转化成一个对象组。在 StudentBean这一案例中,RowProcessor中的BasicRowProcessor 的执行被利用上了,它能够执行这项任务。然而,你可以写一个新的执行并把它提供给BeanListHandler的构造器。 

当然,执行这一编码的输出取决于你从表Student中获得哪些数据。对我来说,我得到了以下这些输出:
***Using MapListHandler***
  Id >>1
  Name >>One
  Id >>2
  Name >>Two
***Using BeanListHandler***
  Id >>1
  Name >>One
  Id >>2
  Name >>Two
  Id >>3
  Name >>Three
除了到目前为止你已经看了的类以外,另外一些你需要研究的类是:

  • org.apache.commons.dbutils.QueryLoader:QueryLoader是一个从一个文件加载查询到一个Map的简单的类。然后,当需要的时候,你从 Map 中选择一些查询。在没有专门去接触代码的情况下,一个文件中的Having查询也可以改变得尽可能的简单。
  • org.apache.commons.dbutils.wrappers.SqlNullCheckedResultSet:这个类对使用一个系统方法来解决NULL值问题是很有用的。用一个 SqINullCheckedResultSet 的实例来限制一个常规的结果集(ResultSet) ,然后详细地说明在遇NULL值的情况下应该做些什么。
  • org.apache.commons.dbutils.wrappers.StringTrimmedResultSet:用类StringTrimmedResultSet 来约束一个结果集,这样一来,你就可以修整所有getString()和getObject()方法返回的字符串。

DbUtils 组件很好也很小巧,很值得在所有用到JDBC的项目中去使用。

 

import java.util.*;
import java.util.logging.*;
import java.sql.*;
import org.apache.commons.dbutils.*;
import org.apache.commons.dbutils.handlers.*;

public class TestDBUnits {
public static void main(String[]args) throws Exception {
  TestDBUnits test = new TestDBUnits();
  for(int i = 0 ; i < 1 ; i++) {  
   test.testQuery1();
   test.testQuery2();
   test.testUpdate();
  }
}
public void testQuery1(){
  try {
   QueryRunner qr = new QueryRunner() ;
   ResultSetHandler rsh = new ArrayListHandler();  
   String strsql = "select * from test1";  
   ArrayList result = (ArrayList)qr.query(getConnection() ,strsql ,rsh);
   //System.out.print("");
  } catch(Exception ex) {
   ex.printStackTrace(System.out);
  }
}
public void testQuery2(){
  try {
   QueryRunner qr = new QueryRunner() ;
   ResultSetHandler rsh = new MapListHandler();  
   String strsql = "select * from test1";  
   ArrayList result = (ArrayList)qr.query(getConnection() ,strsql ,rsh);
   for(int i = 0 ; i < result.size() ; i++) {
    Map map = (Map)result.get(i);
    //System.out.println(map);   
   }
   //System.out.print("");
  } catch(Exception ex) {
   ex.printStackTrace(System.out);
  }
}
public void testUpdate(){
  try {
   QueryRunner qr = new QueryRunner() ;
   ResultSetHandler rsh = new ArrayListHandler();
   String strsql = "insert test1(page ,writable ,content)values('ttt','ttt','faskldfjklasdjklfjasdklj')";
   qr.update(getConnection() ,strsql);
   //System.out.print("");
  } catch(Exception ex) {
   ex.printStackTrace(System.out);
  }
}
private  Connection getConnection() throws InstantiationException,
   IllegalAccessException, ClassNotFoundException, SQLException {
  String strDriver = "org.gjt.mm.mysql.Driver";
  String strUrl = "jdbc:mysql://localhost:3306/test";
  String strUser = "root";
  String strPass = "";
  Class.forName(strDriver).newInstance(); 
  return DriverManager.getConnection(strUrl, strUser, strPass);
}
}

posted @ 2008-02-21 14:09 小Q 阅读(1951) | 评论 (0)编辑 收藏
CALENDER
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(4)

随笔分类

随笔档案

文章分类

新闻分类

新闻档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜


Powered By: 博客园
模板提供沪江博客