用JSTL实现JSP应用程序快速开发

来源:互联网 发布:bet可以测什么数据 编辑:程序博客网 时间:2024/06/05 03:35
在这篇文章中,我将为大家介绍一种基于JSP且灵活有趣的技术,那就是JSTL.JSTL全称为Java Server Pages Standard Tag Library.虽然JSP已经变的非常流行,但JSTL在基于SQL数据库的简单、快速的前后台开发中还是没有被广泛的应用。一旦你了解了JSTL,你就会了解到它的优点,并发现在你作为程序员的日常工作中,它已经被应用到了很多方面。我这里假设你已经熟悉HTML,能理解基本的SQL语句,和Jsp的基础知识。因为下面的内容要涉及到这些知识。
  JSTL是一个已经被标准化的标记库集合,她支持迭代、条件、XML文档的解析,国际化,和利用SQL与数据库交互的功能。起初,JSTL规范一直由JCP(Java Community process program)组织下的JSR #52 发展完善,"JCP肩负着Java 技术发展的重任"--官方网站这样评价。JCP作为一个开放性的组织,他同时吸收正式的会员和非正式会员.JCP对于Java技术规范的形成与发展发挥了重要的主导作用。JSTL主要包括四个基本部分的标记库:Core,XML,国际化,和对SQL的支持。由于这篇文章的主要是以其中的SQL部分的应用来快速了解JSTL,所以我们这篇文章只介绍了 Core和SQl标签库的一些基本功能。

  这项技术简单而且功能强大,足以和PHP、ColdFusion一较高下.他在拓展Java的应用领域方面有足够的能力,这些领域不只包括大型的可再升级的Web应用程序,对于仅拥有简单主页的Web程序一样没问题。这允许你在建立站点的时候可以避免那些经常考虑的XML的集成和与数据库的连接。正如我刚才提到的一样,JSTL的关键点就是简单易用。还有,那就是JSTL是基于JSP构建的, 他允许我们使用所有的Java技术,这一点我们有必要记住。

  开始之前,我们需要弄清楚怎样才能运行JSTL.由于是基于JSP技术的,所以我们运行它就需要一个能够编译JSP的容器,这里我们使用免费的JSP容器:TOMCAT(http://jakarta.apache.org/tomcat/index.html).至于如何安装这个产品已经超出了本文所讲述的范围。毫无疑问,这个软件产品现在已经很普及了,而且关于如何安装的文档资料也是很多。这里假设您已经安装并成功配置了这个容器,你只需再安装JSTL运行所需文件即可,它可以从这里下载http://jakarta.apache.org/taglibs/doc/standard-doc/intro.html你不需要真正的安装它,只需要将其中的.JAR文件包含到你的应用程序的WEB-INF/lib目录下即可,稍后我会具体说到该怎么做.

  因为我们要在一个支持标准SQL的数据库上运行程序,你需要在你的电脑上安装有一个数据库。数据库的类型有许多种,这里我选择了MySql。我之所以选择他的原因在于首先,我们需要展示JSTL对于构造简单快速的应用程序领域所起的作用,同时能和一直在这个领域处于主导地位的PHP+MySql有所比较;第二点那就是MySql是可以免费下载并包含有一个针对JAVA的JDBC驱动.总之,为了使用下面的例子,你需要下载一个MYSQL服务器(http://www.mysql.com/products/mysql/index.html; MySql Connector/J JDBC驱动程序http://www.mysql.com/products/connector-j/index.html;还有就是MySql control center http://www.mysql.com/products/connector-j/index.html),这个产品可以让你非常容易的操作管理Mysql数据库文件。全部下载完成后,你需要安装mysql和mysql Control Center。另外还有就是mysql的JDBC驱动需要放到你的web应用程序中的/Web-INF/lib目录中。
  在创建程序代码之前,你需要创建并填写数据库表。关于这方面的主题文章也相当广泛,具体如何操作超出了本文的范围。这里我推荐给你我们上面提及的一个可视化的管理工具 MySQL Control Center.你可以用他来创建一个用来运行程序的测试用户,数据库以及创建一个测试表,并填写若干记录。关于登陆名及密码 数据库名称这些配置环境参数,你应该记住他们,稍后需要应用到我们的代码中。
  现在,你就可以准备创建自己的第一个JSTL应用程序了它需要我们做下面一些事情:
  整个实例程序代码包括两个文件Hello.jsp和 Continue.jsp
  Hello.jsp文件允许你输入数据库名称、登陆名称、登陆密码、数据库表名。Continue.jsp:接受Hello.jsp中的数据信息并且连接数据库,并对数据库中的表执行一个Select请求.
  下面是这个系统所有的代码文件,我将逐一进行解释。这些代码相当简单,对于代码的结构,我相信你即使没有我的解释你也能理解的.
1: <!-- Hello.jsp -->
2: <html>
3: <head>
4: <title>Hello</title>
5: </head>
6: <body bgcolor="#ffffff">
7: <h1>Please, enter all necessary information and click OK.</h1>
8: <form method="post" action="Continue.jsp">
9: <br>Your login to database:
<input type="text" name="login" size="15">
10: <br>Your password to database:
<input type="password" name="password" size="15">
11: <br>Your database name:
<input type="text" name="database" size="15">
12: <br>Your database table:
<input type="text" name="table" size="15">
13: <br><br><input type="submit" name="submit" value=" OK ">
14: </form>
15: </body>
16: </html> 
  (请注意文本左侧的数字只是为你提供一些标记信息,你不需要将他们输入到你的代码文件中。)
  上面就是所有Hello.jsp的源代码,很惊奇吧,他仅仅是纯粹的HTML代码,就这么简单,我想应该没有注释的必要了.我之所以将这些代码片段包含进文章中就是为了展示一下JSTL集成到那些需要快速扩充额外功能的HTML站点中是多么的简单.让我再为你展示一下Continue.jsp的全部代码,看过之后,你就会对 JSTL有些了解了。
1: <!-- Continue.jsp -->
2: <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
3: <@ taglib prefix="sql" uri="http://java.sun.com/jstl/sql" %>
4: <c:set var="h" value="localhost"/>
5: <c:set var="l" value="${param.login}"/>
6: <c:set var="p" value="${param.password}"/>
7: <c:set var="d" value="${param.database}"/>
8: <c:set var="t" value="${param.table}"/>
9: <html>
10: <head>
11: <title>Continue</title>
12: </head>
13: <body bgcolor="#ffffff">
14: <sql:setDataSource driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://${l}/${d}?user=${u}&password=${p}"/>
15: <sql:query var="result">
16: SELECT * FROM <c:out value="${t}"/>
17: </sql:query>
18: <c:forEach var="row" items="${result.rowsByIndex}">
19: <c:out value="${row[0]}"/> <br>
20: </c:forEach>
21: </body>
22: </html> 
(请注意文本左侧的数字只是为你提供一些标记信息,你不需要将他们输入到你的代码文件中。)

 
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 6个月的宝宝咳嗽怎么办 4个月睡眠倒退期怎么办 科三五次没通过怎么办 打架时被抱住了怎么办 炸猫耳朵不脆怎么办 五个月宝宝脖子有点歪怎么办 婆婆不给带孩子怎么办 脚冻了怎么办 小妙招 pdf转word后乱码怎么办 李氏根源用多了怎么办 pdf在wps中打开怎么办 小孩刚上幼儿园哭闹怎么办 一到冬天皮肤痒怎么办 87岁老人身上痒怎么办 天刀技能拖不动怎么办 晚上不吃饭饿了怎么办 虚火引起的牙疼怎么办 吃上火了牙疼怎么办 慢性胃炎引起的口臭怎么办 烂牙引起的口臭怎么办 坏牙引起的口臭怎么办 牙齿拔了有口臭怎么办 胃疼连着后背疼怎么办 肚脐眼又红又痒怎么办 三岁宝宝有口臭怎么办 脚扭了按压疼痛怎么办 喝完酒头晕5天了怎么办 三岁宝宝口气重怎么办 肠镜检查出息肉怎么办 怀孕了口气很重怎么办 脚被重物压肿了怎么办 摔倒膝盖肿了应该怎么办 脚挤压伤肿了怎么办 30岁后脸上长斑怎么办 12岁脸上有雀斑怎么办 16岁脸上有斑怎么办 脸上有斑怎么办 教你 4o岁脸上有色斑怎么办 小孩三年级成绩都差怎么办 孕晚期头大腿短怎么办 天天p图格式不对怎么办