- 博客(46)
- 资源 (29)
- 收藏
- 关注
原创 UTP和TCP他们的区别
[b]UTP[/b][b]和[/b][b]TCP[/b][b]他们的区别在哪,具体是什么?[/b]TCP/IP协议族为运输层指明了两个协议:TCP和UDP。它们都是作为应同程序和网络操作的中介物。 运输层协议通常具有几种责任。一种是创建进程到进程的通信;UDP和TCP使用端口来完成这种通信。另一种责任就是在运输层提供控制机制。UDP在一个非常低的水平上完成这个功能。UDP没有流量控制机制,在收到分
2009-01-27 22:24:00 12986
原创 完成验证
我们已经介绍了Ajax技术,也知道了如何使用XMLHttpRequest对象,现在要把它们结合起来,该怎么做呢?哪些情况下需要应用Ajax技术?当然,Ajax的潜力几乎是无穷尽的,关于Ajax的使用,灵感可能源源不断。本章将展示一些例子,在这些情况下,使用Ajax技术可以让应用突飞猛进。有些情况是一目了然的,有些则不是。不过无论怎样,对Ajax应用积累的经验越多,你就越会找到自己的方法来改善应用。
2009-01-26 22:31:00 2404
原创 发送请求参数
到此为止,你已经了解了如何使用Ajax技术向服务器发送请求,也知道了客户可以采用多种方法解析服务器的响应。前面的例子中只缺少一个内容,就是你尚未将任何数据作为请求的一部分发送给服务器。在大多数情况下,向服务器发送一个请求而没有任何请求参数是没有什么意义的。如果没有请求参数,服务器就得不到上下文数据,也无法根据上下文数据为客户创建“个性化”的响应,实际上,服务器会向每一个客户发送同样的响应。要想
2009-01-26 22:10:00 1590
原创 处理服务器响应
XMLHttpRequest对象提供了两个可以用来访问服务器响应的属性。第一个属性respo-nseText将响应提供为一个串,第二个属性responseXML将响应提供为一个XML对象。一些简单的用例就很适合按简单文本来获取响应,如将响应显示在警告框中,或者响应只是指示成功还是失败的词。第2章中的例子就使用了responseText属性来访问服务器响应,并将响应显示在警告框中。3.1.1
2009-01-26 21:49:00 1085
原创 GET和POST
你可能想了解GET和POST之间有什么区别,并想知道什么时候使用它们。从理论上讲,如果请求是幂等的就可以使用GET,所谓幂等是指多个请求返回相同的结果。实际上,相应的服务器方法可能会以某种方式修改状态,所以一般情况下这是不成立的。这只是一种标准。更实际的区别在于净荷的大小,在许多情况下,浏览器和服务器会限制URL的长度URL用于向服务器发送数据。一般来讲,可以使用GET从服务器获取数据;换句话说,
2009-01-26 16:42:00 557
原创 标准Ajax交互
看到这里,你可能想知道典型的Ajax交互是什么样。图2-1显示了Ajax应用中标准的交互模式。图2-1 标准Ajax交互不同于标准Web客户中所用的标准请求/响应方法,Ajax应用的做法稍有差别。1. 一个客户端事件触发一个Ajax事件。从简单的onchange事件到某个特定的用户动作,很多这样的事件都可以触发Ajax事件。可以有如下的代码:2. 创建XMLHttpRequ
2009-01-26 16:38:00 1367
原创 远程脚本
基本说来,远程脚本是一种远程过程调用类型。你可以像正常的Web应用一样与服务器交互,但是不用刷新整个页面。与Ajax类似,你可以调用任何服务器端技术来接收请求、处理请求并返回一个有意义的结果。正如在服务器端有很多选择,客户端同样有许多实现远程脚本的选择。你可以在应用中嵌入Flash动画、Java applet,或者ActiveX组件,甚至可以使用XML-RPC,但是这种方法过于复杂,因此除非你使用
2009-01-26 16:36:00 731
原创 2.6 如何发送简单请求
最简单的请求是,不以查询参数或提交表单数据的形式向服务器发送任何信息。在实际中,往往都希望向服务器发送一些信息。使用XMLHttpRequest对象发送请求的基本步骤如下:1. 为得到XMLHttpRequest对象实例的一个引用,可以创建一个新的实例,也可以访问包含有XMLHttpRequest实例的一个变量。2. 告诉XMLHttpRequest对象,哪个函数会处理XMLHttpR
2009-01-26 16:22:00 590
原创 关系运算符和等于运算符
有些Groovy控制语句,如if和while控制语句(参见第8章),通常会使用条件(condition)来进行判断。条件决定表达式的值为真或者假。关系运算符、等于运算符和逻辑运算通常被用于构造条件表达式(附录C会详细讨论逻辑运算符)。关系运算符如表2-5所示。四种运算符均为二元运算符,每种运算符都使用两个算术表达式作为操作数,并且得出布尔型结果true或者false。true和false都是B
2009-01-25 03:22:00 1660
原创 赋值
赋值运算符(assignment operator)允许将某个数值赋给一个程序变量。赋值语句的最简单形式是:variable = expression赋值运算符(=)的作用是,先求赋值表达式右边的值,然后将计算的结果赋给它左边的变量。下面是赋值语句的一些例子:interest = principal * rate * time / 100speed = distance / timet
2009-01-25 03:21:00 537
原创 自增和自减运算符
Groovy也支持两个一元运算符,以实现对某个数字变量的加一或者减一操作。一元运算符是指应用于一个操作数的运算符。通常,它们就是所说的自增运算符++和自减运算符--。比如,value = value + 1可以写成:value++同样,也可以使用value--来替代value = value - 1严格地说,把自增或者自减运算符放在变量的前面,也经常被称为前置自增或者前置自减运算法,表示对
2009-01-25 03:21:00 1122
原创 对象引用
在赋值语句age=25中,使用Groovy的动态类型(dynamic typing)功能。age变量所引用值的类型是在其运行过程中,而不是在编译时确定的。动态类型通常会使程序变得更为简洁,这也是Groovy之所以简洁与灵活的的主要原因。执行此赋值语句时会创建一个Integer对象,并将25赋值给它,变量age的引用关系如图2-1所示。图2-1 变量与对象引用原文
2009-01-25 03:21:00 406
原创 运算符优先级
像通常一样,Groovy表达式也是根据运算符的优先级来计算的。运算符的运算次序或者优先级决定了算术表达式的计算次序。表2-4列举基本算术运算符的运算顺序(如想获得全部的列表,以及有关运算符结合性方面的更深入知识,请参见附录C)。从表2-4可以看出,乘法、除法和取模运算符具有相同的最高优先级,而加法和减法运算符具有相同的最低优先级。在同时含有这些运算符的表达式中,将首先执行所有的乘法、除法以及取
2009-01-25 03:20:00 1407
原创 表达式
2.2 表达式Groovy提供大量适用于数值类型的运算符,包括常见的算术运算符、比较运算符、位运算符,以及其他各种类型的运算符。表达式(expression)通常用来描述某些计算行为,由运算符和操作数组成。算术运算符(arithmetic operator)包括加法(+)、减法(-)、乘法(*)和除法(/)。Groovy同样也支持取模运算符,用百分号表示(%);取模运算用来计算两个整数相除的余
2009-01-25 03:19:00 825
原创 数值
2.1 数值Groovy支持整数和浮点数。整型值没有分数部分。浮点数是包含十进制小数部分的十进制数。整数可能是正数、负数或者零。12345、-44和0是常见的整数形式。就像前面说到的那样,它们都是Integer类的实例。有小数部分的数值是BigDecimal类的实例。浮点数的例子如1.23,-3.1415926。请注意,浮点数必须避免以小数点开始,防止出现混淆,比如必须使用0.25,而
2009-01-25 03:18:00 362
原创 为什么使用Groovy
Java编译器会产生可以在Java虚拟机上运行的字节码。Groovy类和Java是二进制兼容的。这意味着,Groovy编译器产生的字节码与Java编译器产生的字节码是完全一样的。因此,对JVM而言,Groovy和Java是完全一样的。这就等于说,Groovy能够完全使用各种Java API,诸如用于数据库开发的JDBC(Fisher et al., 2003),以及用于开发GUI应用程序的Swin
2009-01-25 03:16:00 1751
原创 数值和表达式
在本章中,将集中讨论如何使用Groovy来处理基本的数值类型。在这个过程中,尤为重要的是,必须认识到Groovy是一门面向对象的语言。这也就是说,Groovy中每一个事物最终都会被当作某些类的一个实例对象。举例来说,在Groovy中,大家非常熟悉的整数123实际上是Integer类的一个实例。为使用一个对象以实现相关功能,必须调用所属类声明的某个方法。因此,在Groovy环境下,可以使用123.a
2009-01-25 03:16:00 662
原创 为什么使用脚本语言
本书第1章简要介绍Groovy,这是设计用来增强Java平台的唯一的脚本语言。它提供类似于Java的语法,内置对如下主题的支持:映射(Map)、列表(List)、方法、类、闭包(closure),以及生成器。依赖于动态的弱类型,以及对Java应用程序接口(API)的无缝访问,Groovy语言非常适合于开发小型和中型应用程序。1.1 为什么使用脚本语言一般来说,脚本语言,比如Groovy,具
2009-01-25 03:14:00 673
原创 EJB 3.0和Spring的抉择
本文比较了EJB 3.0和Spring在传递POJO服务时采用的不同方法,供大家参考!EJB 3.0和Spring在传递POJO服务时采用了完全不同的方法,这使得开发者在实施POJO时不得不进行艰难的选择。 对于POJO的开发,存在着两种框架EJB 3.0和Spring,这两个框架组件的核心设计理念是相同的:把中间件服务传递给松散耦合的简单旧式Java对象(POJO)。这些框架组件通过在运
2009-01-25 00:55:00 374
原创 EJB的存根和骨架的工作原理(5)
拿Weblogic上的EJB举例子,10个class分别是:Bean类:HelloBean (用户编写)Bean类的Weblogic实现类:HelloBean_Impl (EJBC生成)Home接口:HelloHome (用户编写)Home接口的Weblogic实现类 ((Hello Bean))_HomeImpl(EJBC生成)Home接口的Weblogic实现类的stub类 ((Hello
2009-01-25 00:35:00 632
原创 EJB的存根和骨架的工作原理(3)
从第二步开始,就是我们的关注所在,虽然只有简单的一行代码,UserService object = home.create(); 但是他背后的系统是怎么运做的呢?我们进入代码来看吧!1、调用home.create() 代码:UserServiceHome home; UserService obj = home.cre
2009-01-25 00:31:00 595
原创 EJB的存根和骨架的工作原理(4)
4、Skeleton调用的是UserService的Server端实现类的getUserInfo方法 代码: EJSRemoteStatelessUserService_a940aa04.getUserInfo() { UserServiceBean _EJS_beanRef = container.preInvoke(this, 0, _EJS_s); _EJS_re
2009-01-25 00:31:00 466
原创 EJB的存根和骨架的工作原理(2)
摘要:本文是作者对EJB工作原理的学习笔记,包括有RMI工作原理、Websphere实现、Weblogic实现和自己总结的理解体会,供大家参考! 5、最后一个,Client的实现代码:public class PersonClient { public static void main(String [] args) { try { Person person =
2009-01-25 00:30:00 605
原创 EJB的存根和骨架的工作原理(1)
摘要:本文是作者对EJB工作原理的学习笔记,包括有RMI工作原理、Websphere实现、Weblogic实现和自己总结的理解体会,供大家参考!一、RMI工作原理RMI的本质就是实现在不同JVM之间的调用,它的实现方法就是在两个JVM中各开一个Stub和Skeleton,二者通过socket通信来实现参数和返回值的传递。 有关RMI的例子代码网上可以找到不少,但绝大部分都是通过exte
2009-01-25 00:29:00 615
原创 Groovy轻松入门——Grails实战之Web Flow篇
摘要:Spring Web Flow是Spring家族中的一位成员,他能简化Web应用的开发。在Grails0.6中就集成了Spring Web Flow这一Web应用开发利器。下面通过一个实例向大家展示一下在Grails中如何方便的使用Spring Web Flow。 Spring Web Flow是Spring家族中的一位成员,他能简化Web应用的开发。在Grails0.6中就集成了Spr
2009-01-25 00:28:00 2730
原创 在Groovy1.0中使用闭包和集合
摘要:闭包是很多动态语言提供的一个很方便的功能,它有点像Java中的内部类,不同的是闭包中只有一个方法,但这个方法可以有任意个参数。 1、闭包闭包是很多动态语言提供的一个很方便的功能,它有点像Java中的内部类,不同的是闭包中只有一个方法,但这个方法可以有任意个参数。java 代码这段代码会输出”hello world”。1. def closure = { param
2009-01-25 00:26:00 488
原创 Groovy高效编程——动态改变对象的能力(2)
而从Groovy1.1beta-3开始,Groovy的动态性有了进一步的增强:我们可以通过respondsTo和hasProperty方法来判断是否存在某个方法和某个属性:class Person {String namepublic Person(name) {this.name = name}def introduce() {println "Im $name"}de
2009-01-25 00:25:00 591
原创 Groovy高效编程——动态改变对象的能力(1)
从Groovy1.1beta-2开始,实现动态改变对象的能力变的十分简单:一开始,我们有这样一个类:class Person {String name}该类的实例都是哑巴,不能说话,作为造物主的我们该完善它们,使它们能自我介绍(添加实例方法): class Person {String name}// 添加自我介绍的行为Person.
2009-01-25 00:24:00 640
原创 Groovy高效编程——‘匕首方法’的使用
Groovy提供了许多‘匕首方法’来提升开发者的开发效率,但常被Java开发人员忽视。在这篇随笔中我将为您演示各方法的使用。Groovy提供了许多‘匕首方法’(匕首,短小精悍也~如each,eachWithIndex, any,every,grep,join,sort,find,findAll,collect,groupBy,inject,reverse, tokenize, unique,m
2009-01-25 00:23:00 591
原创 Groovy高效编程——统计单词频率
摘要:Groovy横空出世,她几乎兼容Java的所有语法,Groovy至少已经具备了继承未来主流语言王位的必要条件--语言本身是利用当前主流语言所编写,并与当前主流语言的语法相似,且能够结束当前主流语言的弊病。 在搜索引擎,语音识别等领域常会统计单词的出现频率,下面给出Groovy实现,打印出现频率最高的6个单词以及相应的出现次数: def content
2009-01-25 00:22:00 856
原创 Groovy轻松入门——Grails实战之Ajax篇
Ajax虽是“旧酒装新瓶”,但其威力着实不小。近两年来可谓红透半边天,它之所以能为大众接受,其中一个很大的原因就是提高了用户浏览体验,能更逼真的模拟出GUI界面。好了,Ajax的益处就说到这里,下面让我们看下Grails是如何帮助我们方便地应用Ajax的:如果您对下面说设计的内容有点不解,那么您可以先看一下 Groovy轻松入门——Grails实战基础篇,然后开始我们的Ajax之旅。1,
2009-01-25 00:20:00 866
原创 Groovy轻松入门——Grails实战之GORM篇
摘要:GORM就是以前我刚学Groovy没多久时想实现的功能,它使开发人员不需要关心数据库方面,也不需要任何配置,只需专心用OO思想设计自己的系统,还有一个好处就是开发时不用备份数据库,因为GORM会自动帮你建表以及约束(但数据库需要你自己建),让我们来看一下用Grails开发是多么简单高效吧! 在写域类时,无须添加与业务无关的属性,比如在用Hibernate时,我们需要(不强制)在类中定
2009-01-25 00:19:00 1088
原创 Groovy轻松入门——Grails实战基础篇(4)
ok.gsp:9,修改demo/grails-app/conf/ApplicationBootStrap.groovy,将一个User实例保存到数据库(grails自带hsqldb和jetty)中,内容如下:class ApplicationBootStrap { def init = { servletContext -> new
2009-01-25 00:18:00 692
原创 Groovy轻松入门——Grails实战基础篇(2)
通过“grails create-app”这个命令,Grails自动帮我们创建了开发所需的工程环境。其实您现在就已经拥有了一个可运行的Web应用程序,然后进入demo目录(“cd demo”),输入“grails run-app”,回车,启动这个‘五脏俱全’的程序雏形,打开浏览器,输入 http://localhost:8080/demo ,回车,看到了吧 :) 让我们继续吧,请停止这个程序(Ct
2009-01-25 00:17:00 639
原创 Groovy轻松入门——Grails实战基础篇(3)
4,在“命令行”中,输入“grails create-controller Login”,创建登陆(login)的控制器LoginController,它对应MVC中的Controller,让它负责登陆相关业务,输出如下:D:/Temp/grails_apps/demo>grails create-controller LoginWelcome to Grails 0.
2009-01-25 00:17:00 859
原创 Groovy轻松入门——Grails实战基础篇(1)
在学习任何东西之前,最重要的是培养兴趣,Groovy世界最耀眼的技术之一--Grails相信大家早已耳闻,我将通过Grails实战系列文章向您展现Grails的迷人风采,使您感受到Grails的魅力,以至疯狂地爱上Grails,并坠入Groovy的爱河。学Groovy,Grails与学Java一样,在实战之前需要搭建开发环境,您可以在 Groovy轻松入门--搭建Groovy开发环境 学习到如何搭
2009-01-25 00:16:00 597
原创 Groovy轻松入门——通过与Java的比较,迅速掌握Groovy(2)
6. Groovy中的注释比Java多了首行注释#!,其他与Java相同比如单行注释:// 多行注释:/* */ 或者是 支持javadoc的/** */Java:/* * 多行注释 *//** * javadoc 注释 */// 单行注释}Groovy:#! 首行注释,使Un
2009-01-25 00:14:00 663
原创 Groovy轻松入门——通过与Java的比较,迅速掌握Groovy(3)
19.在varargs方法方面,Groovy与Java稍有区别,如下所示:Java:// Java: public void varargsMethod(Type args) { //do something}Groovy:def varargsMethod(Type[] args) { //do someth
2009-01-25 00:14:00 582
原创 Groovy轻松入门——通过与Java的比较,迅速掌握Groovy(1)
Groovy和Java的相同点有:3+, 4+, 6+, 8+, 10+, 12+, 13, 14, 15, 18+, 20+, 21, 22, 23, 28+, 29+, 30+, 31+, 32+ +表示Groovy不但涵盖了Java的语法,而且还有增强部分。Groovy和Java的不同点有:0, 1, 2, 5, 7, 9, 11, 16, 17, 19, 24, 25, 26, 2
2009-01-25 00:11:00 502
原创 Groovy轻松入门——搭建Groovy开发环境
既然是入门,我先不介绍那些IDE的东西,比如Eclipse中的Groovy插件(如果您迫不及待的话,可以先看一下安装Groovy的Eclipse插件),我先讲一下如何设置Groovy的环境变量(我目前所用的系统是Windows XP),最后运行一个Hello, world程序告终。Groovy既然是Java帝国的王储,当然少不了Java的支持。0,先安装JDK(推荐版本为1.5及1.5以上
2009-01-25 00:05:00 584
C#制作PDF文件全攻略
2008-12-29
Ecma-262.pdf
2008-12-29
datagridview 分页
2008-12-20
DataGridView导出execl
2008-12-20
DataGridView在winform
2008-12-20
Struts2百度百科
2008-11-30
struts1 与struts2的区别
2008-11-30
number 对数字的处理
2008-10-21
windows 对计算机的各种命令
2008-10-21
java内部类的使用
2008-10-21
关于web回话跟踪session
2008-10-21
search searchs earch search
2008-09-30
Linux命令Linux
2008-09-30
jsp聊天
2008-06-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人