初学者如何快速入门JSP实例分析

js|初学|快速入门

  1) JSP(JavaServer Pages)简介:在当今世界,流行的Internet应用程序开发主要有:ASP,PHP,CGI,JSP……等多种方案,技术上各有优缺点,但是JSP以其简单易学,跨平台的特性,在众多程序中独树一帜,在短短几年中已经形成了一套完整的规范,并广泛的应用于电子商务等各个领域中。在国内JSP现在也得到了比较广泛的重视。

2) 如何才能快速掌握JSP:JSP实际上是JSP定义的一些标记和JAVA程序段,以及HTML文件的混合体。所以,如果要掌握JSP首先必须对HTML有一定的了解(不然怎么设计网页),然后,也必须有JAVA程序的基础(要知道JSP是基于JAVA语言的),最后就是对JSP标识的一些必要的了解(它使你知道如何用JAVA语言及HTML组合成完整的JSP),而此篇文章我们在这里主要是对JSP标识及语法规则进行介绍。所以最好对HTML及JAVA语言有一点了解,如果没有学过也没有关系,下面的介绍会让你对JSP有一个比较直观的了解。

3) 体会简单易学的JSP:JSP简单而易学,如果你有了HTML的基础,要学会就很容易的了,不信?先拿一段JSP程序给你看看吧(简单而经典的HelloWord.jsp):

< %page language="java"% >
< HTML>
< head >
< title>Hello World!< /title>
< /head>
< body bgcolor="#FFFFFF">
< %String msg="JSP Example";
//定义字符串对象
out.println("Hello World!");
%>
< %=msg%> < !-显示变量值- >
< /body>
< /HTML>

运行之后,在窗口上的输出字符串Hello World! JSP Example,怎么样,一看就懂了吧,的确很简单的,除去"< %% >"标识,其他的都是普通的超文本,如果你有了超文本的基础,一看便知道了;不过他和超文本还是有了一点区别,那就是加入了"< %% >"标识,标识之中使用的是JAVA程序,由它来控制动态数据的显示的,并直接输出到标识符所嵌入的位置,整个结构显得相当的直观,以后如果页面发生了变化,修改也变得十分的容易。至于程序第一行的标识,我们暂时可以不必管他,在后面,我们会对这类语法做相应的介绍。

看了上面的JSP程序,你对JSP应该也有了一点了解了吧,是的,学习JSP是并不是一件难事,而且以后,你会越发感受到JSP的优势,他的跨平台特性在Internet开发程序中可谓是独树一帜,因为JSP技术是构建于JAVA语言之上的,他的很多特性和应用都来自JAVA语言,所以如果你要学好JSP,需要有JAVA编程的基础(关于JAVA语言,我这里就不多介绍了,可以参看相应的书籍,向大家推荐:《JAVA2程序设计》(清华大学出版社))

4) JSP从头做起:

a) 从www.java.sun.com下载JDK(JAVA开发工具包),并安装,现假设为c:\jdk1.3 b) 组建JSP运行环境:要使JSP运行起来首先要建造JSP运行环境。现在我们常用到的应用程序服务器软件主要有WebLogic Application Server,Apache Tomcat,Allarie Jrun。WebLogic是现在市场上占有率最高的一种服务器软件,功能强大,配置也很简单,作为商业应用的服务器是很好的选择,不过作为初学应用,建议还是不要的好,因为这是商业软件需要购买。

Jrun是由Allarie公司开发的服务器软件,也有比较高的声誉,和WebLogic一样也是很好的选择,也是商业软件。初学,Tomcat便是你最好的选择,他是一个免费的服务器软件,而且他的源代码可以免费获得,当你对它有深入的了解之后,可以自由的对他进行扩充,以适应你自己的需要,虽然配置麻烦了一点,但以上的这么多优点,它是我们当之无愧的最佳选择。下面我们就以Tomcat为实例,向大家介绍win2000下JSP环境的配置:

1) 首先,从apache网站(http://java.apache.org)上下载Tomcat,下载的是一个.zip文件(jakarta-tomcat.zip),把它解压到你的目录下面,假设为c:\tomcat。

2) 进入tomcat的目录里,找到startup.bat文件,打开编辑。在行call tomcat start的前面加上两行: SET TOMCAT_HOME=c:\tomcat 和 SET JAVA_HOME=c:\jdk1.3 注:c:\jdk1.3是jdk1.3安装的位置。

3) 然后鼠标右键点击"我的电脑",选择属性。在系统属性中打开高级选项,点击"环境变量",在"用户变量"和"系统变量"中都加入两个变量classpath和path,它们的值是:classpath的值  c:\jdk1.3\bin\tools.jar;C:\jdk1.3\lib\dt.jar path的值为 c:\jdk1.3\bin;c:\jdk1.3

