<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>leebai</title>
    <description>作为一个Java Web开发者，Struts，Spring，Hibernate，JSF，prototype，Ext，IOC，Tag lib，jquery，rest，EJB，SOA，dojo,dwr(估计可以列出50个名词)。。。我都不会用，说起来有点不好意思，挺落伍的。。。 

我只会Java，Servlet API，JSP懂一点，SQL/JDBC，HTTP协议， HTML/CSS，DHTML/DOM，Javascript这么几个基本的东西，掌握和使用这些基本技术已经耗费了我很多精力，而且还做不到信手拈来，游刃有余，很多时候还得现查文档。</description>
    <link>http://leebai.javaeye.com</link>
    <language>UTF-8</language>
    <copyright>Copyright 2003-2008, JavaEye.com</copyright>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>JavaEye - 做最棒的软件开发交流社区</generator>
      <item>
        <title>RESTful架构是否适合“需授权访问的数据库型企业应用”？</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/189888" style="color:red;">http://leebai.javaeye.com/blog/189888</a>&nbsp;
          发表时间: 2008年05月05日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>RESTful架构是否适合&ldquo;需授权访问的数据库型企业应用&rdquo;？</p>
<p>&nbsp;</p>
<p>首先，定义一下&ldquo;<span style="color: #ff0000;">需授权访问的数据库型企业应用</span>&rdquo;：其实也就是大多数（绝大多数？）j2ee开发人员要面对的那种应用，数据存储是一堆业务表，表的域比较多，表之间有关系；业务逻辑比较多，一部分是简单的增删改查，一部分是由简单增删改查组合而成的复杂操作，进入系统之前必须登录，只有授权的用户才允许进行业务操作（包括查看）。</p>
<p>&nbsp;</p>
<p>REST、RESTful的资料看了一些，总感觉RESTful并不适合这类应用,主要依据是：</p>
<p>&nbsp;</p>
<p>1、这类应用session（及背后的cookies）是必须的，服务器端多少会有一些会话State（比如"用户名"），肯定要违背REST服务器<span style="color: #ff0000;">Stateless</span> 原则。</p>
<p>&nbsp;</p>
<p>2、这类应用任何Proxy Cache(及其他服务器之外的Cache)都是不允许的，因为非授权用户不可访问任何信息，因此无法利用REST强调的<span style="color: #ff0000;">Cacheable</span>优势。</p>
<p>&nbsp;</p>
<p>3、这类应用面对的&ldquo;<span style="color: #ff0000;">数据对象</span>&rdquo;和REST中的&ldquo;<span style="color: #ff0000;">Resource</span>&rdquo;应该是不同的，后者偏向于表达那种<span style="color: #ff0000;">无结构的对象</span>（比例文档，图片，音视频），对其进行的操作绝大多数时候针对对象整体(既操作本身不关系对象内部的数据构成)，因此可以用POST/GET/PUT/DELETE(CURD)等四个基本动词来表达；而前者大多数情况下，是<span style="color: #ff0000;">复杂的、结构化的对象</span>，对他们的操作除了整体操作，还有很多针对其局部的操作（既操作涉及对象的内部结构），<span style="color: #ff0000;">四个基本动词远不够用</span>，在不扩充动词的情况下，只能让一个动词表达多个操作，这种设计并不符合REST简单优美的声誉。</p>
<p>&nbsp;</p>
<p>4、这类应用的&ldquo;数据对象&rdquo;之间很多时候是相关的，对某个对象的CURD操作经常同时需要对其他对象的CURD操作，如果把这些<span style="color: #ff0000;">相关操作</span>（2个以上）放在一个HTTP请求中完成，则使用四个基本动词来表达是语义不确切的；如果把这些相关操作分成多个HTTP请求，则相关操作的Transaction是无法保证的。</p>
<p>&nbsp;</p>
<p>上面四点中，1、2对REST的违背是很明显的，3、4也很容易看出来，我的问题是，难道RESTful架构并不适用主流的企业应用（非企业&ldquo;级&rdquo;应用:-)），而只适用于像Javaeye这样的向公众提供信息服务的<span style="color: #ff0000;">&ldquo;资源型&rdquo;网站</span>？</p>
<p>&nbsp;</p>
<p><br />另外还有几个主题之外的RESTful疑问，一并请教：<br />a、现在很多论坛有一个功能：必须回复才能看到主帖，但看到和看不到时的访问URI是相同的，这种设计是否违背REST？<br />b、基本上论坛帖子都有访问次数统计，其实就是GET操作的时候改变了服务器State，应该也是违背REST吧？<br />c、只使用POST/GET是否也能实现RESTful？我看Fielding的论文中并没有提到必须使用PUT/DELETE。<br />d、在《RESTful Web Services》的序言中，作者写道：</p>
<p>&nbsp;</p>
<p><span style="color: #808080;">In that first version of HTTP, cleverly disguised as a lack of features, we can see addressability and statelessness: the two basic design decisions that made HTTP an improvement on its rivals, and that keep it scalable up to today&rsquo;s mega-sites. Many of the features lacking in HTTP 0.9 have since turned out to be unnecessary or counterproductive.Adding them back actually cripples the Web. Most of the rest were implemented in the 1.0 and 1.1 revisions of the protocol.<br />&nbsp;<br />HTTP的第一个版本（指0.9），被聪明地伪装成功能简陋，我们可以看到可寻址性和无状态性，这两个基本的设计策略使得HTTP优于它的竞争对手，并使它在可扩展性方面能够适应今天的百万级站点。HTTP0.9中缺少的很多功能，大多数都在1.0和1.1版本中被实现，后来反而成为不必要的或者反生产力的，加上它们实际削弱了Web。</span></p>
<p><br />&nbsp;<br />作者的意思是不是：POST/PUT/DELETE等其实都不是RESTful的本质，只有 <span style="color: #ff0000;">GET+URI 才是RESTful的核心战斗力</span>？</p>
<p>&nbsp;</p>
<p><br />最近为了升级7wxAop框架(自用+开源)的后端基础结构，花了很多时间做技术准备，以上是调查REST时的疑问，请这方面有经验的同学参与讨论解惑。</p>
<p>REST话题没有专版，不知道该发何处，先放在人比较多的JAVA版:-)。</p>
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/189888#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Mon, 05 May 2008 18:44:34 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/189888</link>
        <guid>http://leebai.javaeye.com/blog/189888</guid>
      </item>
      <item>
        <title>一个不会Struts，Spring，Hibernate，JSF，prototype，Ext的开发者</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/187005" style="color:red;">http://leebai.javaeye.com/blog/187005</a>&nbsp;
          发表时间: 2008年04月26日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p><br />作为一个Java Web开发者，Struts，Spring，Hibernate，JSF，prototype，Ext，IOC，Tag lib，jquery，rest，EJB，SOA，dojo(估计可以列出50个名词)。。。我都不会用，说起来有点不好意思，挺落伍的。。。 <br /><br />我只会Java，Servlet API，JSP懂一点，SQL/JDBC，HTTP协议， HTML/CSS，DHTML/DOM，Javascript这么几个基本的东西，掌握和使用这些基本技术已经耗费了我很多精力，而且还做不到信手拈来，游刃有余，很多时候还得现查文档。</p>
