导航:首页 > 净水问答 > javarecordset过滤器

javarecordset过滤器

发布时间:2022-08-21 05:05:05

㈠ 急求一java script脚本,最简单最简单那种!~

<script language="JavaScript">
<!--
function test(){
var a = document.getElementById("a").value;
var b = document.getElementById("b").value;
if(a == 'ADMIN' && a == b)
window.open("ww.htm", "test");
else
alert("Access denied!");
}
-->
</script>

<body>
<input type="text" id="a">
<input type="text" id="b">
<input type="button" value="ok" onClick="test();">
</body>

㈡ 需要关于MIS系统开发的JAVA语言的一个关于工程的程序.

基于动态Web页面上的MIS系统
引 言
随着Internet的日益普及,越来越多的企业着手组建公司Intranet网,以提高企业效率,增加企业竞争能力.然而,目前国内大多数企业的MIS系统仍只是局限于公司内部网,因而存在如下不足:①无法充分利用Internet上的丰富资源;②不能建立企业与合作伙伴或有业务来往公司的信息互访;③对于在外企业人员,无法做到即时交互信息;④对于分公司或下属企业,无法做到统一的信息管理.开发企业基于Web页面上的MIS系统,可以:①减少日常开销,节约办公室经费,实现无纸化办公;②加快单位内部的信息流动,提高工作效率;③加强部门与员工之间、领导与部门之间的联系和沟通;④增强企业的凝聚力,树立团队精神;⑤加强本单位与外部相关单位和人员的联系;⑥为企业提供跨计算机平台的信息访问能力,方便连入Internet.本文针对建立基于Web页面上的MIS系统过程中主要存在大量动态数据访问和显示效率等问题,在开发设计深圳市给排水工程建设指挥部MIS系统的过程中,利用MIIS(Microsoft Internet Information Server4.0)中的ASP(Active Server Pages)技术把MIS系统建立在Web页面上,并采用MTS(Microsoft Transaction Server 1.0)作为中间服务器,构成3层结构,通过创建Web动态数据页面,简化连接和访问数据库的过程,提高了数据管理的访问事务,从而在Internet网上建立了可行的MIS系统.

1 基于Web的3层结构和基于Web的工作流
构造一个实用的基于Web的MIS系统,首先必须实现动态Web站点,创建Web动态数据页面,简化连接和访问数据库的过程,提高数据库访问事务,建立高效的业务应用对象和部件,从而加快网上传输效率,使基于Web的MIS系统实现远程传输成为可能,其中最关键的是3层服务器结构及合理的工作流方式.
1.1 三层客户端/服务器体系
传统的(或两层)客户端/服务器计算机一般只涉及到一台服务器,该服务器连接了无数客户端.它允许一台机器来控制对一个资源(如一个SQL数据库)的访问,但是每个网络连接都增加一定量的开销.服务器在管理这些开销时很快会陷于停顿,涉及到许多客户端连接时尤其如此.一个超负载的服务器只有很少的资源可用于完成各种任务如管理对数据库的访问.如图1中用于管理网络连接的开销消耗CPU总能力的大部分(黑色部分),而只有小部分的CPU处理能力可用于处理对SQL(Structured Query Language)数据库的访问(白色部分).

图1 两层客户端/服务器结构体系图
Fig.1 The fig.of two layers structure of users/server

为了减少一些网络通信开销,可在客户端和服务器之间安放一个中间层即中间服务器.这种体系结构为三层客户端/服务器结构,如图2.三层结构中,中间服务器处理网络请求的开销,然后将客户端请求复用到SQL服务器的网络连接上,由于该SQL服务器只管理一个网络连接,因此减少了用于网络访问的CPU资源数量,从而释放了SQL服务器的CPU资源,并使它以更快的速度为请求服务.本系统中,以MIIS作为Web服务器,以MTS作为中间服务器,以SQL Server 7.0实现数据库.由于MIS是一个基于组件的事务处理系统,用于开发、配置以及管理高性能的、可测的和可靠的企业、Internet及Intranet服务器应用程序,它定义了一个编程模型来开发分布式、基于组件的应用程序,还提供了一个运行时基础环境和一个图形工具来配置和管理这些应用程序.MTS与MIIS紧密地集成在一起,为Web上的事务应用程序创建了最好的平台.系统层次如图3.

图2 三层客户端/服务器结构体系图
Fig.2 The fig.of triple layers structure of users/server

图3 系统层次图
Fig.3 The fig. of system arrangement

1.2 基于Web的工作流理论及其实现
任一基于Web的程序模块由4部分构成:①是处于数据库服务器端的“Data Liberay”,它负责整个系统的数据库管理工作;②是通过VB创建的ActiveX控件,它通过ADO(ActiveX Data Object)技术与数据库相连,是模块的主要设计和编程部分;③是数据源部分,它是利用DCOM或ADO Recordset模式与ActiveX建立连接,它在VB中表现为ADO控件或ADO代码编程等;④是直接面向客户端的用户,本系统主要是采用DHTML方式在Web页上发布.
基于Web的程序模块示意如图4.

图4 基于Web的程序模块示意图
Fig.4 The sketch map of programme mole on Web

