仓酷云

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

[学习教程] JAVA网站制作之加速JDBC计划中JSP会见数据库

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:39:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
令人可喜的是java现在已经开源了,所以我想我上述的想法也许有一天会实现,因为java一直都是不断创新的语言,每次创新都会给我们惊喜,这也是我喜欢java的一个原因。js|会见|计划|数据|数据库
之前,我们已提到,JSP程序都是模块,而且具有壮大的表达-哀求(presentation-request)功效。创建一个完善的数据库会见是一个具有应战的历程,而JDBC接口可以很好地完成这一历程。但是,嵌进于JSP代码中的JDBC代码,与SQL命令嵌进在JDBC一样,能够充实使用JSP的功效,为客户端创建一个整齐而烦琐的API。为了到达这一目标,我们能够思索到利用JSP操纵来创建数据库接口组件。

完善的JSP计划形式是Model-View-Controller(MVC)。传统三层系统为:Model为程序逻辑和数据;View为检察;和Controller为哀求处置。遵守这一模子,一个JSP程序包括客户端-服务器“对话框”的每“行”的页面。在一个典范的程序中,你能够看到一个查询页面,一个考证页面,一个数据库拔出页面,一个数据库更新页面,等等。
在上一篇的文章中,我们会商到怎样在每页面中嵌进JDBC,以包管程序的布局加倍公道。但是,创建可实行的SQL命令,正如变量经由过程JDBC命令而传送一样,也有大概会增添程序的庞大性。
JDBC计划的JSP操纵
JSP数据库操纵的另外一办法是,在不利用JDBC的情形下为数据库创建一些操纵的汇合。利用这类办法,你能够失掉两种优点:第一,你能够打消利用JDBC的需要,这就使得良多事情得以简化;第二,你的计划和代码的构造加倍公道(好比可读性,天真性,和可保护性)。
你仍旧必要一些驱动程序,但你起首简化以上的操纵。JSP程序中的操纵都是一些逻辑块,一般被别的的JSP程序开辟者编写和使用,但你能够把它们当做子程序来利用。利用JSP操纵的意义是尺度化某些功效,和最年夜水平地削减嵌进在JSP的Java代码数目。
JSP供应了一套尺度扩大的类。经由过程这些类,你能够经由过程一个标签办理器器(taghandler)界说一个操纵。这里有两个JSP界说的Java接口:Tag接口和BodyTag接口,分离是由TagSupport类和BodyTagSupport类实行。
你能够创建通用JSP用处的一个标签库,而且你也能够实行标签办理器(taghandler)以扩大类的撑持。以下是完成这些历程的步骤。
起首,实行一个标签办理器的类:
packagecom.myactions;

(importstatementsgohere)

publicclassMyActionTagextendsTagSupport{
...
}
接着,编译这段代码,并将类文件安排在程序的类库中。然后,你将必要一个TagLibraryDescriptor(TLD)文件,这是一个XML文件,以婚配你的操纵称号和响应的标签办理器的类。
<tag>
<name>MyAction</name>
<tagclass>com.myactions.MyActionTag</tagclass>
<bodycontent>(whatever)</bodycontent>
<attribute>myData</attribute>
</tag>
</tag>
相干的Trialware

DbUtils(ApacheSoftwareFoundation)
IBMInformixJDBCDriver(IBM)
MySQLConnector/J3.0(MySQLAB)
SQL4XManagerJ2.2(MacosGuru)
InformixDownloads(IBMRedBrickWarehouse32bit)(Solaris)(IBM)
InformixDownloads(IBMRedBrickWarehouse64bit)(HPUX)(IBM)
更多Trialware假定你已创建一个名为MyAction的操纵,这是一个与com.myactions.MyActionTag类婚配的TLD。TLD文件必需位于程序的TLDs路径。
当你从一个JSP页挪用操纵时,TLD告知JSP准确的类以利用操纵。这就带来极年夜的便利,并且只必要大批的代码。
可是,从何引进SQL?起首,你必要创建具有毗连功效的数据库会见。你可使用javax接口来完成,而javax可见于JDBC2.0Optional工具箱。JDBC2.0的javax.sql.DataSource类供应了你所必要的毗连。
此时,SQL位于甚么中央?它在bean中。你可使用JDBCcreateStatement和PreparedStatement在bean中创建一个办法。将这一办法成为一个大众的Vector,并准确地将你的SQL声明传送到这一办法。
总结
你的数据库bean实行一个嵌进在操纵体的SQL语句,你能够传送一个语句给SQL语句,大概利用它来实行一个事后的操纵。能够经由过程标签办理器来实行你的操纵。因为JDBC被嵌进于库代码中,你将不克不及在JSP程序中明白地利用它。
初度利用这类办法会以为它比JDBC中的嵌进SQL,和JSP中的嵌进JDBC加倍庞大,可是,你创建SQL操纵并将它们寄存在一个TLD,你只需做一次,在一切的JSP程序中就能够会见这些操纵。这就是这类办法的长处。
下一次,我们将会报告到JSP页和会话(sessions)之间的数据传送。




net程序员的大部门代码都靠控件拖拽完成的,虽然java也有,但是无论从美观和速度上都没发和.net比。java程序员都是代码完成的,所以java程序员常戏称.net程序员是操作员,呵呵。
飘飘悠悠 该用户已被删除
沙发
发表于 2015-1-21 12:27:45 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
精灵巫婆 该用户已被删除
板凳
发表于 2015-1-25 16:46:04 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
莫相离 该用户已被删除
地板
发表于 2015-2-3 11:10:27 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
再见西城 该用户已被删除
5#
发表于 2015-2-5 09:19:28 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
若相依 该用户已被删除
6#
发表于 2015-2-10 07:36:22 | 只看该作者
是一种为 Internet发展的计算机语言
7#
发表于 2015-2-18 11:50:46 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
分手快乐 该用户已被删除
8#
发表于 2015-3-6 05:37:22 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
透明 该用户已被删除
9#
发表于 2015-3-8 22:19:00 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
admin 该用户已被删除
10#
发表于 2015-3-12 14:24:53 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
再现理想 该用户已被删除
11#
发表于 2015-3-15 20:41:58 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
爱飞 该用户已被删除
12#
发表于 2015-3-22 04:10:03 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
山那边是海 该用户已被删除
13#
发表于 2015-4-15 09:18:06 | 只看该作者
是一种突破用户端机器环境和CPU
活着的死人 该用户已被删除
14#
发表于 2015-5-8 07:42:17 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
愤怒的大鸟 该用户已被删除
15#
发表于 2015-6-3 21:44:23 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
因胸联盟 该用户已被删除
16#
发表于 2015-6-8 02:46:09 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
小妖女 该用户已被删除
17#
发表于 2015-6-8 03:10:14 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
深爱那片海 该用户已被删除
18#
发表于 2015-6-8 11:31:35 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
灵魂腐蚀 该用户已被删除
19#
发表于 2015-6-29 10:00:18 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
飘灵儿 该用户已被删除
20#
发表于 2015-6-30 20:41:40 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-1 10:39

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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