仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 986|回复: 19
打印 上一主题 下一主题

[学习教程] JAVA网页编程之怎样在SqlServer与oracel中举行分页的讨...

[复制链接]
因胸联盟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:51:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
先谈谈我对java的一些认识。我选择java,是因为他语法简单,功能强大,从web,到桌面,到嵌入式,无所不能。但当我进一步了解了java后,感叹,java原来也有许多缺点。server|sqlserver|分页
利用sql,和oracle数据库举行分页能够有以下三种办法!



上面让我们看一看假如我们要在数据库中取第1000条到第1010条的数据这两种办法是怎样完成的.







1.利用一时表的办法.(在体系中次要是间接写Sql语句来做)



a)按所需的排序体例排好序



b)创立一时表



c)从数据库里掏出第0条到第1010条的数据



d)把这些数据放进一时表中



e)把一时表再按与a)相反的排序体例排好序



f)然后只需把一时表中的前10条显时出来



g)烧毁一时表







2.利用object的办法



a)按所需的排序体例排好序



b)从数据库里掏出第0条到第1010条的数据



c)倒着从这1010条数据中取10条放进一个object中



d)把这个object里的纪录完整颠倒一下



e)把object里的数据显现出来







明显第二种办法优于第一种办法它削减了体系创立,烧毁一时表所需泯灭的资本,可是它们都有一个配合的缺点.那就是它们都要从数据库里掏出第0条到第1010条的数据如许就形成了查询出的纪录数很少,但收集传输数据量很年夜!







因而对照好的分页做法应当是:



每次翻页的时分只从数据库里检索页面巨细的块区的数据。如许固然每次翻页都必要查询数据库,但查询出的纪录数很少,收集传输数据量不年夜,假如利用毗连池更能够略过最耗时的创建数据库毗连历程。而在数据库端有各类成熟的优化手艺用于进步查询速率,比在使用服务器层做缓存无效多了。







关于SqlServer数据库如要到得第1000-1010笔记录:







Selecttop10*from(



Selecttop10*from(



Selecttop1010*fromdocdetailorderbylastmodidateasc,Idasc



)temptbl1orderbylastmodidatedesc,Iddesc



)temptbl2orderbylastmodidateasc,Idasc

















关于oracle数据库如要到得第1000-1010笔记录因为oracle中的rownum是在查询以后排序之前赋值的.以是其响应的写法应为:







select*from(



selectmy_table.*,rownumastemptbl_rownumfrom(



Select*fromdocdetailorderbylastmodidateasc,Idasc



)temptblwhererownum<1010



)wheretemptbl_rownum>=1000











当以上的Sql语句实行完成今后,收集传输数据量就从之前的1010条削减到10条







经由过程以上分页体例的改动,对我们体系的功能有很年夜的提拔



我有个客户利用的是oracel数据库个中文档数量为12万条,当我们对这张表时行搜刮的时分利用第一种办法举行分页时,页面显现的工夫约为10秒摆布,而利用第三种办法而如今页面显现工夫只必要2-3秒摆布.







固然,大概另有更好的分页办法,总以为跟着数据库里的数据的不休增添,体系运转的速率将会变慢,我在这里贴出这篇文章,只是想和人人会商一下,另有没有更好的办法,但愿人人不惜复兴!一同会商!



:D(完)





轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net,
分手快乐 该用户已被删除
沙发
发表于 2015-1-21 16:18:38 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
兰色精灵 该用户已被删除
板凳
发表于 2015-1-30 21:04:35 | 只看该作者
是一种为 Internet发展的计算机语言
莫相离 该用户已被删除
地板
发表于 2015-2-5 11:42:07 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
蒙在股里 该用户已被删除
5#
发表于 2015-2-5 22:18:35 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
爱飞 该用户已被删除
6#
发表于 2015-2-6 16:37:35 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
精灵巫婆 该用户已被删除
7#
发表于 2015-2-8 14:41:02 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
谁可相欹 该用户已被删除
8#
发表于 2015-2-10 09:54:09 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
变相怪杰 该用户已被删除
9#
发表于 2015-2-20 04:44:21 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
不帅 该用户已被删除
10#
发表于 2015-3-1 01:56:37 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
活着的死人 该用户已被删除
11#
发表于 2015-3-10 12:05:55 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
老尸 该用户已被删除
12#
发表于 2015-3-11 04:46:32 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
小妖女 该用户已被删除
13#
发表于 2015-3-11 19:38:58 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
若天明 该用户已被删除
14#
发表于 2015-3-15 10:39:33 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
再现理想 该用户已被删除
15#
发表于 2015-3-22 00:10:14 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
海妖 该用户已被删除
16#
发表于 2015-3-24 21:26:23 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
透明 该用户已被删除
17#
发表于 2015-3-27 03:05:54 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
只想知道 该用户已被删除
18#
发表于 2015-4-1 05:25:28 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
小魔女 该用户已被删除
19#
发表于 2015-4-14 21:01:37 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
第二个灵魂 该用户已被删除
20#
发表于 2015-4-20 05:15:58 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 08:01

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表