目前,访问数据库有以下5种模式:①以VBSQL为接口界面,通过DB-Library访问微软的SQL Server;②以DAO/JET为接口界面,访问本地的JET/Access.MDB,顺序索引数据库(ISAM)和任何ODBC数据源;③以DAO/ODBC Dircet为接口界面,访问任一ODBC数据源(经过RDO);④以RDO2.0为接口界面,访问任一ODBC数据源(Level 1,2);⑤以ADO为接口界面,访问任一ODBC数据源和任何经过OLE DB界面接口的数据源.但只有ADO是唯一为基于Web的数据访问设计的,它提供Web上基于对象的数据访问方法,数据库与任何ODBC数据源的连接可以通过ActiveX脚本很容易地建立起来,且组件中提供了一组强有力的数据库操作命令操纵数据和产生数据驱动的Web主页.
采用Visual Basic和Visual InterDev作为系统开发工具,是一个集应用程序开发、测试和调试等功能于一体的集成式开发系统,可以建立动态Web页面,在客户机的浏览器窗口中显示;可以建立Web服务器上运行的应用程序,与Internet上带MIIS信息服务器的客户相交互.Visual InterDev在一个简单、完整的开发环境下包含了一系列不同的可视化工具,使用者可以生成和管理Web共享事件,自动公布为Web服务器开发的内容,且为Web站点提供更高层的站点管理能力.Visual InterDev包含了可视化数据库开发工具,创建和管理数据驱动的Web站点,在这些站点上,Web页面根据数据库中的数据被动态地创建.此外,Visual InterDev基于一个强有力的Web应用开发框架,支持Active Server Script的Active Server Framework.Active Server Script是内置于Web页面但在Web服务器而不是浏览器上执行的脚本语言.Active Server Script可用来创建带有高级服务器端进程的Web应用,包括含有用VB、VC+ +和VJ+ +语言开发的组件的多层Web应用.使用服务器端组件可容易地将Internet或Intranet中的原有系统结合起来,并保存Web技术的优点,即开放标准、高效率的开发、跨平台的浏览和低频带访问通道.最后,Visual InterDev含有完整的客户脚本工具,它可被第3方组件扩展,如Java进程和ActiveX控件这些可被加入Web页面并完整地应用脚本工具的组件.
采用ASP技术处理Web页面,可以创建为任何浏览器使用的巨大的独立平台内容.从本质上讲,ASP是一种在服务器上的Web页脚本制作,当发生页面请求时,系统动态地判别这种脚本制作代码,且将结果传送到调用的浏览器,这使ASP成为在Internet上运行的应用程序的理想选择,因为所有的浏览器都能浏览它,同时ASP没有最小的特性的限制,因而可以为ASP的输出随意添加客户脚本、ActiveX控件和动态HTML(超文本标记语言),Web页也因此可以实现非常灵活的编程要求.
ASP处理Web页面过程如图5.当发生远程页面请求时,ASP把请求结果以DHTML的方式发送给请求者,而无需把控件、脚本语言代码传送给用户,这就大大加快了网上传输效率,使基于Web的MIS系统实现远程传输成为可能。

图5 ASP处理Web页面过程
Fig.5 The process for ASP treating with Web

Active Server最基本的单元是Active Server页面(ASP)文件.每个ASP文件中的3个表格都有一个是ASCII文件:①文本;②DHTML;③脚本(如VBScript).ASP Web页面是包含服务器端的脚本的HTML页面,图6解释了Active Server如何处理ASP文件的工作流进程.

图6 Active Server 处理ASP文件的工程流进程
Fig.6 The working current for Active Server treating with ASP file