<p>&nbsp;</p>
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/187005#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 26 Apr 2008 10:36:42 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/187005</link>
        <guid>http://leebai.javaeye.com/blog/187005</guid>
      </item>
      <item>
        <title>从JSF和Ext看WebUI开发－－给对JavaScript 有恐惧感的朋友</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/185839" style="color:red;">http://leebai.javaeye.com/blog/185839</a>&nbsp;
          发表时间: 2008年04月23日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          <p>话题由来：<a href="../../../../post/523520?page=1" target="_blank">http://www.javaeye.com/post/523520?page=1</a> </p>
<p>把其中我的观点整理出来： 
<table border="2" style="background-color: #ffffff;">
<tbody>
<tr>
<td>
<p><span style="color: #ff0000;">100％支持fins！！！</span> B端和S端彻底分开，分别有自己的框架，&ldquo;UI层与系统其他层面的东西的唯一联系应该是"数据" ，UI层应该是在后台系统不变的情况下可切换的&rdquo;，这种架构策略完全可行，而且实际代码上也比JSF/asp.net等&ldquo;server page&rdquo;变种优雅，本人已经在N个项目中实践过： <br /><br /><a href="http://www.xjawa.org/xjawa/kontent/10020.html" target="_blank"><span style="color: #006699;">http://www.xjawa.org/xjawa/kontent/10020.html</span></a> <br /><br />使用这个7wxAop框架（<span style="color: #ff0000;">浏览器端7wx + 服务器端Aop</span>），有个朋友喜欢用Ext做前端，他就把7wx替换成Ext， 照样跑得很好：</p>
<p><a href="http://www.deepsoft.com.cn/ext-aop/demo.html"><span style="color: #006699;">http://www.deepsoft.com.cn/ext-aop/demo.html</span></a><br /><br /><br />那些不理解fins得同学，可能是没做过ajax开发，或者ajax用的比较少，或者思想已经被&ldquo;server page &rdquo;方式禁锢。虽然本质上 jsf 还是&ldquo;server page&rdquo;，但确实比jsp、tag强很多；但是比起B/S完全分开得架构，jsf还是很丑陋。 我们公司有个项目组用得是SAP得WebDynpro，和jsf类似，要比jsf成熟，但实际开发起来也是很多问题。 <br /><br />个人认为，<span style="color: #ff0000;">fins设想的这种架构之所以未被普遍关注，是因为它损害了J2ee大厂商的商业利益，因此他们控制的主流IT媒体不愿宣传</span>。想想：如果Server只是用来接受数据-&gt;处理逻辑-&gt;返回数据，服务器端将非常<span style="color: #ff0000;">Lightweight和Performance</span>，大厂商的J2EE服务器还有高性能硬件还会有几个项目需要？&nbsp;</p>
<p>＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝</p>
<p>。。。正如我前面提到的，不理解fins的人大多是思想被&ldquo;server pages&rdquo;禁锢者，总认为浏览器只能负责 html render，其他一切都应该在服务器上完成，就如IT业早期的主机－字符终端模式。这种思想本质上是把浏览器看作21世纪的字符终端，完全忽略和闲置了目前运行浏览器pc的强大计算功能。 </p>
<p>。。。在一个server和UI无关的模式下（下面称为&ldquo;server business&rdquo;，与&ldquo;server pages&rdquo;对应），server只是一个business logic server（只接受UI请求改变或查询系统的state），大致相当于砍掉了J2EE的Web层，Lightweight是肯定的了，至于Performance，除了节省处理 <br />'UI layer'(NOT ONLY 'presentation layer') 的CPU开销，更重要的是大量节省服务器的出口带宽开销。</p>
<p>。。。&ldquo;server business&rdquo;模式(SB)与&ldquo;server pages&rdquo;模式(SP)本质上是不同的,SP下的'presentation layer'概念并不适合SB模式。</p>
<p>。。。将ajax单纯地视为transition technology本身也没什么错，虽然Ext等前端组件已经超越了这一概念。用Javascript framework称呼基于浏览器的&ldquo;全功能UI Layer"并不适当，后者 = HTML + DHTML(DOM) + JS，JS只是一个粘合剂，Ext等前端组件本质上只是扩展了HTML Element，假设HTML 6.0包含了功能强大的TreeView、ListView(GRID)等通用UI组件，则JS将回归为单纯的DHTML API操纵语言。 至于RIA(javaFx or Flex)，我认为它是侧重多媒体表现的&ldquo;全功能UI Layer"的等价物，它的发展前景取决于厂商对它的定位，如果你认同RIA，就没有理由不认同&ldquo;全功能UI Layer"的思路。<br />&nbsp;</p>
</td>
</tr>
</tbody>
</table>
</p>
<p><br /><br />JSF：基于服务器端的UI模型，Ext:基于浏览器端的UI模型。 <br /><br />很多人质疑以JavaScript为中心的UI开发，其实是对html/JavaScript的恐惧。 <br /><br />1、 不要把《 HTML(含CSS) + DHTML（或DOM）API + JavaScript开发》 简单理解成 JavaScript 开发。很多人觉得&ldquo;JavaScript&rdquo;难以掌握，是因为他们混淆了JavaScript脚本语言本身和它所要操纵的API：其实JavaScript本 身 非常简单，但它所要操纵的API&ldquo;非常复杂&rdquo;，因为HTML(含CSS) + DHTML（或DOM）API所涉及的API对象、属性、方法、事件数量巨大，可以说和Win32 API,JDK API（不单是swing/awt）同一个数量级。 <br /><br />2、HTML(含CSS)作为UI的表达语言，其&ldquo;潜在的&rdquo;界面表达能力应该说远远超越任何已有高端UI组件库（asp.net，jsf，Ext...）,因为它们本 身 都是基于HTML(含CSS)开发的，要想完整地（还不含绘图）、无障碍表达WebUI，掌握HTML(含CSS)及其API--DHTML（或DOM）是必由之路。 <br /><br />3、所有高端UI组件库的设计思想都是提高组件粒度，以掩盖HTML(含css)的复杂性。不同在于，服务器端UI组件（asp.net，jsf）试图&ldquo;彻底&rdquo;掩盖，它们排斥直接使用HTML(含css)，并且操纵UI组件的API面向后端语言（C#,VB,java）；而浏览器端UI组件（Ext等）是&ldquo;开放性的&rdquo;封装，允许直接操作HTML(含css)，操纵UI组件的API面向javascript。 <br /><br />4、服务器端UI组件的使用者，一般不太关心组件的具体实现，而且使用中也缺乏HTML+JS的训练，当组件功能满足不了要求时，自己扩展组件的难度很大，也就时说使用组件和开发组件之间存在巨大鸿沟。而浏览器端UI组件的使用者，一般会大致了解组件的实现，使用中频繁接触HTML，JS操纵能力也得到训练，因此他们会比较自然地形成组件改造扩展能力，使用组件和扩展组件之间得学习曲线是平滑的。 <br /><br />5、因此，从开发人员自身职业发展的角度看，要想成为无障碍的Web开发者，使用浏览器端UI组件模式应该是更好的选择。 <br /><br />作为Web开发者，必须热情拥抱HTML（css）和javascript，否则只能是半拉子开发人员。</p>
<p>&nbsp;</p>
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/185839#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 23 Apr 2008 12:09:11 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/185839</link>
        <guid>http://leebai.javaeye.com/blog/185839</guid>
      </item>
      <item>
        <title>一个简单的JSON-ext，对很常见的列表数据，可以节省将近50%的网络带宽</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/80594" style="color:red;">http://leebai.javaeye.com/blog/80594</a>&nbsp;
          发表时间: 2007年05月17日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          常见的列表数据，标准JSON表达法为：<br /><br /><pre name="code" class="java">

 var locations = [
      {
         "precision": "zip",
         "Latitude":  37.7668,
         "Longitude": -122.3959,
         "Address":   "",
         "City":      "SAN FRANCISCO",
      },
      {
         "precision": "zip",
         "Latitude":  37.371991,
         "Longitude": -122.026020,
         "Address":   "",
         "City":      "SUNNYVALE",
      }
   ];

