java最短摘要_Java编程学习摘要(10)JSP和Servlet [B]

Java编程学习摘要(10)JSP和Servlet [B]

8.JSP指令

从本质上讲JSP还是Java程序,因为它最终还是会被翻译成Servlet进而编译成class文件执行。但是由于JSP是嵌入式的Java程序,有些特殊的符号还是需要学习的。下面我们一一列举,读者不必深究,多使用之后就会熟悉。

(1)HTML注释(客户端查看源文件能看到)

JSP语法:

例1

例2

%> -->

在客户端页面源程序中显示为:

描述

可以在注释中使用任何有效的JSP动态表达式。当用户第一次调用该页面或该页面后来被重新调用时,该表达式将被赋值。

(2)JSP注释

JSP注释作为JSP页面的文档资料,但是该注释在客户端通过查看源文件的方法是看不到的。即该注释不发送到客户端。

JSP语法:

--%>

例子

注释测试

(3)声明

在JSP页面脚本语言中声明变量或方法

JSP语法:

声明;[声明;]+…… %>

例子:

%>

注意:

(i) 变量必须先声明,然后才能使用。

(ii) 声明必须以分号结尾,但是在表达式中则不用。

(iii) 通过page指令导入的包中已声明的变量或方法,可以在主JSP文件中直接使用它们。

(iv)一般情况下,一个声明的有效范围是本页面。但是,如果JSP源文件用指令或include指令包含一些静态文件,声明的有效范围将会扩大,也就是说:声明在该静态文件中也有效。但是如果JSP源文件中用指令包含进来一个动态文件,主JSP文件中的声明在该动态文件中将不起作用。

(4)表达式

在JSP脚本语言中,可以使用任何有效的表达式。

JSP语法:

%>

例子1:

%>

color="blue">

例子2:

随机显示一个数字:

color="blue">

描述

表达式用于求值,然后其值转化为字符串,而且插入在JSP文件中显示该表达式的地方,注意:不能使用分号作为表达式的结尾,然而,在脚本段标签中,表达式要求以分号作为结尾。

(5)脚本段

在JSP页面脚本语言中,包含一段有效的代码片段。

JSP语法:

%>

例1:

for(int i=0;i<8;i++)

{ out.println(i); }

%>

long n=6666;

application.setAttribute("maxNumber",Long.toString(n));

out.println(application.getAttribute("maxNumber"));

%>

描述

在脚本段能声明多个变量和方法。能使用任何有效的表达式。能使用任何JSP隐含的对象或任何用标签声明的对象。说明:假如脚本段有输出语句,则输出内容被存储在out对象中,通过out对象输出到JSP页面中。

下面是JSP中一些功能语句:

(1)Include指令:

作用:该指令用于包含一个文本或代码的文件。

JSP语法:

include file="relativeURL"%>

属性:file="relativeURL"(file是被包含文件的路径名,其值是一个URL指向文件的一部分,没有协议、端口号或域名)

例子:include.jsp文件内容为:

Include指令测试

random.jsp中的随机显示的数为:

%>

random.jsp文件中内容为:

在页面中显示为:

random.jsp中的随机显示的数为: 2148.093521070482

(2)Page 指令

作用:定义整个JSP页面的全局属性。

JSP语法:

[ language="java"]

[ extends="package.class"]

[ import= "{ package.class | package.* }, ..." ]

[ session="true|false" ]

[ buffer="none|8kb|sizekb" ]

[ false" ]

[ isThreadSafe="true|false" ]

[ info="text"]

[ errorPage="relativeURL"]

[ contentType="mimeType [ ;charset=characterSet ]" |

"text/html ; charset=ISO-8859-1" ]

[ isErrorPage="true|false"] %>

例:

%>

%>

%>

%>描述:

Page指令的作用范围是整个JSP文件和该JSP文件用include指令或包含进来的任何静态文件,不适用于任何动态的包含文件。可以使用多个Page指令。但是每一个属性只能使用一次,除了import。一个好的编成风格是常常将它放到文件的顶部。

language="java"

在JSP文件的脚本段、声明和表达式中使用的语言。现只允许用"JAVA"。

extends="package.class"

用于指明JAVA类文件超类全名。使用该属性时要小心,因为它会限制JSP引擎编译文件的能力。

import= "{ package.class |

package.* }, ..."