2 系统简介
根据上述关于建立基于Web的MIS系统中关键技术的考虑,结合深圳市给排水工程建设指挥部的具体业务运作情况,系统设计如下:
1.采用Microsoft Windows NT Server 4.0中文版作为服务器平台
Microsoft Windows NT Server 4.0中文版是一个局域网络的服务器操作系统,它提供了一个功能强大、容易使用、高效率、中文信息、集中管理、保密措施完善、自动修复、不断电系统、Internet等理想的网络操作系统所必备的环境.Microsoft Windows NT Server 4.0支持多种操作系统的工作站端,内置良好的安全措施与先进的容错能力及Internet与Intranet功能,集中式的远程管理、网络活动的记录与追踪、效率监视与管理,大大减少了网络管理的时间与费用,是目前最为理想的Web服务器平台.
2.采用MIIS作为Web服务器
MIIS是Windows NT Server的一个扩充部分,两者紧密结合,保证了相同的安全(支持如数字证明、身份验证、防火墙安全等等)、网络和管理功能,使用MIIS可以创建Web站点、改变站点的默认设置、向服务器操作者分配任务、启动和停止站点、管理事务、查看统计资料、本地或远程管理任务等.MIIS使用ASP技术将脚本代码(VBScript、Jscript)、HTML和访问数据的组件集中,使Web实现商业、数据库访问、个性化和动态内容等特性.
3.采用MTS作为事务服务器(中间服务器)
MTS定义了一个编程模型来开发分布式的、基于组件的应用程序.MTS还提供了一个运行时基础环境和一个图形工具来配置和管理这些应用程序.MTS与MIIS紧密地集成在一起,为Web上的事务应用程序创建了最好的平台.
4.采用Microsoft SQL Server作为数据库服务器
Microsoft SQL Server正是在成熟和强大的关系模型中建立的.对于数据库开发者、管理者和用户,Microsoft SQL Server是一个操作方便、功能庞大的系统,它采用SQL来实现、维护和访问数据库,可通过诸如开放式数据连接(Open Database Connecivity,ODBC)的中介组件,使不同客户机相互连接,而对服务器及其它现存客户应用程序不要求变更,它有多种实用程序允许用户访问它的服务,用户可以用这些实用程序对Microsoft SQL Server进行本地和远程管理.
5.在Web页面和ActiveX控件中采用ADO技术访问数据库
6.以Visual Basic及Visual InterDev作为应用程序的开发工具
Visual Basic及Visual InterDev具有功能强大的Intranet/Internet信息系统可视化开发功能,它提供了一套完整的Intranet/Internet数据库应用解决方案和开发工具,为设计人员创建Web动态数据页面提供了有效的支持手段,使得连接和访问数据库的过程大大简化,减少客户对系统维护和系统管理的工作量,提高工作效率.
Visual Basic提供了ADO等数据连接方式,多数的ActiveX控件,强有力且高灵活性的编程能力等,可以利用Visual Basic建立Web站点的大部分应用程序.开发人员还可以使用Visual Basic的ActiveX工具(ActiveX DLL)来开发MTS应用程序.
Visual InterDev可进行Web站点的管理、开发设置.它使用动态HTML、VBScript、Jscript、ActiveX控件,Java进程生成客户端/服务器脚本,是一种实用的Web应用开发工具.
应用Visual Basic和Visual InterDev两种开发工具来开发应用程序,能够很好地满足系统必须具备数据输入、设备的查询及统计等功能.
7.采用ASP技术处理Web页面
8.客户端全部采用Windows 98/95加IE浏览器操作
以上设计方案,既符合深圳市给排水工程建设指挥部的具体业务运作情况,又满足瘦客户端、肥服务器、Web动态数据页面等新兴技术.其主要优点如下:
①优化了动态Web的数据库访问,使得连接和访问数据库的过程大大简化,用户在客户端/服务器实现中能够获得明显的速度优势;
②减少开发费用.由于应用程序是基于服务器的,访问通道是无缝的,使用者可以直接访问站点且不用带附加的安装就可使用应用程序.如果应用程序的功能需要改变,只要在服务器上进行升级便可;
③跨平台的应用程序.应用程序被缺省地表示为HTML页面和跨平台的,可确保所有的用户都能使用应用程序;
④底频应用.由于大多数进程是在服务器上完成的且只有HTML页面被传送给客户(有时带有一些小的、内置组件和脚本码信息),Web应用程序自动地与低频连接相符;
⑤方便的外部连接.只要通过代理服务器(Proxy Server)就可以方便地与Internet连接.

http://www.ieee.org.cn/dispbbs.asp?boardID=41&ID=11660

㈢ VB VB6.0 Recordset对象

这个问题不是VB的问题,建议看下 sql的资料
属性 描述
AbsolutePage 设置或返回一个可指定 Recordset 对象中页码的值。
AbsolutePosition 设置或返回一个值,此值可指定 Recordset 对象中当前记录的顺序位置(序号位置)。
ActiveCommand 返回与 Recordset 对象相关联的 Command 对象。
ActiveConnection 如果连接被关闭,设置或返回连接的定义,如果连接打开,设置或返回当前的 Connection 对象。
BOF 如果当前的记录位置在第一条记录之前,则返回 true,否则返回 fasle。
Bookmark 设置或返回一个书签。此书签保存当前记录的位置。
CacheSize 设置或返回能够被缓存的记录的数目。
CursorLocation 设置或返回游标服务的位置。
CursorType 设置或返回一个 Recordset 对象的游标类型。
DataMember 设置或返回要从 DataSource 属性所引用的对象中检索的数据成员的名称。
DataSource 指定一个包含要被表示为 Recordset 对象的数据的对象。
EditMode 返回当前记录的编辑状态。
EOF 如果当前记录的位置在最后的记录之后,则返回 true,否则返回 fasle。
Filter 返回一个针对 Recordset 对象中数据的过滤器。
Index 设置或返回 Recordset 对象的当前索引的名称。
LockType 设置或返回当编辑 Recordset 中的一条记录时,可指定锁定类型的值。
MarshalOptions 设置或返回一个值,此值指定哪些记录被返回服务器。
MaxRecords 设置或返回从一个查询返回 Recordset 对象的的最大记录数目。
PageCount 返回一个 Recordset 对象中的数据页数。
PageSize 设置或返回 Recordset 对象的一个单一页面上所允许的最大记录数。
RecordCount 返回一个 Recordset 对象中的记录数目。
Sort 设置或返回一个或多个作为 Recordset 排序基准的字段名。
Source 设置一个字符串值,或一个 Command 对象引用,或返回一个字符串值,此值可指示 Recordset 对象的数据源。
State 返回一个值,此值可描述是否 Recordset 对象是打开、关闭、正在连接、正在执行或正在取回数据。
Status 返回有关批更新或其他大量操作的当前记录的状态。
StayInSync 设置或返回当父记录位置改变时对子记录的引用是否改变。

