架构师之家最新随笔(rss)

AOP on XML Tag

     摘要:   AOP(Apsect Oriented Programming)概念的正式出现也有一些时日了,但是它在程序构造过程中似乎仍未找到合适的切入点,一般系统的设计实现很少将AOP作为必要的技术元素。AOP作为一种普适的技术思想,它所代表的是程序结构空间中的定位和组装技术。http://canonical.javaeye.com/blog/34941 AOP使我们可以通过非侵入性的方式动态修...  阅读全文

2008-07-07 00:12 作者: canonical【评论:0】【阅读:281】 

Problem about java.lang.LinkageError: loader constraints violated when linking javax/xml/namespace/QName class

     摘要: How to solve java.lang.LinkageError Problem  阅读全文

2008-07-06 18:41 作者: david.turing【评论:0】【阅读:30】 

[原创]Hibernate的Antlr在Weblogic中产生Jar冲突的历史缘故以及解决办法

     摘要: WebLogic + Hibernate 包冲突看代码重构的重要性  阅读全文

2008-07-04 23:24 作者: david.turing【评论:0】【阅读:1566】 

Mule ESB 2.0 苦斗两周之后的初印象

     摘要: 与Mule 2.0抵死缠绵了两周,喜忧掺半。但只在2.0之后,Mule才算真正站到了ESB的起跑线上。

完整的笔记见我的Wiki: http://wiki.springside.org.cn/display/calvin/Mule , 这里主要列一下实际的升级感受。  阅读全文

2008-07-04 10:04 作者: 江南白衣【评论:2】【阅读:747】 

[原创]从中间件厂商的角度看EJB3标准

     摘要:   阅读全文

2008-06-29 22:28 作者: david.turing【评论:1】【阅读:1111】 

主从分解而不是正交分解

     摘要:     说到分解,很多人心中的意象大概只有正交分解。正交分解无疑是最重要的一种分析方法,它也是所谓“分而治之”思想最常见的实现策略。但是正交分解一般潜在的假定是分解后的子部分是大致均衡的,它们是相对具有独立价值的,可以彼此脱离独立发展。这是分解后实现系统解耦的重要原因。http://canonical.javaeye.com/blog/3388...  阅读全文

2008-05-26 00:41 作者: canonical【评论:0】【阅读:1265】 

将Spring用于高并发环境的隐忧

     摘要: Spring一个关于Lock Contention的Bug引起我对Spring代码质量的忧虑  阅读全文

2008-04-19 09:47 作者: david.turing【评论:19】【阅读:2434】 

java NIO: selector 机制分析


在学习IBM的那个NIO教程时发现,异步IO这部分的代码居然有个严重问题。
即client突然中断 tcp连接时。服务端会进入一个令人崩溃的无限循环。

后来发现其实是因为selector在tcp连接已经断开时,还是能够select()出OP_READ状态的SocketChannel的SelectedKey。
这时需要通过Channel读取数据到buffer的过程时的返回值来判断。
这个反回值其实就是读取的字节数。该数字为0时说明就是一般的没有数据可读取,而当为-1时其实表示底层tcp已经断开了。(但IE的连接有点不同,read时直接给出Exception,反正这些情况都要判断了.)


之后又想到,那如何注销selector与SocketChannel之间的关联呢?selector内部基本的运作是怎么样的呢? javadoc中写的是key.cancel()方法。socket的close()在windows似乎也有一样的功能。


这里可以用两张图来表示。




2008-04-06 21:03 作者: wfeng007【评论:0】【阅读:146】 

再读“向依赖关系宣战”后的一些质疑。。。


最早看到“向依赖关系宣战”这篇文章是在《程序员》杂志上的。当时流行讨论ioc di等概念,这篇文章一出,似乎已经将这些混乱的东西讲清楚了。我就是从这篇文章开始理解IoC阿、DI的概念的。

现在看来这篇文章确实比较详细,但是反复看的话似乎感觉比较罗嗦。而且通过这两年的实践过后,我发现其实这几个概念在描述时还是有偏差的。
下面有些质疑之处:
1。 IoC与DI,马丁同学提出的依赖注入。。这个名词表面上怎么看都和控制反转扯不上关系。但是他又说“。。。。应该叫DI”。结果所有人就把DI与IoC等同,甚至就把DI当作IoC的一个别名来用。。。
我到感觉DI与IoC是指同以概念的不同方面。DI强调的是“依赖的形成”即,框架或容器如何得到需要运行的“实现(implements)”的。而IoC本身概念是强调整体主控权与“库”调用方式相反。即由框架或容器主导主控权。或者说依赖于控制权相反。

2。IoC与依赖倒置。
文中似乎没有就两者关系进行详细说明。
个人感觉IoC其实就是以依赖倒置为基础的。IoC是在特定环境中的DI特例,并且关注到了“实现”与“使用者”依赖关系产生的问题,(因为事实上调用时还是存在依赖关系的。)所以需要有“注册”这个过程。但是IoC并没有强调“注册”。

2008-03-17 15:14 作者: wfeng007【评论:0】【阅读:100】 

如何理解嵌套事务(Nested Transaction)

     摘要: 介绍nested transaction的概念  阅读全文

2008-03-04 12:38 作者: david.turing【评论:4】【阅读:1302】 