JSP文件中导入的一个或多个用逗号隔开的包的列表。这些包(和它们的类)可以在JSP文件的脚本段、表达式、声明和标签中使用。你必须将import属性放到导入的类的标签前面。如果你想导入多个包,你可以在import后面用逗号将每个包隔开即可,或你可以在一个JSP文件中使用多个import.

session="true|false"

该属性用于确定JSP页面是否使用HTTP session.假如这个值是true,

则sesssion引用的是当前或新的session.

假如这个值是false,则在JSP文件中,不能使用session对象。默认值是true.

buffer="none|8kb|sizekb"

设置buffer缓冲区的大小,当out对象将被编译的JSP页面向客户Web浏览器端输出时使用。它的默认值是8kb.假如你指定了buffer缓冲区的大小,这个输出量将不低于你指定的大小。

false"

该属性指出:当缓冲区充满时,是否自动刷新。如果值为true(默认值为true),则自动刷新。如果值为false,则当缓冲区溢出时,将会产生错误。而且如果buffer属性的值设为none,autoFlush属性的值不能设为false.

isThreadSafe="true|false"

假设这个值设为true,多个线程能同时访问一个JSP页面。假如这个值为false,对一个JSP页面,JSP引擎一次只能响应一个用户的请求。默认值为true。

info="text"

关于作者、版本和著作权等信息,可以通过javax.servlet.Servlet.getServletInfo()方法查到该信息的详细情况。

errorPage="relativeURL"

该属性用于设置处理例外事件的JSP文件的路径名。假如这个路径名以"/"开始,则这个路径名是JSP应用文档根目录而言的,而且由Web服务器决定。否则,这个路径是相对于当前JSP文件而言的。

isErrorPage="true|false"

JSP文件是否显示错误页面。如果这个值为true,你可以使用例外exception对象。如果这个值为false(默认值也为false),在JSP文件中,不能使用exception对象。

contentType="mimeType [

;charset =characterSet ]" |

"text/html;charset=ISO-8859-1"

JSP文件中使用的MIME type和character

encoding(字符编码)是用于响应客户端的请求。你可以使用JSP引擎中有效的任何MIME type或character

set(字符集)默认的MIME type是text/html,而且默认的字符集合是ISO-8859-1

(3)

元素

作用:将客户端的请求转交给一个HTML文件、JSP文件或脚本段处理。

JSP语法:

/>

属性: page="{ relativeURL |

expression %> }"

该属性用于设置将要转交的文件的相关URL.

该URL不能包含协议名、端口号或域名,相对于当前JSP文件来说的。如果它是绝对地址(以"/"开始),该路径由你的Web或应用服务器决定。

例子:

/>

描述:

标签将请求对象从一个JSP文件转交给另一个文件处理。而引擎对主JSP页面下面的代码不再执行。

说明:如果JSP文件的输出被设置为缓冲输出(即使用默认的Page指令值或直接设置缓冲区的buffer大小),则在请求被转交之前,缓冲区被清空。如果输出被设置为非缓冲输出(即用Page指令设置buffer=none),而且输出区中已经有内容,则使用元素,将会导致非法例外。

(4) 元素

作用:取得Bean属性的值,以便在结果页面中显示。

JSP语法:

property="propertyName"/>

属性:name="beanInstanceName"

在标签中声明的Bean实例的名字。

property="propertyName" Bean属性的名字。

例:

Bean的程序代码为:

package AccessDatabase;

public class Readdate

{

private String username="changcheng";

public String void getUsername(){return username; }

}

JSP文件的内容为:

class="AccessDatabase.readdate" />

从Bean中取得属性名为username的值为:

/>

执行后显示结果为:

从Bean中取得属性名为user的值为:changcheng

描述:

在使用前,你必须使元素创建或调用一个Bean实例。标签是用于取得JavaBeans属性值,相当于调用Bean中的某个属性的getXXX()方法。说明:使用元素时如上例中:

name=" init " property="username"

/>,username必须是Bean(Readdate)中的属性,且该Bean中要有getUsername()方法,否则编译时会出错。

(5)

作用:在JSP文件中,包含一个静态或动态文件.

JSP语法:

/>

例子:

/>

/>

/>

属性:

标签允许你包含一个静态文件或动态文件。一个静态文件被执行后,它的内容插入在主JSP页面中。一个动态文件对请求作出响应,而且将执行结果插入到JSP页面中。

标签能处理两种文件类型,当你不知道这个文件是静态或动态的文件时,使用该标签是非常方便的。

当include动作执行完毕后,JSP引擎将接着执行JSP文件剩下的文件代码。

page="{ relativeURL |

}"

该属性指出被包含文件相关URL;该URL不能包含协议名、端口号或域名。该URL是绝对或相对于当前JSP文件来说的。如果它是绝对地址(以"/"开始),该路径由你的Web或应用服务器决定

flush="true"

在JSP文件中,常设置flush="true",因为它不是一个默认值。

(6)

元素

作用:下载一个plugin插件到客户端以便执行applet或Bean

JSP语法:

type="bean|applet"

code="classFileName"

codebase="classFileDirectoryName"

[ name="instanceName"]

[ archive="URIToArchive, ..." ]

[ align="bottom|top|middle|left|right" ]

[ height="displayPixels"]

[ width="displayPixels"]

[ hspace="leftRightPixels"]

[ vspace="topBottomPixels"]

[ jreversion="JREVersionNumber | 1.1"]

[ nspluginurl="URLToPlugin"]

[ iepluginurl="URLToPlugin"]>