方法
方法 描述
AddNew 创建一条新记录。
Cancel 撤销一次执行。
CancelBatch 撤销一次批更新。
CancelUpdate 撤销对 Recordset 对象的一条记录所做的更改。
Clone 创建一个已有 Recordset 的副本。
Close 关闭一个 Recordset。
CompareBookmarks 比较两个书签。
Delete 删除一条记录或一组记录。
Find 搜索一个 Recordset 中满足指定某个条件的一条记录。
GetRows 把多条记录从一个 Recordset 对象中拷贝到一个二维数组中。
GetString 将 Recordset 作为字符串返回。
Move 在 Recordset 对象中移动记录指针。
MoveFirst 把记录指针移动到第一条记录。
MoveLast 把记录指针移动到最后一条记录。
MoveNext 把记录指针移动到下一条记录。
?NextRecordset ?通过执行一系列命令清除当前 Recordset 对象并返回下一个 Recordset
MovePrevious 把记录指针移动到上一条记录。
Open 打开一个数据库元素,此元素可提供对表的记录、查询的结果或保存的 Recordset 的访问。
Requery 通过重新执行对象所基于的查询来更新 Recordset 对象中的数据。
Resync 从原始数据库刷新当前 Recordset 中的数据。
Save 把 Recordset 对象保存到 file 或 Stream 对象中。
Seek 搜索 Recordset 的索引以快速定位与指定的值相匹配的行,并使其成为当前行。
Supports 返回一个布尔值,此值可定义 Recordset 对象是否支持特定类型的功能。
Update 保存所有对 Recordset 对象中的一条单一记录所做的更改。
UpdateBatch 把所有 Recordset 中的更改存入数据库。请在批更新模式中使用。

事件
Note: You cannot handle events using VBScript or JScript (only Visual Basic, Visual C++, and Visual J++ languages can handle events).事件 描述
EndOfRecordset 当试图移动到超过 Recordset 结尾的行时被触发。
FetchComplete 当异步操作中的所有记录均被读取后被触发。
FetchProgress 在异步操作期间被定期地触发,报告已读取多少记录。
FieldChangeComplete Field 对象的值更改被触发。
MoveComplete Recordset 中的当前位置更改后被触发。
RecordChangeComplete 一条记录更改之后被触发。
?WillChangeField ?在 Field 对象的值更改之前被触发
RecordsetChangeComplete 在 Recordset 更改之后被触发。
WillChangeRecord 在一条记录更改之前被触发。
WillChangeRecordset 在 Recordset 更改之前被触发。
WillMove 在 Recordset 中的当前位置更改之前被触发。

集合
集合 描述
Fields 指示在此 Recordset 对象中 Field 对象的数目。
Properties 包含所有 Recordset 对象中的 Property 对象。

㈣ vb的Adodc1.Recordset.Filter怎么用

区别当然大了,两个都是字节转换,第一个是字节转换过滤器,第二个是查找一种字节码的数据,这是我的理解

㈤ 如何使用jsp将在javabean中取得的recordset显示出来

简单的说吧,
ResultSet rs;
让你的rs不为空,然后
如果要显示的内容是String类型的就用
System.out.print(rs.getString(1));
如果是int类型的就用
System.out.print(rs.getInt(2));
就是这样的方式,其他类型的你可以自己推理了。
后边括号里的数字是字段所在的位置,从1开始。
如果不知道是第几个用名字也可以,例如一个String类型的,字段名叫NAME就可以是
System.out.print(rs.getString("NAME"));
别忘记了引号。

㈥ 关于ASP网站XSS漏洞,请帮忙过滤一下,谢谢

FunctionCheckxss(byValChkStr)

DimStr
Str=ChkStr
IfIsNull(Str)Then
CheckStr=""
ExitFunction
EndIf

Str=Replace(Str,"&","&")
Str=Replace(Str,"'","´")
Str=Replace(Str,"""",""")
Str=Replace(Str,"<","<")
Str=Replace(Str,">",">")
Str=Replace(Str,"/","/")
Str=Replace(Str,"*","*")

Dimre
Setre=NewRegExp
re.IgnoreCase=True
re.Global=True
re.Pattern="(w)(here)"
Str=re.Replace(Str,"$1here")
re.Pattern="(s)(elect)"
Str=re.Replace(Str,"$1elect")
re.Pattern="(i)(nsert)"
Str=re.Replace(Str,"$1nsert")
re.Pattern="(c)(reate)"
Str=re.Replace(Str,"$1reate")
re.Pattern="(d)(rop)"
Str=re.Replace(Str,"$1rop")
re.Pattern="(a)(lter)"
Str=re.Replace(Str,"$1lter")
re.Pattern="(d)(elete)"
Str=re.Replace(Str,"$1elete")
re.Pattern="(u)(pdate)"
Str=re.Replace(Str,"$1pdate")
re.Pattern="(s)(or)"
Str=re.Replace(Str,"$1or")
re.Pattern="( )"
Str=re.Replace(Str,"$1or")
'----------------------------------
re.Pattern="(java)(script)"
Str=re.Replace(Str,"$1script")
re.Pattern="(j)(script)"
Str=re.Replace(Str,"$1script")
re.Pattern="(vb)(script)"
Str=re.Replace(Str,"$1script")
'----------------------------------
IfInstr(Str,"expression")>0Then
Str=Replace(Str,"expression","e­xpression",1,-1,0)'防止xss注入
EndIf
Setre=Nothing
Checkxss=Str