WebMVC之前世.今生

     摘要:    所谓WebMVC即Model2模型是目前Web开发领域的主流模型,Struts/Struts2框架是其典型实现。在概念层面上,这种程序组织模型是怎样建立起来的?与其他Web开发模型(如面向对象模型)具有怎样的联系? 它未来可能的发展方向在哪里? 结合Witrix开发平台的具体实践,基于级列设计理论我们可以看到一条概念发展的脉络。http://canonical.javae...  阅读全文

2008-02-18 22:02 作者: canonical【评论:0】【阅读:1345】 

(转)什么才是软件开发的葵花宝典?

     摘要: 中国人大都喜欢用武侠小说来比较软件开发,但是在实战武功中,只有葵花宝典才是最厉害的,也只有掌握了葵花宝典,才能称为"不败"。 但什么才是软件开发的葵花宝典? 让我们先从一些现象出发。我们的前提是,软件开发是一项智力密集型劳动。对于智力密集型劳动,我们观察到的现象是,个体的表现差异很大,团队的表现差异很大,组织的表现差异很大,国家的表现差异很大。这不象体力占主要的劳动,象百米王跑百米...  阅读全文

2008-02-03 14:46 作者: 冷面阎罗【评论:10】【阅读:1776】 

Oracle收购BEA——如何看待J2EE中间件的价值

     摘要: Oracle终于收购了BEA了http://www.oracle.com/bea/index.htmlhttp://biz.yahoo.com/ap/080116/oracle_bea.html新一轮收购,其实最值得关注的是WebLogic/Tuxedo两个拳头产品,而作为一直缺乏中间件领头产品的Oracle公司,这一次又重新开始瓜分市场,微软/IBM/SAP都会面临直接的强有力的挑战。整个事件中...  阅读全文

2008-01-16 22:39 作者: david.turing【评论:9】【阅读:2744】 

C++配置管理

     摘要:   自从离开学校就基本上不再使用C++了,最近却又因为项目上的原因重新走入这一迷失的世界, 感觉很是缺乏一些顺手的工具。首先就是做配置管理有点麻烦, 因为缺乏反射机制, 无法直接映射, 所以一般需要手工书写配置设置功能.   我们希望配置类在配置阶段能够支持动态属性名, Code highlighting produced by Actipro CodeHighl...  阅读全文

2008-01-12 20:58 作者: canonical【评论:0】【阅读:1270】 

关系模型与ORM

     摘要:     关系数据库模型在理论上主要解决的是消除数据冗余的问题。关系模型的数学基础是所谓的集合论,而集合的基本含义正是一组具有某种原子性的互不相同的元素。面向对象技术是对相关性进行局域化的一种手段(相关的数据和操作聚集到同一对象名义下),在这一局域化过程中,相同的元素被识别出来,成为独立的对象。从某种意义上说,关系模型与对象模型是殊途同归的过程,是从不同侧面对同一事物的...  阅读全文

2008-01-06 19:04 作者: canonical【评论:3】【阅读:1149】 

高性能分页标签extremeTable的Limit设计架构思想剖析

     摘要:   这是一个目前最好的一个开源分页标签的实现---extremeTable标签。今天谈谈它的Limit的设计架构思想。 这个设计很通用,经过作者的多次重构,现在extremeTable的架构非常漂亮。这个标签现在缺点是有些参数对mvc控制器屏蔽了,应提供一致的对外接口。不过整体上设计还是很精致的,面向对象来处理 html元素,与spring非常的默契,非常便于开发和测试。 类图关系...  阅读全文

2007-12-26 16:17 作者: Asktalk【评论:5】【阅读:2003】 

Spring Web框架与Struts的区别

     摘要:   下面是从struts的角度来谈谈spring自带的web框架的使用。 当然,我们在配置web框架前,需要把spring配置好,这里就不多说了。 1.web框架核心servlet在web.xml中的配置。    1<servlet>    2<servlet-name>Dispatcher&...  阅读全文

2007-12-25 02:23 作者: Asktalk【评论:0】【阅读:1462】 

Eclipse启动机制(1)

     摘要:   最近我一直在研究Eclipse的架构体系,下面我们就来看看Eclipse的启动机制吧 1、Eclipse源代码        eclipse-sourceBuild-srcIncluded-3.3.1.1.zip    版本:3.3.1.1   &...  阅读全文

2007-12-22 16:33 作者: Asktalk【评论:3】【阅读:2030】 

代码之外的结构

     摘要:     我在各种场合一直都在强调结构问题是独立的,在程序语言之外存在着独立的,可研究的,富有成效的结构问题。http://canonical.javaeye.com/blog/147424 在这个方向上更进一步,我们注意到所有的代码并不是天然出现的,而是由人所编制的,因此代码世界内部并不构成封闭的,自足的某个世界。代码中的结构问题并不是由代码本身完全解决的,即在代码之...  阅读全文

2007-12-15 19:46 作者: canonical【评论:0】【阅读:1089】 

关于抽象性的一些说明

     摘要:     没有人否认抽象的意义,但是抽象是否就是抽象到无穷大,这是个可以明确定义的问题,也是数学领域正在解决的问题。在我们的思考中没有明确定义何处是边界, 没有明确的限制,这便是导向无穷的一种思维方式,它和现实中是否真的允许消耗无限多的资源,创建无限多的对象无关。当我们认为自己明白了终极的意义,明白 了一种推向无穷的抽象,这并不是理解了世界的全部,我们仍然要明白如何...  阅读全文

2007-12-09 22:25 作者: canonical【评论:4】【阅读:836】 

RSS

导航

团队简介

团队公告

QQ群

计数器

聚合

团队成员列表[共27人]

团队列表

俱乐部列表