博文

XFire WebService搭建(2011-06-23 19:43:00)

摘要:如果你的项目需要用到webservice接口,那么这篇文章就是个非常好的例子: 1、webservice分为服务端、客户端。 2、服务端接口:     web.xml文件中添加   <servlet>
  <servlet-name>XFireServlet</servlet-name>
    <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>XFireServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
  </servlet-mapping>     在/WEB-INF/classes目录下面创建 META-INF/xfire,并在该目录下放置services.xml,内容如下:   <?xml version="1.0" encoding="UTF-8"?>
<beans>
    <service xmlns="http://xfire.codehaus.org/config/1.0">
        <name>xfireService</name>

阅读全文(3189) | 评论:0

Ext  renderer(2011-04-09 10:00:00)

摘要: renderer:function(value, cellmeta, record, rowIndex, columnIndex, store){       }     1.value是当前单元格的值    2.cellmeta里保存的是cellId单元格id,id不知道是干啥的,似乎是列号,css是这个单元格的css样式。    3.record是这行的所有数据,你想要什么,record.data["id"]这样就获得了。    4.rowIndex是行号,不是从头往下数的意思,而是计算了分页以后的结果。    5.columnIndex列号太简单了。    6.store,这个厉害,实际上这个是你构造表格时候传递的ds,也就是说表格里所有的数据,你都可以随便调用,唉,太厉害了。 ......

阅读全文(2820) | 评论:0

webwork介绍四(2011-02-18 12:48:00)

摘要: WebWork 实战和技巧 限于篇幅,我们无法在本章节给出很多详尽的具体实例。其实,在WebWork的代码包中,有一个非常好的演示项目——showcase,它用例子演示了WebWork的几乎所有特性。值得初学的朋友反复研究。我们在本章节中会截取其中的部分代码脚本。   1、  多视图支持。WebWork框架天生支持多种视图技术,包括:Jsp、FreeMarker、Velocity、Jasper Reports、XSLT,还有其它的视图技术。这将在敏捷项目中特别有用。在我咨询的项目中,就有一个因为技术的原因,视图技术由最先的Jsp改为Velocity,后来又改造为FreeMarker。其中,Action类以及后台的程序没有做任何的改动。如果您需要一个视图展现层技术,我在这会好不犹豫的向您推荐FreeMarker。这也是官方的推荐。 关于视图技术的使用,首先是搭建视图技术运行的环境。然后就是编写页面脚本,最后就是在xwork.xml文件中配置。Xwork配置文件中,Result的type参数,就是用来标示所使用的视图技术。在showcase项目中,使用到的视图技术有:Jsp、FreeMarker、Velocity、Jasper Reports。   2、  Action的数据验证功能。在WebWork中,可以在三处实现数据验证功能。一、验证文件(例如:ActionClass-validation.xml文件)中定义数据验证规则。二、在Action中实现com.opensymphony.xwork.Validateable接口的validate方法。三、在Action的执行方法中,硬编码实现验证功能。当然,在实现验证时,我们尽可能的用前面两中方法。 关于验证的说明: 1)、第一种验证需要“validation”拦截器的支持。并可以从任意层次绑定验证文件,可以为一个Action类绑定一个验证文件,也可以为一个具体在xwork.xml文件中的Action定义绑定一个验证文件,......

阅读全文(2671) | 评论:1

webwork介绍三(2011-02-18 12:48:00)