4) 执行jakarta-tomcat\bin\startup.bat,会看到一个打开的Tocmat启动窗口,

5) 打开浏览器,输入:http://localhost:8080,回车就可以看到TOMCAT的主页面了

b) JSP的基本语法简介:

i. 注释语句:"< %-- comment --% >"在编译的时候将跳过此标识;

ii. 插入一个有效的程序段 :< % code % >

iii. 定义JSP文件中的全局属性:

< %@ page
[ language="java" ]
//声明脚本语言的种类
[ extends="package.class" ]
//标明JSP编译时需要加入的Java Class的全名,
但是得慎重的使用它,它会限制JSP的编译能力.
[ import="{package.class / package.*}, ..." ]
//需要导入的Java包的列表
[ session="true / false" ]
//设定客户是否需要HTTP Session
[ buffer="none / 8kb / sizekb" ]
//buffer的大小被out对象用于处理
执行后的JSP对客户浏览器的输出
[ autoFlush="true / false" ]
//设置如果buffer溢出,是否需要强制输出,
如果其值被定义为true(缺省值),输出正常,
如果它被设置为false,如果这个buffer溢出,
就会导致一个意外错误的发生.如果你把buffer设置为none,
那么你就不能把autoFlush设置为false.
[ isThreadSafe="true / false" ] //设置Jsp文件是否能多线程使用。缺省值是true,也就是说,
JSP能够同时处理多个用户的请求,如果设置为false,
一个jsp只能一次处理一个请求
[ info="text" ]
//一个文本在执行JSP将会被逐字加入JSP中,
你能够使用Servlet.getServletInfo方法取回。
[ errorPage="relativeURL" ]
//设置此页是否为出错页,
如果被设置为true,你就能使用exception对象
[ contentType="mimeType
[ ;charset=characterSet ]"
/ "text/html ; charset=ISO-8859-1" ]
//设置MIME类型 。缺省MIME 类型是: text/html,
缺省字符集为 ISO-8859-1
[ isErrorPage="true / false" ] %>

iv. 包含一个文件:

"< %@ include file="relativeURL" %> "

在编译的时候可以(静态的)插入文件;

v. 包含一个表达式:

"< %= expression %>"

在运行的时候显示的是表达式的值;

vi. 申明变量:

" < %! declaration;
[ declaration; ]+ .. % >";

"< %!int I;% >"

vii. 创建一个Bean实例并设置其属性:"";class属性:从一个class中示例一个对象;id属性:指示此class对象的引用名;scope属性: Bean存在的范围以及id变量名的有效范围,如果为page则只在此页面类有效(下次调用该页面时时将重新创建class对象);如为session则在session有效期类,此class对象只创建一次;如为Application则class在整个程序运行工程中始终有效,并且只创建一次(相当于静态量)

d) Tomcat的JSP例程介绍:

< !-- Copyright (c)
1999 The Apache Software
Foundation. All rights
reserved.
Number Guess Game
Written by Jason Hunter
< jasonh@kasoftware.com>,
CTO, K&A Software
http://www.servlets.com -->;
< %@ page import = "num.NumberGuessBean" %>
< ! -导入的Java包- >
< jsp:useBean id="numguess"
class="num.NumberGuessBean"
scope="session"/ >
< ! -创建对象并设置其应用名为numguess
并申明此对象在session有效期内始终有效-->
< html>
< head>
< title>Number Guess< /title>
< /head>
< body bgcolor="white">
< font size=4>
< % if (numguess.getSuccess())
{
%>
//调用NumberGuessBean对象的getSuccess方法
Congratulations!
You got it.
And after just
< %= numguess.getNumGuesses()%>
tries.< p>
< % numguess.reset(); %>
Care to < a href="numguess.jsp">try again?
< % } else if (numguess.getNumGuesses() == 0)
{
%> Welcome to the Number Guess game.
I'm thinking of a number between 1 and 100.
< form method=get>
What's your guess?
< input type=text name=guess>
< input type=submit value="Submit">
< /form>
< % } else { %>//
Good guess, but nope. Try < b>
< %= numguess.getHint() %>< /b>.
You have made < %= numguess.getNumGuesses()
%> guesses.< p>
I'm thinking of a number between 1 and 100.
< form method=get> What's your guess?
< input type=text name=guess>
< input type=submit value="Submit">
< /form> < % } %>
< /font>
< /body>
< /html>

