知识大全 用JSTL实现JSP应用程序快速开发
Posted 数据库
篇首语:枕上从妨一夜睡,灯前读尽十年诗。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用JSTL实现JSP应用程序快速开发相关的知识,希望对你有一定的参考价值。
用JSTL实现JSP应用程序快速开发 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在这篇文章中 我将为大家介绍一种基于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 # 发展完善 "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 () 至于如何安装这个产品已经 超出了本文所讲述的范围 毫无疑问 这个软件产品现在已经很普及了 而且关于 如何安装的文档资料也是很多 这里假设您已经安装并成功配置了这个容器 你 只需再安装JSTL运行所需文件即可 它可以从这里下载 你不需要真 正的安装它 只需要将其中的 JAR文件包含到你的应用程序的WEB INF/lib目录下 即可 稍后我会具体说到该怎么做
因为我们要在一个支持标准SQL的数据库上运行程序 你需要在你的电脑上安 装有一个数据库 数据库的类型有许多种 这里我选择了MySql 我之所以选择他 的原因在于首先 我们需要展示JSTL对于构造简单快速的应用程序领域所起的作用 同时能和一直在这个领域处于主导地位的PHP+MySql有所比较;第二点那就是 MySql是可以免费下载并包含有一个针对JAVA的JDBC驱动 总之 为了使用下面的 例子 你需要下载一个MYSQL服务器 ( MySql Connector/J JDBC驱动程序 还有 就是MySql control center ) 这个产品可以让你非常容易的操作管理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请求
下面是这个系统所有的代码文件 我将逐一进行解释 这些代码相当简单 对 于代码的结构 我相信你即使没有我的解释你也能理解的
: <! Hello jsp > : <> : <head> : <title>Hello</title> : </head> : <body bgcolor="#ffffff"> : <h >Please enter all necessary information and click OK </h > : <form method="post" action="Continue jsp"> : <br>Your login to database: <input type=text name=login size=" "> : <br>Your password to database: <input type=password name=password size=" "> : <br>Your database name: <input type=text name=database size=" "> : <br>Your database table: <input type=text name=table size=" "> : <br><br><input type=submit name=submit value=" OK "> : </form> : </body> : </>
(请注意文本左侧的数字只是为你提供一些标记信息 你不需要将他们输入到 你的代码文件中 )
上面就是所有Hello jsp的源代码 很惊奇吧 他仅仅是纯粹的HTML代码 就 这么简单 我想应该没有注释的必要了 我之所以将这些代码片段包含进文章中就 是为了展示一下JSTL集成到那些需要快速扩充额外功能的HTML站点中是多么的简 单 让我再为你展示一下Continue jsp的全部代码 看过之后 你就会对 JSTL有 些了解了
: <! Continue jsp > : <%@ taglib prefix="c" uri="%> : <@ taglib prefix="sql" uri="%> : <c:set var="h" value="localhost"/> : <c:set var="l" value="$param login"/> : <c:set var="p" value="$param password"/> : <c:set var="d" value="$param database"/> : <c:set var="t" value="$param table"/> : <> : <head> : <title>Continue</title> : </head> : <body bgcolor="#ffffff"> : <sql:setDataSource driver=" mysql jdbc Driver" url="jdbc:mysql://$l/$d?user=$u&password=$p"/> : <sql:query var="result"> : SELECT * FROM <c:out value="$t"/> : </sql:query> : <c:forEach var="row" items="$result rowsByIndex"> : <c:out value="$row[ ]"/> <br> : </c:forEach> : </body> : </>
(请注意文本左侧的数字只是为你提供一些标记信息 你不需要将他们输入到 你的代码文件中 )
这就是我们所有的代码了 是不是非常不错?现在我门来解释一下上面这些代 码的作用
行 是 HTML 的注释说明
行 这些 JSP 标签是为了引用外部的 标签库 更确切的说这里是引用了 JSTL库中的 Core 和SQL标签库部分 我们为他们都设置了前缀名称 以便于我们 通过这些前缀名称访问被引入的标签库中的功能方法
行 正如 Hello jsp 真正运行的样子 他将请求continue jsp Continue jsp获得请求后就需要得到并解析来自Hello jsp的若干变量 我们使用 了这样的方式$param YOUR_VAR 在第 行<c:set标签 将变量$h设置为 "localhost" 第五行变量$l将获取我们在 Hello jsp中的login文本域中输入的 信息 第 行的变量将分别获得来自Hello jsp中用户所输入的密码 数据 库名称 数据表名称
行 是一些我经常用来常见HTML网页头的简单的HTML标签 马上 重要的 功能马上要到了
行 我们试图用我们先前获得的mysql驱动程序( mysql jdbc Driver)建 立数据库连接 在URL中 我们指明数据库连接所需要的参数 象数据库名称 主 机名称 登陆名及登陆密码 依此 我们可以用其它任何的JDBC驱动程序连接其 相对的数据库 如果我们需要连接其他的SQL数据库 只需更改这个 URL就够了
行 这里我们执行了一个Select 查询 请特别注意第 行 我们使用了 另一个JSTL功能函数<c:out 用来输出我们所获取的数据表名称 这里我们同样 可以使用其他的SQL命令 比如说 INSERT DELETE 等等 要执行这些没有返回值 的查询请求 你就需要使用<sql:update JSTL功能函数了 他可以直接执行他们 就象<SQL:query一样 只是执行它是不需要特别指定结果变量来存储语句执行返 回的结果
行 既然我们执行了上面的SELECT查询语句 我们就应该把他的返回结 果显示出来 <c:forEach 就是JSTL 中一个具有迭代功能的函数 执行它时 我 们通过$result rowsByIndex将返回的每一个数据行信息返回给变量$row 紧 接着在第 行 我们通过<c:out value="$row[ ]"/>显示返回的每个数据行 的第一个数据列中的值 只要你的数据表中包含的字段 你都可以通过改变变量 $row中的数字大小来对请求表中的任意一个字段中的值对他们进行访问
行 是HTML 页脚
在你亲自创建JSTL应用程序过程中 可能你还没有发现它有多么的强大 但你 应该能够意识到JSTL的功能函数的简单和高效性 试想有了JSTL 整合出一个基于 SQL的新闻专栏是何等的快速 集成你现有的web站点是何等的容易
很好 我们的代码很容易理解的 即使一个非专业程序员的话 打个比方就算 是一个设计师也能够读懂它 理解它 还可能进行部分的修改 起码是页面布局 上的修改
正如我们开始的时候所提到的 为了使我们的JSTL代码正常的运行 我们需要 安装Mysql Connector/J 中的JAR 文件 当然还有 JSTL 因为我们使用了Tomcat 这个JSp 容器 你需要在Tomcat的文件目录Webapps下创建你自己的文件夹 将你 的Hello jsp Continue jsp文件放在你创建的文件目录中 在你创建的目录中 你还要创建一个叫做WEB INF 的文件夹 将你的配置文件Web xml放在里面 web xml文件如下
<?xml version=" " encoding="UTF "?> <!DOCTYPE web app PUBLIC " //Sun Microsystems Inc //DTD Web Application //EN" "> <web app />
接下来我们还需要在WEB INF下创建一个叫做lib的子目 并将下列文件放进去
jstl jar
saxpath jar
standard jar
mysql connector java stable bin jar (注意 这个名称依据你的 Mysql Connector/J版本不同可能会有所变化)
所有的这些信息您能够在JSTL或Tomcat手册中查阅的到 如果你想理解他们具 体是如何运行而又为什么这么运行你就应该研读一下这些手册 不过为了帮助你 快速的掌握JSTL的基本操作 相关的知识我已经作了介绍
如果你使用的是其他的Jsp 容器 那么就需要你阅读他们相关的手册资料
相关参考
JSTL实现JSP应用程序快速开发 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! JSTL是一个
近日美国“开源软件”项目Openbiz新发布了一款名为OpenbizCubiDev的PHP的应用开发利器宣称可以让开发人员在分钟内通过配置和向导完成创建一个功能完善的企业级应用程序这是空穴来风还是
知识大全 用 Eclipse 开发 iPhone Web 应用程序
用Eclipse开发iPhoneWeb应用程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! A
用C#开发第一个WINDOWS应用程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!一创建工程
知识大全 用 Spring MVC 轻松进行应用程序开发(图)
用SpringMVC轻松进行应用程序开发(图) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在
用.Net开发DB2应用程序比较 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 简介 在NET
用Struts框架开发Java应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Struts开
怎样用PowerBuilder开发WEB应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一P
用VS2005开发XAML程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!如果我们使用Visua
Struts1.x系列教程(1):用MyEclipse开发第一个Struts程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容