JAVA一步一步的WEB编程关于JSP与JavaBean

发表于:2007-07-04来源:作者:点击数: 标签:
java 的WEB应用有SERVLET,JSP,XML等,用SERVLET来写CGI程序来实现请求与 响应服务,它是 服务器 端的小应用程序。JSP比起SERVLET来说更容易 开发 但它最 终将转换成SERVLET,JSP结合了HTML(或XML)产生了许多脚本标记,在这些定义的 标记中,封装了数据,属
java的WEB应用有SERVLET,JSP,XML等,用SERVLET来写CGI程序来实现请求与

响应服务,它是服务器端的小应用程序。JSP比起SERVLET来说更容易开发但它最

终将转换成SERVLET,JSP结合了HTML(或XML)产生了许多脚本标记,在这些定义的

标记中,封装了数据,属性,嵌入了JAVA程序段,表达式,也定义了一些行为角色

结合JAVABEAN,建立更为简化,直观的编程方向,作为一种SERVLET API的扩展,

JSP所表现所有的优点和特性更加利于WEB容器的开发应用。JAVABEAN作为JAVA的

组件技术,在JSP中的应用更是起到对数据的设置和调用动态产生内容。

作为一种应用实现,所以重在理解,所以仅就JAVA和JAVABEAN 开发作一配置到运行

实例如下,

首先,作为JAVA程序员,如果作JSP WEB编程应用方面的开发,就不得不对标记语

言有一点的理解和认识,<%--- %>中主要是代码片断和表达式<%!--%>定义变量和方法

<%=  %>表达输出.使用JAVABEAN,JSP中有这样的标记<JSP:USEBEAN>

还有与之包含的标记<JSP:SETPROPERTY>和<JSP:GETPROPERTY&g将在下面的例子中

用到。

首先到SUN的主页上下载JDK,我这里下载的是JDK1.3 ,安装后放于C:\jdk1.3

然后下载TOMCAT,大家可下载的地方比较多,这里是在http://jakarta.apache.org管方网站上

下载的版本为jakarta-tomcat-3.3a 安装后放于C:\jakarta-tomcat-3.3a

在WINDOWS中主要设置AUTOEXEC.BAT批处理文件

加上下面两条如下

set java_home=c:\jdk1.3

set tomcat_home=C:\jakarta-tomcat-3.3a



这样可以说一个简单的WEB服务器支持JSP、SERVLET运行环境就算好了,然后要作的就是先测试一

下是不是能运行HTTP服务。

首先进入C:\jakarta-tomcat-3.3a\bin\目录双击startup在这个MS-DOS中如果出现OUT OF ENVIRONMENT

SPACE ,不要紧你只要点击窗口的属性,在内存这一栏中初始环境设为2816,就可以了,在次运行STARTUP

就会成功的出现两个窗口,好现在打开浏览器,输入HTTP://LOCALHOST:8080 ,TOMCAT 的主页面就会出

现在我们的眼前,写一个自己的JSP程序看看


"mysjp.jsp"


<html>


<body>


<%=new java.util.Date()%>


<%=new java.lang.String("hello my jsp ")%>


<%for(int i=0;i<10;i++){


out.print("hellojsp "+i+"<br>");}


%>


<%String s="hello jsp world";%>


<%=s%>


<%!String d;%>


<%d="hello jsp my world";%>


<%=d%>


</html>


</body>


作为测试我们把它放在C:\jakarta-tomcat-3.3a\webapps\ROOT目录下,

URL输入:http://localhost:8080/myjsp.jsp就会出现你所要显示的内容来

TOMCAT服务器的配置方面请大家参阅其它资料,这里就用到的作简要的说明

tomcat的目录结构如下:

应用

(一):目录结构

tomcat的目录结构如下:

目录名: 简介

bin : 存放启动和关闭tomcat脚本

conf : 包含不同的配置文件,server.xml(Tomcat的主要配置文件)和web.xml

work : 存放jsp编译后产生的class文件

webapp: 存放应用程序示例,以后你要部署的应用程序也要放到此目录

logs : 存放日志文件

lib/japser/common : 这三个目录主要存放tomcat所需的jar文件

(二):server.xml配置简介

下面我们将讲述这个文件中的基本配置信息,更具体的配置信息见tomcat的文档

server:

port 指定一个端口,这个端口负责监听关闭tomcat的请求

shutdown 指定向端口发送的命令字符串

service:

name 指定service的名字

Connector (表示客户端和service之间的连接):

port 指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求

minProcessors 服务器启动时创建的处理请求的线程数

maxProcessors 最大可以创建的处理请求的线程数

enableLookups 如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来

得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址

redirectPort 指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口



acceptCount 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列

中的请求数,超过这个数的请求将不予处理

connectionTimeout 指定超时的时间数(以毫秒为单位)

Engine (表示指定service中的请求处理机,接收和处理来自Connector的请求):

defaultHost 指定缺省的处理请求的主机名,它至少与其中的一个host元素的name属性

值是一样的

Context (表示一个web应用程序,通常为WAR文件,关于WAR的具体信息见servlet规范)

:

docBase 应用程序的路径或者是WAR文件存放的路径

path 表示此web应用程序的url的前缀,这样请求的url为http://localhost:8080/path

/****

reloadable 这个属性非常重要,如果为true,则tomcat会自动检测应用程序的/WEB-IN

F/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重起to

mcat的情况下改变应用程序

host (表示一个虚拟主机):

name 指定主机名

appBase 应用程序基本目录,即存放应用程序的目录

unpackWARs 如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件

中运行应用程序

Logger (表示日志,调试和错误信息):

className 指定logger使用的类名,此类必须实现org.apache.catalina.Logger 接口

prefix 指定log文件的前缀

suffix 指定log文件的后缀

timestamp 如果为true,则log文件名中要加入时间,如下例:localhost_log.2001-10-

04.txt

Realm (表示存放用户名,密码及role的数据库):

className 指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口

Valve (功能与Logger差不多,其prefix和suffix属性解释和Logger 中的一样):

className 指定Valve使用的类名,如用org.apache.catalina.valves.AccessLogValve

类可以记录应用程序的访问信息

directory 指定log文件存放的位置

pattern 有两个值,common方式记录远程主机名或ip地址,用户名,日期,第一行请求

的字符串,HTTP响应代码,发送的字节数。combined方式比common方式记录的值更多



(三):管理

1:配置

打开C:\jakarta-tomcat-3.3a\conf\users\admin-users.xml设置管理如下

<tomcat-users>

  <user name="admin" password="11111111" roles="tomcat_admin,tomcat,role1" />

</tomcat-users>



然后重起tomcat,在浏览器中输入http://localhost:8080/admin/

就会出现Context Admin等HTML页,点击后会出现会弹出对话框,

输入上面的用户名和密码即可管理了

好,关于TOMCAT配置管理就说到这里,

现在来写一个JAVABEAN 看看如何在JSP运用,

package beans;

public class TestBean{

private String s="blue";

public void setMybean(String s){

this.s=s;

}

public String getMybean(){

return s;}

}

my.jsp:

<%@page import="beans.TestBean %>

<html>

<body>

<java:useBean id="testBean" class="beans.TestBean" scope="page"/>

<java:getProperty name="testBean" property="Mybean"/>

<body>

</html>

因为是在ROOT目录下所以BEAN CLASS放在了WEB-INF/CLASSES/BEANS







                    写于02年7月30日5时于西安 newless

原文转自:http://www.ltesting.net