摘要: WebWork 原理 通过上面的例子,我们已经了解WebWork开发、运行的基本流程(一定要亲自安装,并开发这个Welcome的例子哦)。如果要在实际项目中使用WebWork,我们必须要了解下面的概念和WebWork的原理。   ValueStack( 值堆栈 ) 和 EL( 表达式语言 ) 关于ValueStack的描述: 1、  ValueStack其实就是一个放置Java对象的堆栈而已,唯一特别的是可以使用EL来获得值堆栈中对象属性的数据,并可以为值堆栈的对象属性赋值。 2、  EL,全称Express Language,即表达式语言。不要被语言吓倒,它是简单的对象导航语言。有字符串(例如:方法名)和特殊字符组成(例如用.表示调用对应的属性方法)。通过EL,我们可以存、取对象数据,而且还可以直接访问类的静态数据,调用静态方法。 3、  WebWork的ValueStack底层有第三方开源项目OGNL实现。所以EL也都遵循OGNL的规范。我们在开发中,几乎不需要知道OGNL的细节。 4、  WebWork为每一次请求构建一个ValueStack,并将所有相关的数据对象(例如:Action对象、Model对象等)放到ValueStack中。再将ValueStack暴露给视图页面,这样页面就可以直接访问后台处理生成的数据。 下面我们用一个雇员类为例,使用Junit框架(单元测试框架)来展示ValueStack的功能。 我们有一个Employee类,它有两个属性:姓名,地址。姓名是一个字符串,地址是一个对象,地址类有国家、城市、街道三个属性。代码如下: Employee.java代码如下: public class Employee {    ......

阅读全文(2228) | 评论:0

webwork介绍二(2011-02-18 12:47:00)

摘要: WebWork 入门 WebWork 安装 如果只是搭建一个WebWork开发环境,那将非常简单: 1、  去网站http://www.opensymphony.com/webwork下载最新的WebWork2.2.2项目。 2、  搭建一个Web应用(这个不难吧);并拷贝WebWork框架运行需要的所有Jar文件到Web应用的WEB-INF\lib中。这些Jar文件,可以在WebWork项目中lib\default目录找到,即那个目录里面的所有文件。当然,别忘记今天的“主角”,在WebWork跟目录下的webwork-2.2.2.jar文件。 3、  在Web.xml文件中配置WebWork的前端控制器FilterDispatcher,也就是一个普通的Servlet Filter(过滤器)而已。代码如下:     < filter >         < filter-name > webwork </ filter-name >         < filter-class > com.opensymphony.webwork.dispatcher.FilterDispatcher </ filter-class > ......

阅读全文(2328) | 评论:0

webwork介绍一(2011-02-18 12:47:00)

摘要: 前言 本篇文章并没有太多WebWork 的实战代码细节。本人非常希望能充当一名导游的角色,带领读者逐步游览WebWork的功能特性和原理。在第一章,我们将提出基于三层架构的Web层需要解决的10个问题,这是本文的纵轴。围绕着纵轴,我们按照横轴的顺序逐步描述讲解:WebWork简介、WebWork入门、WebWork原理、WebWork实战和技巧、展望WebWork未来、最后是本文的总结。 基于三层架构的 Web 层需要解决的问题 我们这里讨论的Web层,是基于典型的三层架构:Web层,业务层,数据层。故,我们将不讨论任何涉及业务(业务逻辑)层和数据层功能的实现。 Web层需要解决的问题: 1、  数据的输入。如何获得基于无状态HTTP的请求数据?如何将请求的字符数据转换为对应的模型对象? 2、  输入数据的验证。如何验证输入数据的合法性并给出明确的错误消息提示 ? 3、  数据的输出。如何展现复杂的对象结构?如何处理复杂的展现逻辑? 4、  数据的传递和共享。如何在不同的请求或页面之间传递和共享数据? 5、  页面的流程管理。如何管理Web应用中的页面流程? 6、  模块化的管理。如何将复杂的Web应用以模块化的方式管理? 7、  灵活可扩展的架构。如何支持各种不同的展现层技术?如何与业务层或数据层的各种框架整合? 8、  安全和访问控制的管理。如何提供基于Web的安全机制和资源访问控制的管理? 9、  代码实现的......

阅读全文(2755) | 评论:0

Ext表单验证(2010-07-29 18:56:00)

摘要:
//放在onReady的function(){}中
Ext.QuickTips.init(); //为组件提供提示信息功能,form的主要提示信息就是客户端验证的错误信息。
Ext.form.Field.prototype.msgTarget='side'; //提示的方式,枚举值为:

qtip-当鼠标移动到控件上面时显示提示;
title-在浏览器的标题显示,但是测试结果是和qtip一样的;
under-在控件的底下显示错误提示;
side-在控件右边显示一个错误图标,鼠标指向图标时显示错误提示. 默认值;
id-[element id]错误提示显示在指定id的HTML元件中

1.一个最简单的例子:空验证

//空验证的两个参数
1.allowBlank:false//false则不能为空,默认为true
2.blankText:string//当为空时的错误提示信息

js代码为:
var form1 = new Ext.form.FormPanel({
width:350,
renderTo:"form1",
title:"FormPanel",
defaults:{xtype:"textfield",inputType:"password"},
items:[
{fieldLabel:"不能为空",
allowBlank:false, //不允许为空
blankText:"不能为空", //错误提示信息,默认为This field is required!
id:"blanktest",
}
]
});

2.用vtype格式进行简单的验证。
在此举邮件验证的例子,重写上面代码的items配置:
items:[
{......

阅读全文(4789) | 评论:2

计算机网络安全(2010-07-12 17:23:00)

摘要:衡量一个计算机网络的安全性,通常采用以下5个指标。 ◆保密性:指保护网络中的信息不被非法窃取。 ◆完整性:指保护网络中的信息在存储介质中或在传输过程不被篡改或破坏,也不发生信息分组的丢失或错序等事件。 ◆可用性:指在资源主机中的资源的可用性与可操作性,包括网络系统的正常运行。 ◆真实性:也包括有可验证性,主要指信息的可信度,包括发送或接受人员的身份证实以及提供信息的完整性、时效性和准确性等。 ◆实用性和占有性:指保证信息与有关资源的可利用价值。 为了实现上述的安全性指标,需要有安全机制来加以保证。 u        标识与验证机制 u        网络访问控制机制 u        加密机制 u        信息完整性机制 u        认证和审计机制 涉及网络信息安全的技术很多。 u        访问控制与目录管理 u        数据加密 u        身份验证与鉴别 u        TCP/IP安全协议(kerberos和SSL/SHTTP)......

阅读全文(2032) | 评论:0

Ext.Grid详解(2010-06-29 14:26:00)

摘要:首先,一个表格应该有列定义,即定义表头ColumnModel:
// 定义一个ColumnModel,表头中有四列
var cm = new Ext.grid.ColumnModel([
     {header:'编号',dataIndex:'id'},
     {header:'性别',dataIndex:'sex'},
     {header:'名称',dataIndex:'name'},
     {header:'描述',dataIndex:'descn'}
]);
cm.defaultSortable = true;
    该ColumnModel定义了表格的四个列,其每列的名称和对应的数据键。请注意defaultSortable属性,即为每个列都安上一个可以排序的功能。如果只想某些列举有该功能,可以设置:
{header:'编号',dataIndex:'id',Sortable:true}, 现在就来看看这个Ext.data.Store是如何转换三种数据的。 1.二维数组:
// ArrayData
var data = [
     ['1','male','name1','descn1'],
     ['2','male','name1','descn2'],
     ['3','male','name3','descn3'],
     ['4','male','name4','descn4'],
     ['5','male','name5','descn5']
];
// Array......

阅读全文(5691) | 评论:5

Hibernate映射时必须要设置id,且这个id是唯一值(2010-04-20 15:47:00)

摘要:Hibernate映射时必须要设置id,且这个id是唯一值。如果不唯一则,选择出来的几个对象就会重复。......

阅读全文(2566) | 评论:0