Blog信息 |
blog名称: 日志总数:1304 评论数量:2242 留言数量:5 访问次数:7596493 建立时间:2006年5月29日 |

| |
[Struts 2.0]Struts 2的基石——拦截器(Interceptor) 软件技术
lhwork 发表于 2006/12/7 9:31:08 |
首先,要跟大家道个歉,前一阵子为给客户个一个DEMO,忙得不可开交,所以很久没有更新Blog。提到这个DEMO我想顺便跟大家分享一下心得——如果大家希望快速开发,一个类似Struts
2这样的简单方便的WEB框架必不可少。我们在开发DEMO使用的还是Struts 1.2.8,而且没有不使用任何EL(表达式语言),导致页面出现无数类似“<%=
((Integer) request.getAttribute("xx")).intValue()%6 %>”的代码。Struts 1.x的Form Bean的麻烦使得有部分同事直接使用request.getParameter(String
arg),继而引入另一种麻烦。诸如此类的问题,在DEMO这样时间紧迫的项目凸显了Struts 1.x对快速开发的无能为力。不过没办法,由于我们项目中的几个资深员工除了Struts
1.x外,对其它的WEB框架似乎不大感兴趣。
言归正传,Interceptor(以下译为拦截器)是Struts 2的一个强有力的 |
|
[OpenSymphony]优雅的解决web布局的问题 -- sitemesh的使用 软件技术
lhwork 发表于 2006/12/6 9:44:31 |
webwork的开发团队opensymphony提供了一种优雅的解决页面布局的方法sitemesh。 sitemesh应用Decorator模式,用filter截取request和response,把页面组件head,content,banner 结合为一个完整的视图。通常我们都是用include标签在每个jsp页面中来不断的包含各种header, stylesheet, scripts and footer,现在,在sitemesh的帮助下,我们可以开心的删掉他们了
下边是创建一个简单实例的步骤: 1,新建一个标准的web工程叫sitemesh 在WebRoot下新建一个index.jsp,内容如下
|
|
[OpenSymphony]compass学习笔记4 软件技术
lhwork 发表于 2006/12/4 10:39:34 |
GPS通过2个概念提供了整合不同的可索引的数据源:CompassGps和CompassGpsDevice。Device可以结合任何类型的可索引数
据来源,它提供索引数据、搜索数据、敏感数据变化的能力。 GPS建立在Compass基础之上。利用Compass的特征,如:事务、OSEM以及
API等。
CompassGps是GPS的主要接口,它拥有一系列的CompassGpsDevices,并且管理他们的生命周期。
Compass提供了两个Gps的实现: SingleCompassGps:拥有一个compass实例。这个compass实例用来做索引和镜像操作。 DualCompassGps:
拥有两个Compass实例。indexCompass和mirrorCompass。主要处理两个事务级别。indexCompass一般采用
batch_insert隔离级别,而mirrorCompass采用read_committed事务级别。
hibernate Gps Device
hb3新的基于时间的机制提 |
|
[OpenSymphony]compass学习笔记3 软件技术
lhwork 发表于 2006/12/4 10:39:03 |
通用元数据提供了将元数据名称和别名定义从osem文件提取到外面的方式。当你的应用程序有大量的域模型时尤其有用。另外一个优势就是添加额外的信息倒元数据中,不如描述。也能制定元数据定义的格式,这样就不用在osem 文件中定义了 。 通过集中话元数据,其它工具也能更好地利用这些信息。 OSEM文件引用通用元数据的方式是采用${}.
query syntax: jack :缺省的查询域中包括jack字段。 jack london:缺省的查询域中包括 jack 或 london, 或者2者都有。 +jack +london: 缺省的查询域中必须包括jack和london。 name:jack:name字段中包括jack。 name:jack -city:london :name字段中包括jack但是city字段中不包括london。 name:"jack london" :name字段中包括jack london短语。 name:"jack london"~5 :name字段包括至少 |
|
[OpenSymphony]compass学习笔记2--对象搜索引擎映射 软件技术
lhwork 发表于 2006/12/4 10:38:28 |
索引的对象遵循以下原则: 实现默认的无参数构造器,不要是public的。便于compass采用Constants.newInstance() 提供identifier, 提供访问和设置方法 建议重载equals和hashcode方法。建议以业务主键为参考。
alias:每一个影射定义都注册了一个别名。这个别名用来联系类的osem定义和类本身。 Root:在compass中有两类可搜索的类:root searchable和non-root searchable 类。root searchable类最好定义作为hits结果返回的类。non-root searchable类不要求定义id影射。
子索引:默认情况下,每一个root searchable类都有自己的子索引,名称缺省为alias。子索引的名称也可以自由控制。允许几个root searchable类索引到相同的子索引中。或者用子索引hash功能。
searchable id不要求定义搜索的元数据,如果没有定义,compass自动创建内部的元数据i |
|
[OpenSymphony]compass学习笔记1 软件技术
lhwork 发表于 2006/12/4 10:36:22 |
Compass概念: 1:Compass相当于hb的SessionFactory 2:CompassSession相当于hb的Session 3:CompassTransaction相当于hb的transaction。
Compass
也是采用CompassConfiguration(装载配置和映射文件)进行创建的。创建Compass时将会链接已经存在的索引或者创建一个新的索
引。当Compass创建完后,就可以用compass得到compassSession。compassSession主要是起管理搜索引擎的数据。和
hb的SessionFactory一样,compass通常在系统启动时创建,在所有compassSession创建时使用。
当使用CompassSession查询数据时,将会返回CompassHits接口的实例。compassHits可以得到scores,resources和mapped objects.
Compass也提供了CompassTemplate和CompassCallback类处理会话 |
|
[Struts 2.0]Struts 应用转移到 Struts 2 ( 二 ) 软件技术
lhwork 发表于 2006/11/30 13:37:07 |
在上篇文章中,我们已经从较高层解释了整个框架的结构,请求流程的基础,配置方式和Struts2和Struts1的不同之处。了解这些后从Struts 应用 迁移到 Struts 2 不再是难事。 在这篇文章中,我们将会更详细地讲述如何由Struts 的action转为Struts 2的action。
一个应用的例子 这个例子选择了大家都熟悉的 - weblog. 简单地介绍下这例子的功能需求: 增加一个新的日志 察看一个日志 修改一个日志 删除一个日志 列出所有日至 |
|
[Struts 2.0]Struts 应用转移到 Struts 2 (一) 软件技术
lhwork 发表于 2006/11/30 13:36:11 |
有很多人都很熟悉 Struts, 无论是从项目中直接获得的实战经验还是从书中了解到的。我们这一系列文章,将通过一个由 Stuts 转移到 Struts2 简单的例子向大家展现Struts2的所有特征。
在我们开始这个例子之前,你需要去知道一点 Struts2的背景知识。
在第一部分的文章中,我们将介绍Struts2与Struts的核心框架的不同点,以助于更好地了解其他方面的整合。第二部分中,我们将深入探讨
actions 的差别, action相关的框架特征,和action配置。在最后一部分中,我们将会讲述 user
interface,我们也会讲到其架构,UI构件,themes 和标签。 还有如何为你的应用加上新的外观。 我们并不打算谈及迁移过程的所有细节方面,我们只是从出发点开始介绍Struts2 的概念和现在可用的所有特征。但拥有这些知识,你将在以后Struts2的应用中无往而不利。
|
|
[集成测试]Selenium备忘手册 软件技术
lhwork 发表于 2006/11/30 13:34:07 |
最近的项目准备用Selenium作一部分的Regression Test。在SpringSide里参考了一下,又下了个Selenium IDE玩玩,觉得还蛮容易上手,基本上不需要手动写测试代码。 但实操起来时面对各种复杂的页面情况遇到不少麻烦。感觉Selenium 的offical documentation写的比较high level, 最后找了个though works的ppt,算得上比较全面易懂。匆匆翻译了一下,供后来者参考。 一、 格式 1. Test Case 格式
2. Test Suites 格式
|
|
站点首页 | 联系我们 | 博客注册 | 博客登陆
Sponsored By W3CHINA W3CHINA Blog 0.8 Processed in 0.736 second(s), page refreshed 144773228 times. 《全国人大常委会关于维护互联网安全的决定》 《计算机信息网络国际联网安全保护管理办法》 苏ICP备05006046号
|