| |
---摘自互联网
一旦你写好你的 servlet, 可以运行在很多web服务器上, 或者在 servletrunner里. 4.1 属性
属性是一对key-value, 用作配置, 创建, 和servlet的初始化. 如, servlet.phone.code=phoneservlet 的key 是 servlet.phone.code,他的value 是 phoneservlet.
一个servlet有两个属性. 一个是servlet.name.code, 他的值是servlet的类名. 另一个是servlet.name.initargs, 他的值是保存获取servlet的初始化参数
用 code 属性
servlet.name.code 属性用它类的名命名你的servlet. 如果你的servlet使用初始化参数,这个属性就必须的. 它允许服务器联合servlet 对象和他的初始化参数项,他们两有同样的名字name. 即使你的servlet没有使用初始化参数,也推荐使用这个属性,以便客户端能用它自己的名字达到servlet.
initargs 属性的语法
servlet.name.initargs 属性的值是保存初始化参数的值. 相应的一个参数的语法是:parametername=parametervalue. 举例一个 phone servlet参数象下面:
servlet.phone.initargs= phonelist=servlets/phonelist
如果有多个初始化参数, 他们用,号间隔开,如:
servlet.dbdemo.initargs= username=fill_in_the_user, password=fill_in_the_password, owner=fill_in_the_name
属性文件
存在一个文件中的属性一般地叫"servlet.properties", 尽管但servletrunner运行时你可以规定另一个名字,这个文件应当保存所有将要运行的servlet的属性. 它应当是 plain text; you 可以在编辑器中创编它. 这里举个例子:
# phone servlet (sample.html) servlet.phone.code=phoneservlet servlet.phone.initargs= phonelist=servlets/phonelist
# bulletin board servlet servlet.bboard.code=bboardservlet
# order entry servlet servlet.dbdemo.code=orderentryservlet servlet.dbdemo.initargs= username=fill_in_the_user, password=fill_in_the_password, owner=fill_in_the_name
4.2 用servlet runner
如果你要在web服务器上运行你的servlet, 请看相应服务器的说明书. 这里只解释怎样在一个随产品而带的servletrunner驱动程式环境中运行servlet.
这个servletrunner是个小的驱动工具, 它是多线程的, 这样它可以运行多个servlet. 但它在服务器启动时不自动启动的. 因为小,所以只有很小的资源开销.
这个servletrunner 在 /bin 目录中. 用-help 调用它会有下列信息 出现。:
% ./bin/servletrunner -help usage: servletrunner [options] options: -p port the port number to listen on -b backlog the listen backlog -m max maximum number of connection handlers -t timeout connection timeout in milliseconds -d dir servlet directory -r root document root directory -s filename servlet property file name -v verbose output %
为了看见这些选项的缺省值,你可以用-v 开关调用它. 这将会启动runner. 在你得到信息后就会停止。
% ./bin/servletrunner -v server settings: port = 8080 backlog = 50 max handlers = 100 timeout = 5000 servlet dir = . document dir = . servlet propfile = .:servlet.properties
一旦 servletrunner执行, 你能运行通过在你的浏览器中直接调用他们,举例如下面: http://machine-name:port/servlet/servlet-name 这里servlet-name 对应与您已经给你的servlet取名的名字. 如, 为了运行 phone servlet, 他的属性servlet.phone.code=phoneservlet, 你将用下面url. (假设servletrunner运行在一个及其叫localhost, 在端口 8080, 这个 phone servlet驻留在servlet目录: http://localhost:8080/servlet/phone
另一个例子, survey servlet, 作为提交表单的运行结果. 相应的servleturl是: http://demo:8080/servlet/survey
这里提供一个留言簿的servlet程序guestbookservlet.java,可以用来加深上面的概念, 也可以直接运行.
|
|