EndFunction

使用方法:Checkxss(request.QueryString("变量")),或者(request.form("表单名"))

㈦ 100分!!!!!java与.net,编程的请进

1.Java 是 简 单 的

Java 与 C++ 极 为 相 似, 但 却 简 单 得 多。 高 级 编 程 语 言 的 所 有 特 性 中,
不 是 绝 对 需 要 的 都 已 删 去 了。 例 如, Java 没 有 算 符 过 载、 标 题 文 件、
预 处 理、 指 针 运 算、 结 构、 联 合、 多 维 数 组、 模 板 及 隐 式 类 型 变 换。 如
果 你 知 道 一 点 C、 C++ 或 Pascal, 你 很 快 就 会 驾 驭 Java。 这 里 是 一 个 简 单 的 Java Hello World 程 序:

public class HelloInternet {

public static void main(String argv[]) {

System.out.println(“Hello In-ternet!”)

}

}
2.Java 是 面 向 对 象 的

Java 是 一 种 面 向 对 象 的 编 程 语 言。 除 了 简 单 的 类 型, 如 数 字 和 布 尔 算
子 之 外, Java 中 的 大 部 分 都 是 对 象。

正 如 任 何 面 向 对 象 的 语 言 一 样, Java 代 码 也 按 类 组 织。 每 个 类 定 义 一
组 规 定 对 象 行 为 的 方 法。 一 个 类 可 以 继 承 另 一 个 类 的 行 为。 在 类 的
根 层 次 上, 通 常 是 类 对 象。

Java 支 持 单 继 承 类 层 次 结 构。 这 就 是 说, 每 个 类 一 次 只 能 继 承 一 个 别
的 类。 有 些 语 言 允 许 多 继 承 性, 但 这 可 能 造 成 混 乱, 使 语 言 不 必 要 地
复 杂 化。 例 如, 难 以 想 像, 一 个 对 象 会 继 承 两 个 完 全 不 同 的 类 的 行
为。

Java 还 支 持 摘 要 类 的 接 口。 这 允 许 编 程 人 员 先 定 义 接 口 的 方 法, 而 不
必 急 于 马 上 确 定 方 法 的 实 现。 一 个 类 可 以 施 行 多 个 接 口, 从 而 具 有
真 正 多 继 承 性 的 许 多 优 点。 一 个 对 象 也 可 实 施 任 意 数 量 的 接 口。 Java
接 口 与 IDL 接 口 极 其 相 似。 很 容 易 建 立 IDLJ 编 译 器。 这 就 是 说, Java 可
用 于 CORBA 对 象 系 统 来 建 立 分 布 式 对 象 系 统。 鉴 于 在 许 多 计 算 机 系 统
中 都 采 用 IDL 接 口 和 CORBA 对 象 系 统, 这 种 兼 容 性 是 重 要 的。

3.Java 是 静 态 类 型 的

在 一 个 Java 程 序 中, 必 须 定 义 所 用 对 象 (数 字、 字 符、 数 组 等) 的 类 型。
这 有 助 于 编 程 人 员 很 快 发 现 问 题, 因 为 当 程 序 编 译 时 可 以 检 测 类 型
错 误。

不 过, Java 系 统 中 的 对 象 也 有 动 态 类 型。 要 求 一 个 对 象 为 动 态 类 型 往
往 是 可 能 的, 所 以 编 程 人 员 写 的 程 序 可 以 对 不 同 类 型 的 对 象 做 不 同
的 事。

4.Java 是 编 译 型 的

当 运 行 Java 程 序 时, 它 首 先 被 编 译 成 字 节 代 码。 字 节 代 码 非 常 类 似 于
机 器 指 令, 所 以 Java 程 序 非 常 高 效。 然 而, 字 节 代 码 并 不 专 对 一 种 特
定 的 机 器, 所 以 Java 程 序 无 需 重 新 编 译 便 可 在 众 多 不 同 的 计 算 机 上
执 行。

Java 源 程 序 被 编 译 成 类 文 件, 它 相 当 于 程 序 的 字 节 代 码 表 现。 在 一 个
Java 类 文 件 中, 所 有 对 方 法 及 实 例 变 量 的 参 照 均 按 名 进 行, 并 在 第 一
次 执 行 代 码 时 加 以 分 辨。 这 使 得 代 码 更 通 用, 更 不 易 受 修 改 的 影 响,
而 仍 具 高 效。

5.Java 是 体 系 结 构 中 立 的

Java 语 言 对 每 种 计 算 机 都 一 样。 比 如, 简 单 的 类 型 都 是 不 变 的: 整 数
总 是 32 位, 长 整 数 总 是 64 位。 令 人 奇 怪 的 是, 诸 如 C 及 C++ 等 时 髦 的
编 程 语 言 却 不 是 这 样。 由 于 这 些 语 言 定 义 如 此 自 由, 每 种 编 译 器 及
开 发 环 境 便 各 有 不 同 了, 这 使 程 序 的 移 植 成 为 讨 厌 的 问 题。 Java 程 序
的 移 植 却 很 容 易, 而 且 不 需 要 进 行 重 新 编 译。