</pre><br /><br />略微改进的写法：<br /><br /><br /><pre name="code" class="java">

function location(p1,p2,p3,p4,p5){
  this.precision = p1;
  this.Latitude = p2;
  this.Longitude = p3;
  this.Address = p4;
  this.City = p5;
} 

var locations = [
  new location("zip",37.7668,-122.3959,"","SAN FRANCISCO"),
  new location("zip",37.371991,"","SUNNYVALE")
]

</pre><br /><br />客户端访问数据方式与原先一样。<br /><br />当然，非javascript的客户端不一定支持这种写法，自己权衡是否值得采用。<br /><br />这是7wxAop采用的格式，不知道为什么JSON不支持。
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/80594#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 17 May 2007 14:39:32 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/80594</link>
        <guid>http://leebai.javaeye.com/blog/80594</guid>
      </item>
      <item>
        <title>WPF/E已死，Silverlight只是个冒牌货，Java RIA开发还要在黑暗中摸索更长的时间。</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/78357" style="color:red;">http://leebai.javaeye.com/blog/78357</a>&nbsp;
          发表时间: 2007年05月09日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          没有可视化IDE的RIA开发，就是在黑暗中摸索的RIA开发。<br /><br />微软的WPF/Everywhere曾经让人幻想全面WebRIA时代的到来，但WPF/E变成Silverlight之后，虽然正式版还没出来，但已经可以看出Silverlight已经大大地变味，不再是真正的WPF/Everywhere了，也不再是RIA追随者们所要的东西了-----也许一开始WPF/E就是个大忽悠，看这个：<a href="http://blogs.msdn.com/mharsh/archive/2006/12/06/what-is-wpf-e-really.aspx" target="_blank">http://blogs.msdn.com/mharsh/archive/2006/12/06/what-is-wpf-e-really.aspx</a> ，再看这个：<a href="http://silverlight.net/quickstarts/default.aspx" target="_blank">http://silverlight.net/quickstarts/default.aspx</a>。<br /><br />微软已经为.NET阵营的RIA开发者准备了功能强大的ASP.NET AJAX，没有必要再搞一套类似但通用的东西，来帮助j2ee与.net竞争。<br /><br />微软打击j2ee的策略是不会停止的，Java Web的开发者可能还要再辛苦几年。
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/78357#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Wed, 09 May 2007 23:39:17 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/78357</link>
        <guid>http://leebai.javaeye.com/blog/78357</guid>
      </item>
      <item>
        <title>Web下的分页显示性能，怀疑99%的人都没完全搞清楚，希望们能给个终极答案</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/75864" style="color:red;">http://leebai.javaeye.com/blog/75864</a>&nbsp;
          发表时间: 2007年04月28日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          1、执行select * from tab1 而不移动游标，DBServer会把数据全载入内存吗？如果“否”，游标从头移到尾，数据全载入内存吗？<br />２、jdbc返回ResultSet时，数据就全部从DBServer到AppServer了吗？不同类型的ResultSet，这点上有差别吗？<br />３、AppServer上的游标next()，需要和DBServer通讯吗？<br />４、不同的数据库厂家，不同的jdbc驱动，上述问题都一样吗？<br /><br /><br /><br />希望[[[]]]们能给个终极答案<br /><br /><br />javaeye为什么要屏蔽[daxia]两个字？还是标题太长？
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/75864#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Sat, 28 Apr 2007 14:08:31 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/75864</link>
        <guid>http://leebai.javaeye.com/blog/75864</guid>
      </item>
      <item>
        <title>预测：企业应用系统开发的下一个革命，Web应用2.0 (非Web2.0)</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/75493" style="color:red;">http://leebai.javaeye.com/blog/75493</a>&nbsp;
          发表时间: 2007年04月27日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          背景贴：<br /><br /><a href="http://www.javaeye.com/post/273055" target="_blank">Java Web层的下一个王者是谁？ </a> <br /><br />web开发的下一个革命：基于<strong>富客户端+业务服务</strong>的“企业应用开发技术”与基于<strong>动态网页</strong>的“动态网站开发技术”彻底决裂（就像当年c/s结构与终端/主机结构彻底决裂一样），企业应用开发技术将进入第四代，Web应用开发进入第二代。在这场革命中，ajax和webservice(指概念，不指标准)只是两个导火索，真正的大变革还在后面。<br /><br />这场革命完成的标志有两个：<br /><br />一是出现专门的<strong>“业务服务器”</strong>，或者目前的应用服务器演变成“业务服务器”。为什么这么说呢？因为目前的应用服务器是为“生成动态网页”服务的，在架构上处于Web服务器的后面，用来处理web服务器不能处理的所谓“动态内容”，因为是做为web服务器的一个下家，所以要考虑HTTP协议的所有规范，比如各种HTTP请求方法、各种HTTP头标，各种BODY数据格式，HTTP缓存逻辑，编码规范，等等等。而如果未来的后台服务器只需要提供“业务服务”，那么HTTP协议至少80%以上的spec可以不考虑，不实现（比如请求方法，我看只支持POST就够了），这样后台服务器的体系结构可以精简，也会带来更高的运行效率；另外，后台服务器还可以专门针对“业务服务”进行增强，比如session跟踪，用户访问监控，权限管理等等目前需要由应用程序自身来实现的功能，完全可以在“业务服务器”中做通用的实现。这种服务器端架构重新设计的结果就是：目前应用服务器的“Web容器”和“业务（EJB）容器”，很可能整合成“业务服务器”中单一的“业务容器”。这也是为什么7wxAop要把Jetty服务器作为部件嵌入框架的原因之一，我认为只有我们对“服务器”本身的架构有变革的能力，才可以在这场革命中占据有利的位置。<br /><br /><br />二是<strong>粗粒度界面组件</strong>（像Treeview,Listview,EidtableGrid等等）成为浏览器的标准支持。如今DHTML/DOM已经很成熟，基于HTML/DHTML/DOM/CSS的应用的用户界面，可以做得比以往任何类型的应用的界面都漂亮，都富于交互功能，以前从来没有一种界面技术能给开发者提供如此细粒度的控制可能。但问题也恰恰出现在这种过于细粒度的界面构造方式，它导致了严重的界面生产效率问题。目前大部分的Ajax框架都在做这样的工作：将这种细粒度技术的基础上构造粗粒度的界面组件，比如国内的dorado,我这个7wxAop中的7wx也是；另一种工作是设计全新的粗粒度界面组件，如adobe的Flex；还有一种工作做得很早，估计已经被大部分人忘记了，就是在IE中直接使用ActiveX界面组件。我认为，不管是哪种粗粒度界面组件实现，最好都由浏览器厂家联合来做，做出标准、通用、有持久生命力的界面组件。微软推出.net的时候，粗看简介我还以为是理想中的界面层技术，细看代码原来还是“服务器动态页面”，后来SUN的JSF也这么学，我们公司一个项目组现在在用的SAP的webDypro也是，因此我都有点怀疑:业界大佬们之所以不愿意在客户端组件上下功夫，之所以不想变革目前的Web应用架构，不是因为他们没看到技术需求，而是因为，他们的根本利益在于利润丰厚的各种服务器端产品；Web开发之所以搞得这么复杂，里面说不定有什么惊天大阴谋；或者说，这些业界大佬们睁一只眼闭一只眼地看着广大Web开发者累得死去活来，看着Web独立开发商和集成商一个个倒下去，却背过身去窃笑着点着大把的钞票----扯远了:)，这问题有空发个专贴，反正做了6年IBM独立开发商就给我这种感觉。<br /><br /><br />建议所有Web开发者都关注这两个方向的进展，搞技术的也要有一定的前瞻性，否则老跟在别人屁股后面跑，实在没有意思。
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/75493#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Fri, 27 Apr 2007 14:19:19 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/75493</link>
        <guid>http://leebai.javaeye.com/blog/75493</guid>
      </item>
      <item>
        <title>初来乍到，发个帖子介绍一下7wxAop---一个功能比较全面的Ajax框架</title>
        <author>leebai</author>
        <description>
          <![CDATA[
          <br/>
          作者: <a href="http://leebai.javaeye.com">leebai</a>&nbsp;
          链接：<a href="http://leebai.javaeye.com/blog/75153" style="color:red;">http://leebai.javaeye.com/blog/75153</a>&nbsp;
          发表时间: 2007年04月26日
          <br/><br/>
          声明：本文系JavaEye网站发布的原创博客文章，未经作者书面许可，严禁任何网站转载本文，否则必将追究法律责任！
          <br/><br/>
          7wxAop是一个基于Model/View模型，以提高开发效率为目标的Ajax框架。和一般Ajax框架不同，7wxAop不侧重于浏览器端组件的封装（只有常用的组件），而重点在于对传统“服务器生成动态页面”的Web程序模式的颠覆。在7wxAop服务器可以不产生任何“动态页面”，所有界面构造和流转都由客户端自己负责，应用服务器只提供业务服务，并对业务服务的开发编码提供了强有力的支持。<br /><br />7wxAop的主要技术有：<br />1、ajax通讯模式和客户端界面组件。<br />2、业务逻辑实现方法：AutoSQL-AutoAction<br />3、自动表单验证：元数据自适应表单（Meta Adaptive Form）<br />4、后台业务服务监控。<br /><br />详细介绍请看：<br /><br /><a href="http://www.xjawa.org/xjawa/kontent/80039.html" target="_blank">http://www.xjawa.org/xjawa/kontent/80039.html</a><br /><br /><br />7wxAop在5年前就已经成型，并用于软件产品的开发，几年来每年都有多个企业应用项目基于该平台开发，目前已经有相当的成熟度，现在将其开源，希望有兴趣的朋友参与研究和发展。
          <br/>
          <span style="color:red;">
            <a href="http://leebai.javaeye.com/blog/75153#comments" style="color:red;">本文的讨论也很精彩，浏览讨论>></a>
          </span>
          <br/><br/><br/>
          <span style="color:#E28822;">JavaEye推荐</span>
          <br/>
          <ul class='adverts'><li><a href='/adverts/41' target='_blank'><span style="color:red;font-weight:bold;">北京: 千橡集团暨校内网诚聘软件研发工程师</span></a></li><li><a href='/adverts/42' target='_blank'><span style="color:red;font-weight:bold;">搜狐网站诚聘Java、PHP和C++工程师</span></a></li></ul>
          <br/><br/><br/>
          ]]>
        </description>
        <pubDate>Thu, 26 Apr 2007 17:26:23 +0800</pubDate>
        <link>http://leebai.javaeye.com/blog/75153</link>
        <guid>http://leebai.javaeye.com/blog/75153</guid>
      </item>
  </channel>
</rss>