从例子我们可以看到,JSP是通过程序的逻辑来控制页面的显示的,通过程序来得到显示的动态属性。

时间: 2024-11-03 22:44:30

初学者如何快速入门JSP实例分析的相关文章

ThinkPHP3.1基础知识快速入门_php实例

在当今众多的MVC框架中,ThinkPHP是一个快速.简单的基于MVC和面向对象的轻量级PHP开发框架,其遵循Apache2开源协议发布,自从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,尤其注重开发体验及易用性,并且拥有众多的原创功能和特性,为WEB应用开发提供了强有力的支持.是众多PHP开发人员的首选.本文就ThinkPHP3.1基础知识做一简述. 1.目录结构 ThinkPHP最新版本可以在官方网站(http://thinkphp.cn/down/framewor

ASP初学者怎样快速入门

初学|快速入门|初学|快速入门 大家好!今天我想对初学ASP的人说一说,怎样才能快速入门.第一,要持之以恒,坚持不懈,"水滴石穿".第二,要不怕苦,今天遇到难解决的问题就回避,那么问题会越来越多.第三,要一边看书一边编程,二者缺一不可.好了,今天先说一些思想问题,为以后做一下准备,在以后我会进一步和大家切磋关于ASP的话题.

跟我学Laravel之快速入门_php实例

安装 Laravel框架使用 Composer 执行安装和依赖管理.如果还没有安装的话,现在就开始 安装 Composer 吧. 安装Composer之后,你就可以通过命令行使用如下命令安装Laravel了: composer create-project laravel/laravel your-project-name 或者,你可以从 Github仓库 下载.接下来,在 安装Composer 之后,在项目根目录下执行 composer install 命令.该命令将会下载以及安装框架的依赖组

PHP文件缓存smarty模板应用实例分析_php实例

本文实例分析了PHP文件缓存smarty模板应用.分享给大家供大家参考,具体如下: 一.使用缓存 要开启smarty的缓存,只需将caching设为true,并指定cache_dir即可. 使用cache_lefetime指定缓存生存时间,单位为秒 要对相同页面生成多个不同的缓存,在display或fetch中加入第二参数cache_id,如: $smarty->display('index.tpl',$my_cache_id); 此特性可用于对不同的$_GET进行不同的缓存  二.清除缓存 c

《ABAQUS 6.14超级学习手册》——1.6 实例快速入门

1.6 实例快速入门 下面将介绍一个简单的应力分析实例,帮助读者初步了解ABAQUS建模和分析的基本步骤,掌握ABAQUS进行应力和位移分析的方法. 1.6.1 问题的描述 一前后左右对称支座底面固定约束,上表面承受均布载荷0.5Mpa,结构尺寸如图1-11所示,求此支座受载后的Mises应力.位移分布. 材料性质:弹性模量E=2.1e3,泊松比v=0.31 均布载荷:p=0.5Mpa 注意: ABAQUS中的量都没有单位,用户应自己保证量纲的一致性.1.6.2 启动ABAQUS 如前所述,启动

python中文件读写的快速入门实例

说明:     相比其他语言python真的简洁很多,自己往前在学习C语言的过程中,起码要到很后面很后面才提起文件操作,但python的快速入门却以一种非常简洁的方法让你对文件操作有个体验,当然这是在linux环境下,不过不得不说,linux环境下进行编程的学习,确实是要比windows下面可以学到更多知识,下面的两个例子都是来自<Python核心编程>这本书中,真的非常经典! 一.创建并写入文件的实例 直接给代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Yii2框架制作RESTful风格的API快速入门教程_php实例

先给大家说下什么是REST restful REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移. 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一. 他在论文中提到:"我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强.性能好.适宜通信的架构.REST指的是一组架构约束条件和原则." 如

Vue.js快速入门实例教程_javascript技巧

什么是vue vue是法语中视图的意思,Vue.js是一个轻巧.高性能.可组件化的MVVM库,同时拥有非常容易上手的API. 一.基本结构 index.html代码: <script src="../vue.js"></script> <div id="app"> {{ message }} </div> <script src="app.js"></script> <

ThinkPHP快速入门实例教程之数据分页_php实例

数据分页可能是web编程里最常用到的功能之一.ThinkPHP实现分页功能十分简洁.只需要定义几个参数就可以实现.并且扩展也十分方便. 下面让我们从零开始实现ThinkPHP的分页程序吧. 1.首先,我们得创建一个用于分页测试的数据库 test.sql代码如下. CREATE TABLE `test` ( `id` int(10) unsigned NOT NULL auto_increment, `name` char(100) NOT NULL, `content` varchar(300)