6.Java 是 健 全 的

Java 程 序 不 可 能 造 成 计 算 机 崩 溃。 Java 系 统 仔 细 检 测 对 内 存 的 每 次
访 问, 确 认 它 是 合 法 的, 而 且 不 致 引 起 任 何 问 题。
不 过, 即 使 Java 程 序 也 可 能 有 错 误。 如 果 出 现 某 种 出 乎 意 料 之 事, 程
序 不 会 崩 溃, 而 把 该 例 外 抛 弃。 程 序 会 发 现 这 类 例 外, 并 加 以 处 理。
传 统 的 程 序 可 以 访 问 计 算 机 的 全 部 内 存。 程 序 可 能 (无 意 识 地) 修 改
内 存 中 的 任 何 值, 这 就 会 造 成 问 题。 Java 程 序 只 能 访 问 内 存 中 允 许 它
们 访 问 的 那 些 部 分, 所 以 Java 程 序 不 可 能 修 改 不 拟 修 改 的 值。

7.Java 是 小 巧 的

由 于 Java 的 设 计 是 要 在 小 的 计 算 机 上 运 行, 作 为 一 种 编 程 语 言 来 说
其 系 统 是 相 对 较 小 的。 它 能 有 效 地 在 4MB 以 上 RAM 的 PC 机 上 运 行。 Java
翻 译 器 只 占 用 几 百 KB。 这 种 翻 译 器 对 Java 的 平 台 无 关 性 和 可 移 植 性
是 可 靠 的。

由 于 Java 很 小, 它 对 内 存 很 小 的 计 算 机, 如 基 于 Java 的 PC 机, 以 及 电
视 机、 烤 箱、 电 话 机 及 家 用 计 算 机 等, 是 很 理 想 的。

8.Java 是 多 线 程 的

Java 程 序 可 以 执 行 一 个 以 上 的 线 程。 比 如, 它 可 以 在 一 个 线 程 中 完 成
某 一 耗 时 的 计 算, 而 其 它 线 程 与 用 户 进 行 交 互 对 话。 所 以 用 户 不 必
停 止 工 作, 等 待 Java 程 序 完 成 耗 时 的 计 算。

在 多 线 程 环 境 中 的 编 程 通 常 是 困 难 的, 因 为 许 多 东 西 可 能 同 时 出
现。 但 是, Java 提 供 了 易 于 使 用 的 同 步 特 性, 使 编 程 更 为 方 便。

Java 线 程 通 常 被 映 射 为 实 际 的 操 作 系 统 线 程, 只 要 底 层 操 作 系 统 支
持 这 种 映 射。 因 此, 用 Java 写 的 应 用 程 序 可 说 是 “MP 热”。 这 就 是 说,
如 果 它 们 在 多 处 理 器 机 器 上 运 行, 它 们 更 将 表 现 不 凡。

9.Java 是 可 收 集 无 用 的 存 储 单 元 的

用 C 及 C++ 写 软 件 的 编 程 人 员 必 须 仔 细 跟 踪 所 用 的 内 存 块。 当 一 个 块
不 再 使 用 时, 他 们 务 必 让 程 序 释 放 它, 从 而 方 可 再 用。 在 大 的 项 目
中, 这 可 能 很 困 难, 并 往 往 成 为 出 错 和 内 存 不 足 的 根 源。

在 Java 的 情 况 下, 编 程 人 员 不 必 为 内 存 管 理 操 心。 Java 系 统 有 一 个 叫
做 “无 用 单 元 收 集 器” 的 内 置 程 序, 它 扫 描 内 存, 并 自 动 释 放 那 些 不
再 使 用 的 内 存 块。

10.Java 是 快 速 的

Java 比 典 型 的 脚 本 语 言 大 为 有 效, 但 它 比 C 慢 20 倍。 这 对 大 多 数 应 用
是 可 接 受 的。

不 久 的 将 来, 代 码 生 成 器 就 可 供 利 用 了, 这 将 使 Java 程 序 几 近 于 用 C
或 C++ 编 写 的 程 序 那 么 快。

11.Java 是 安 全 的

Java 程 序 没 有 指 针, 而 且 象 这 样 的 字 节 代 码 程 序 强 在 类 型 上, 所 以 在
执 行 之 前 它 可 能 验 证 Java 程 序。 被 验 证 的 Java 程 序 得 以 保 证 不 突 破
Java 语 言 的 任 何 限 制, 而 且 可 以 安 全 地 执 行。 Java 字 节 代 码 验 证 被
Web 浏 览 器 用 来 确 保 小 程 序 不 含 病 毒。

12.Java 是 可 扩 展 的

Java 程 序 可 与 用 其 它 语 言 编 写 的 现 存 程 序 库 连 接。 由 于 Java 数 据 结
构 与 C 的 数 据 结 构 的 类 型 极 为 相 似, 这 是 相 当 方 便 的。 最 大 的 问 题 在
于, 现 有 多 线 程 程 序 库 为 数 不 多。