[

[

例子:

codebase="/html">

元素在计算机启动时,给applet或Bean传递参数及其值。如果plugin没有启动,元素将给使用者提供一条反馈信息。如果plugin启动了但是applet或Bean没有启动,plugin常常弹出一个window窗口,为用户解释出错的原因。

属性:

type="bean|applet"

plugin将执行的对象的类型。你必须指定Bean或applet,因为这个属性没有默认值。

code="classFileName"

plugin将执行的JAVA类文件的名字。在文件名后面必须跟上.class扩展名。文件名是相对于codebase属性中命名的目录。

codebase="classFileDirectoryName"

包含applet代码的目录名的相对或绝对地址。如果没有提供该值,调用的JSP文件的路径将被使用。

name="instanceName"

Bean或applet实例的名字,相同的JSP文件通过它可以相互通信。

archive="URIToArchive,

..."

一个用逗号隔开的路径列表,该路径列表指出用类装载器装载的类文件的位置。类装载器是位于codebase属性中命名的目录。

align="bottom|top|middle|left|right"

applet或Bean中显示的图象的位置是相对于JSP结果页面中的这样的行来说的,该行是JSP文件中包含的行。

height="displayPixels"

width="displayPixels"

applet或Bean以像素为单位显示的初始高度和宽度,不包括applet或Bean弹出的任何窗口和对话框.

hspace="leftRightPixels"

vspace="topBottomPixels"

applet或Bean以像素为单位显示的图象的左右(或上下)之间间距的大小。一般是一个非常小的非零值。

jreversion="JREVersionNumber|1.1"

applet或Bean要求的JAVA运行时环境(JRE)的版本。默认的值是1.1

nspluginurl="URLToPlugin"

用户使用Netscape

Navigator浏览器时需下载JRE插件的URL。它是完整的URL地址,有协议名、端口号和域名。

iepluginurl="URLToPlugin"

用户使用Internet

Explorer浏览器时需下载JRE插件的URL.它是完整的URL地址,有协议名、端口号和域名。

[

【注意】相比HTML,jsp文件变得更短了,JSP的主体是HTML,嵌入的Java语句只负责动态效果,所以使用比Servlet方便的多。这里关键的一点是在头部设置页属性

page contentType="text/html; charset=gb2312"

%>,其中charset=gb2312就是告诉JSP引擎本地编码是gb2312,然后JSP引擎就会自动进行转换,不需要手工转了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现
C语言是一种广泛使用编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。下面详细介绍C语言的基本概念和语法。 1. 变量和数据类型 在C语言中,变量用于存储数据,数据类型用于定义变量的类型和范围。C语言支持多种数据类型,包括基本数据类型(如int、float、char等)和复合数据类型(如结构体、联合等)。 2. 运算符 C语言中常用的运算符包括算术运算符(如+、、、/等)、关系运算符(如==、!=、、=、<、<=等)、逻辑运算符(如&&、||、!等)。此外,还有位运算符(如&、|、^等)和指针运算符(如、等)。 3. 控制结构 C语言中常用的控制结构包括if语句、循环语句(如for、while等)和switch语句。通过这些控制结构,可以实现程序的分支、循环和多路选择等功能。 4. 函数 函数是C语言中用于封装代码的单元,可以实现代码的复用和模块化。C语言中定义函数使用关键字“void”或返回值类型(如int、float等),并通过“{”和“}”括起来的代码块来实现函数的功能。 5. 指针 指针是C语言中用于存储变量地址的变量。通过指针,可以实现对内存的间接访问和修改。C语言中定义指针使用星号()符号,指向数组、字符串和结构体等数据结构时,还需要注意数组名和字符串常量的特殊性质。 6. 数组和字符串 数组是C语言中用于存储同类型数据的结构,可以通过索引访问和修改数组中的元素。字符串是C语言中用于存储文本数据的特殊类型,通常以字符串常量的形式出现,用双引号("...")括起来,末尾自动添加'\0'字符。 7. 结构体和联合 结构体和联合是C语言中用于存储不同类型数据的复合数据类型。结构体由多个成员组成,每个成员可以是不同的数据类型;联合由多个变量组成,它们共用同一块内存空间。通过结构体和联合,可以实现数据的封装和抽象。 8. 文件操作 C语言中通过文件操作函数(如fopen、fclose、fread、fwrite等)实现对文件的读操作。文件操作函数通常返回文件指针,用于表示打开的文件。通过文件指针,可以进行文件的定位、读等操作。 总之,C语言是一种功能强大、灵活高效的编程语言,广泛应用于各种领域。掌握C语言的基本语法和数据结构,可以为编程学习和实践打下坚实的基础。
下面是一个使用ServletJSP实现用户注册功能的示例代码: 1. 创建一个名为RegisterServletJava Servlet,用于处理用户提交的注册请求。 ```java import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/register") public class RegisterServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 获取用户提交的注册信息 String username = request.getParameter("username"); String password = request.getParameter("password"); String email = request.getParameter("email"); // TODO: 对用户提交的信息进行验证,并保存到数据库中 // 跳转到注册成功页面 request.getRequestDispatcher("/register_success.jsp").forward(request, response); } } ``` 2. 创建一个名为register.jspJSP页面,用于显示用户注册表单,并将用户填的表单数据提交到RegisterServlet处理。 ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>用户注册</title> </head> <body> <h1>用户注册</h1> <form action="${pageContext.request.contextPath}/register" method="post"> <p> <label>用户名:</label> <input type="text" name="username" required> </p> <p> <label>密码:</label> <input type="password" name="password" required> </p> <p> <label>邮箱:</label> <input type="email" name="email" required> </p> <p> <button type="submit">注册</button> </p> </form> </body> </html> ``` 3. 创建一个名为register_success.jspJSP页面,用于显示用户注册成功信息。 ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>用户注册</title> </head> <body> <h1>用户注册成功!</h1> <p>感谢您注册我们的网站。</p> </body> </html> ``` 这样,当用户访问/register页面时,会显示用户注册表单。用户填并提交表单后,RegisterServlet会处理用户提交的注册请求,并将用户信息保存到数据库中。最后,跳转到register_success.jsp页面,显示注册成功信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值