LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2515|回复: 0

《JSP入门》 学习笔记

[复制链接]
发表于 2004-5-25 20:36:13 | 显示全部楼层 |阅读模式
http://linuxfire.dhis.org/~tony/article/jspstart.htm

JSP基本语法


表达式:

<%= expression %>

表达式的值将直接输出到页面。

<%String hello=”hello world” %>

<%=hello %>

不能用一个分号(";")来作为表达式的结束符,但是同样的表达式用在scriptlet中就需要以分号来结尾。



Scriptlet脚本代码:

<% code fragment %>

它将被插入到JSP所生成的目标Servlet的Service方法中。

一个scriptlet能够包含多个jsp语句,方法,变量,表达式。



声明:

<%!JAVA Code%>

并不产生输出,值时定义了提供调用的方法和变量,因此将其和JSP 表达式与JSP脚本结合使用。



Page 指令

<%@ page

[ language=”java”]

[ extends=”package.class”]

[ import=”{package.class | package.*},….”] 使用逗号(“,”)分割

[session=”true | false”]

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

[ autoFlush=”true | false”]

[ isThreadSafe=”true | false”]

[ info=”text”]

[ errorPage=”relativeURL”]

[ contentType=”mimeType [ ;charset=characterSet]” | ”text/html;charset=ISO-8859-1”]

[ isErrorPage=”true | false”]

%>

定义JSP文件的全局属性。



Include 指令:

<%@include file=”URL” %>

include指令将会在JSP编译时到入一个包含文本或代码的文件(静态包含)。



JSP 注释:

<!-- 注释[<%=表达式%>]-- > 显式

<% -- 注释 --%> 隐式


<jsp:include > 指令

<jsp:include page=”{relativeURL|<%= expression %>}” flush=”true” />

与include 指令不同,<jsp:include>指令在JSP 页面被用户请求时才将指定文件的内容插入服务器的响应输出中。


<jsp:useBean> 指令

<jsp:useBean id=”Name” scope=”page | request | session | application” class=”package.class”> </jsp:useBean>

<jsp:useBean>指令能在JSP页面中载入并使用一个JavaBean。



<jsp:setProperty> 指令

用来设置Bean中的属性值



<jsp:getProperty> 指令

返回一个已被创建的Bean组件的属性值。

<jsp:getProperty name=”beanInstanceName” property=”propertyName” />

获取Bean的属性值,显示在页面中。



<jsp:forward> 指令

用来把当前的页面重导至另一个页面上,客户端看到的地址是A页面,而实际内容却是B页面的内容。



<jsp:plugin> 指令

用来向客户端浏览器插入Java Applet插件来运行(Java小程序)或Bean对象。


JSP 内部对象


request

getParameter(String name)获得客户端传送给服务器端的参数值,该参数由name 指定

getParameterNames()获得客户端传送给服务器端的所有参数名称,结果集是一个Enumeration(类举)类的实例。

getParameterValue(String name)获得指定参数值。



response 重要的对象之一,只有通过它才能响应客户端的请求,向客户端输出信息。


PageContext


session用来在用户之间分别保存用户信息。

session.putValue(value , String name)

session.getParameter(String name)



application 重要的对象之一,一旦创立了application 对象,除非服务器关闭,否则application对象将一直保持

getAttribute(String name) 返回由name指定名称的 application 对象属性的值,这是个 object对象.

SetAttribute(String name, Object value) 用value来初始化某个属性,该属性由name指定



out

out.println()

out.print()

out.newLine()

……


config


exception 处理JSP文件在值在执行时发生的错误和异常。内建3个方法:

getMessage() 返回错误信息。

printStackTrace() 已标准的形式输出一个错误和错误的堆栈。

toString() 以字符串的形式返回一个对异常的描述。



page


JavaBean 组件

定义Bean的属性就必须为其创建访问方法,访问方法就是对组件中定义的属性的访问,包括读和写两种。读:用于取出Bean属性值的取值函数,方法以get为前缀,并连接首字符为大写的属性名。写:用于设置Bean属性的赋值函数,方法以set为前缀,并连接首字符为大写的属性名。必须将Bean 属性访问方法的访问权限定义为公有(public)。


数据库连接Bean:


导入JDBC标准类库 import java.sql.*;


注册数据库驱动程序 Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);


建立数据库连接

Connection conn=DriverManager.getConnection( “jdbcdbc:databaseame”, ”username”, ”password”);

创建stmt 对象,来执行数据库操作(执行SQL指令)

Statememt stmt=conn.createStatememt();


执行数据库操作 stmt.executeQuery(String sql) 返回信息在ResultSet 对象。


关闭数据库 stmt.close(); conn.close();


创建文件应用程序

标准的输入/输出封装在:Java.lang 包。

文件的输入/输出封装在:Java.io 包。

图形的输入/输出封装在:Java.wat 包。

对网络接口的输入/输出封装在:Java.net 包。


文件的输入/输出流

输入对象:FileInputStream objectname = new FileInputStream(“filename”);

读取数据:read();

输出对象:FileOutputStream objectname = new FileOutputStream(“filename”);

写入数据:write();

RamdonAccessFile类可利用length()方法和seek()方法实现文件的追加。


File 类

专门处理文件与目录I/O操作的类,即创建一个目录,获取一个路径名、文件名以及文的有关属性等,包含在Java.io包中,提供了3个构造方法:


File(String path) :根据路径创建文件对象。

eg: File f1 = new File(“C:\jsp\javabean”);


File(String path,String name) :根据路径和文件名创建文件对象。

eg: File f2 = new file(“C:\jsp\javabean”,”dbconn.java”);


File(File dir,String name) :根据目录和文件名创建文件对象。

eg: File f3 = new File(“C:javabean”,”dbconn.java”);

注:Java 可以正确处理和的路径分隔符;


JSP程序调试

中文问题

JSP不支持中文,解决中文问题有两种方法:


时区设置为[英语(美国)];


在向数据库添加数据时,把GB2312编码的数据转换成8859-1编码,代码如下:

String speaker= new String(request.getParameter(“username”).getBytes(“8859-1”));


程序调试

exception对象内建的3个方法:


getMessage() 返回错误信息。


printStackTrace() 以标准错误的形式输出一个错误和错误的堆栈。


toString() 以字符串的形式返回一个对异常的描述。

注:必须在isErrorPage=true的情况下才可使用额exception对象。


JDBC类介绍


Java.sql.DriverManager :该类负责处理JDBC数据库驱动程序的加载和卸载。该驱动程序与远程数据库相连,返回一个Java.sql.Connection对象。


Java.sql.Connection :该类负责建立与数据库服务器的连接。

由DriverManager.getConnection方法建立。


Java.sql.Statement :执行静态SQL语句并获得尤其产生的结果的基本方法。

由Connection.createStatement方法建立。


Java.sql.ResultSet :从数据库服务器返回的结果集,是一个用来分析SQL查询语句的结果类。


Java JDBC 异常类:

Java.sql.DataTruncation

Java.sql.SQLExeception

Java.sql.SQLWarning
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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