Java 程 序 可 以 声 明 某 些 方 法 是 内 部 的, 然 后, 把 这 些 内 部 方 法 映 射 成
软 件 库 所 定 义 的 功 能, 从 而 动 态 地 链 接 到 虚 拟 机

--------------------------------------------------------------------
1.标准集成:XML、SOAP及其它
过去,微软的体系结构建立在COM/DCOM基础上,COM/DCOM是进程间通信的二进制标准。虽然这个标准本身没有什么失误,但是它与微软以外的领域格格不入。也就是说,这个标准成了实现与其它软件平台互操作的瓶颈。

除此之外,数据也是一个问题。虽然ADO简化了数据访问,但是把数据从一个地方传送到另外一个地方就成了问题。ADO Recordset(记录集)对象是一个存储了数据的二进制结构,而这种二进制格式对于非微软的平台没有任何意义。

.Net弥补了这些缺陷,因为它完全基于标准。比如,数据用XML的格式通过进程边界,而这个数据有一个到XSD的连接,所以任何客户端都可以正确地转化数据。

SOAP基于XML,用于与Web服务的通信。集成SOAP以后,不管客户端运行的是不是微软的操作系统,都可以实现简单的可编程访问。

2.简化应用
COM所面临的一个头痛的问题就是应用。COM利用Windows注册表来定位机器上的组件。这个想法是不错的:每个注册的组件只有一个实例,所有的应用程序都使用相同的版本。COM具有向后兼容性,也就是说新版本兼容老版本,但是开发人员可能会破坏这种兼容性。

.Net则采用了不同的方法:它根本就没有使用注册表。相反,微软的建议是每个应用程序使用自己局部的组件(在.Net称为“assembly”)。利用这种方法,用于应用程序Foo的Assembly X如果发生变化,Assembly X的Application Bar不会受到任何影响。这种方法听起来好象以前一台机器上同一个DLL的多个拷贝,的确是这样。不过你不会遇到应用程序查找Windows\System32目录的问题。

由于.Net不使用注册表,很多应用都可以用简单的拷贝命令来完成,通常没有必要开发安装程序。此外,应用程序不会琐定assembly,所以升级DLL的时候不必关闭应用程序。

3.Web服务支持
在流行的Web服务方面,微软发挥着重要的作用,而.Net为开发Web服务带来了前所未有的便利。用Notepad就可以建立简单的Web服务,甚至不必利用编译器,只要对它们进行简单的调用即可,因为.Net会对它们进行编译,甚至提供一个测试页供用户检验其功能。.Net 拥有所有必需的渠道,可以生成用户所需的所有文件,比如WSDL文件。

.Net也是一个聪明的Web服务使用者:只要设置了指向某个Web服务的索引,你就可以把它当作本地的assembly。你可以获得完整的Intel许可和功能实现帮助。

Web服务对于发送数据是非常重要的,感谢ADO.Net,Web服务可以利用简单或者复杂的数据,并以XML格式把它们发送到任何客户端,最后设置一个链接,指回到一个描述数据模式的XSD。

4.用于所有.Net语言的标准工具集
最终,你会拥有一个适用于所有语言的集成工具集。你会拥有一个统一的IDE、调试工具以及其它类似的工具。因此,其它公司可以把他们的语言嵌入IDE环境,并获得.Net工具所有的支持。比如富士通开发了netCOBOL .Net,它已经直接集成到IDE中,因此可以用 COBOL编写Web服务和Windows应用并获得微软提供的调试和profiling(监管)工具。

.Net是个开放的架构,所以其它厂商也可以提供自己的工具。比如Borland,该公司已经宣布其下一版Delphi将具有建立.Net应用的功能,同时它也保证,Delphi会拥有自己的IDE,不会嵌入Visual Studio .Net。

5.对移动设备的支持
Visual Studio .Net发布不久,微软就推出了移动Internet工具包(Microsoft Mobile Internet Toolkit ,MMIT),以便用.Net构建移动应用。该工具包提供了可视化功能,你可以直观地拖动和下拉面向移动设备的窗体和控件。该工具包有利于正确书写标记语言(比如WML、WAP等等)。

.Net简化架构(.Net Compact Framework)不久就会面市,它是.Net架构的缩略版,设计用于Pocket PC设备。有了这个架构,开发人员就可以开发出丰富的Pocket PC计算机应用。你可以编写一个运行于小型设备上的应用,比如用于Pocket PC设备或者具有Web功能的手机。事实上,MMIT包含了很多仿真程序,它们使用了真正为这类设备编写的ROM代码,所以在你的应用程序投入使用之前,可以首先测试其用于此类设备时的性能。

6.代码管理
.Net管理用户的代码,从很多方面看,这一点都是很重要的,比如减少bug以及构建更多可扩展的应用。.Net可以处理以下操作:内存分配和回收,进程及线程的创建和终止,以及运行代码的访问许可。

VB开发人员先前面临的问题——比如内存管理、线程和进程创建——现在都可以由.Net来处理。而C++程序员可以转向C#,.Net代替他们处理这些操作后,内存泄露和其它bug出现的可能性将大大减少。拥有了被管理的代码,你可以访问.Net所有跨语言的能力。

