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的请求
shu
tdown 指定向端口发送的命令字符串
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