7.平台独立
虽然.Net是为微软的操作系统创建的,但是微软的确为ECMA标准委员会发布了一部分框架和C#。比如,Mono project实现了Linux的.Net,包括架构和C#编译器。这意味着很多应用(特别是基于Web的应用)一次编写完成后就可以运行于多种平台上。

8.充足的学习资源
.Net的学习曲线非常重要,可能.Net的方面的书要比其它所有编程技术的书都多。此外,微软和第三方团体开设了很多课程,可以让开发人员很快就上手。最后,很多网站为开发人员员学习.Net提供了技术和指导。

9.现代化语言
VB.Net和C#都是现代化的语言。它们完全是面向对象的,设计的时候消除了很多VB 和C++的矛盾。这两种语言使用了多层式架构 (n-tier),这是一种基于组件的方法。

比如,C#取消了指针和其它一些结构,它们曾经给C++程序员(特别是新手)带来很多严重的问题。代码由.Net架构管理后,VB.Net 和C#都从中受益。这个架构还包括一些基础的对象,它们是开发多线程、支持XML等应用所必须的。

10.跨语言标准基本类型
VB开发人员曾经面临一个致命的问题:VB中的字符串与C++中的字符串不同,所以调用Windows API函数的时候会出现一些问题。.Net确定了所有类型的标准定义,所以VB中的字符串和C#中的字符串相同,也和netCOBOL .Net中的字符串相同。这意味着你再也不必担心语言A中的整型数据是32位而语言B中只有16位。你可以确信不同语言的数据类型都相同,可以更好地进行跨语言集成。

优点多于缺点
.Net具有很多明显的优点,可以提高开发人员的效率,减少bug,加快应用开发并简化使用。IT人员对.Net保持了应有的警惕,因为它毕竟还是个新事物,需要有一个比较艰难的学习曲线。但是对于大多数组织而言,其优点远远多于缺点。有了.Net,你可以在未来的开发项目中赢得更高的生产力。

㈧ jsp修改access数据库

结果被我自己解决了。。。 。。。直接用MM_Username传值就好了。。。 。。。

㈨ Java中实现分页效果的详细代码

<head>
<%
const MaxPerPage=20
dim sql
dim rs
dim totalPut
dim CurrentPage
dim TotalPages
dim i,j
%>
</head>
<body>
<%
conn = "DBQ=" + server.mappath("wj028.mdb") + ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
sql = "SELECT * FROM USER order by id desc"
set rs=server.createobject("adodb.recordset")
rs.open SQL,conn,1,1
rs.MoveFirst
rs.pagesize=MaxPerPage
howmanyfields=rs.Fields.Count-1

If trim(Request("Page"))<>"" then
CurrentPage= CLng(request("Page"))
If CurrentPage> rs.PageCount then
CurrentPage = rs.PageCount
End If
Else
CurrentPage= 1
End If

if rs.eof then
response.write "<p align='center'>没有记录!</p>"
else
totalPut=rs.recordcount
if CurrentPage<>1 then
if (currentPage-1)*MaxPerPage<totalPut then
rs.move(currentPage-1)*MaxPerPage
dim bookmark
bookmark=rs.bookmark
end if
end if

dim n,k
if (totalPut mod MaxPerPage)=0 then
n= totalPut \ MaxPerPage
else
n= totalPut \ MaxPerPage + 1
end if%>
<% i=0
do while not rs.EOF and i<maxperpage
%>
<%
rs.movenext
i=i+1
loop
%>
第<%=currentpage%>页
共<%=n%>页
<%
k=currentpage
if k<>1 then
response.write "[<b>"+"<a href='list.asp?page=1'>首页</a></b>]"
response.write "[<b>"+"<a href='list.asp?page="+cstr(k-1)+"'>上一页</a></b>]"
else
Response.Write "[首页][上一页]"
end if
if k<>n then
response.write "[<b>"+"<a href='list.asp?page="+cstr(k+1)+"'>下一页</a></b>] "
response.write "[<b>"+"<a href='list.asp?page="+cstr(n)+"'>尾页</a></b>] "
else
Response.Write "[下一页][尾页]"
end if
%>
<%
end if
set rs=nothing
set conn=nothing
%>
</body>

阅读全文

与javarecordset过滤器相关的资料

热点内容
怎么设置无线路由器的网站过滤 浏览:126
万亿农村污水处理市场 浏览:256
污水比重怎么计算 浏览:440
福特嘉年华空气滤芯底座怎么拆 浏览:503
污水井圈井盖尺寸 浏览:582
净水机与管线怎么连接 浏览:863
不结水垢的电热管 浏览:650
苯乙烯树脂性能 浏览:409
环氧树脂老化机理方程 浏览:433
树脂餐桌腿 浏览:527
ppf滤芯什么意思 浏览:543
净水器废水管出水细怎么办 浏览:921
市政污水厂设计资质 浏览:893
净水机废水排不完怎么办 浏览:693
第一类污染物废水的处理 浏览:653
兰雀净水器不出废水怎么修 浏览:587
印染废水的方法 浏览:752
孩子肚脐怎么除垢 浏览:605
小米空气净化器pro怎么样数值怎么看 浏览:170
小米空气净化器pro风扇叶怎么拆 浏览:362