Jsp-Tip-1-servlet
2005-11-23 20:05
225 查看
v[/b] Jsp-Tip-1-servlet[/b]
²编写servlet
创建一个扩展javax.http.HttpServlet的Java类,取保导入了servlet.jar(或
servlet-api.jar)中的类—编译servlet时需要这些类。
Web容器创建servlet实例时的基本过程:
I)
容器调用servlet的init()方法,初始化servlet即将使用的环境
II)
Init()方法初始化一个javax.servlet.ServletConfig接口的对象,
ServletConfig提供在web.xml中申明的初始化参数。
ServletConfig提供了对javax.servlet.ServletContext对象的访问。
III) 调用service()方法响应servlet请求,对于HttpServlet,service()
会自动调用适当的HTTP方法(如doGet()或doPost())
IV)
当调用doGet()或doPost()方法时,容器会创建javax.servlet.http.HttpServletRequest和HttpServletResponse对象。
V)
Tomcat支持servlet API 2.4。类路径中所需的JAR文件位于<Tomcat-5-installation-directory>/common/lib/servlet-api.jar
Tomcat2.1.24使用servlet2.3 API,servlet类位于
<Tomcat-4-installation-directory>/common/lib/servlet.jar
VI)
编译servlet,并把编译后的类放在build子目录下
Javac –classpath c:/tomcat/common/lib/servlet-api.jar
-d ./build
./src/FirstServlet.java
执行时,改变至src目录的父目录
VII) Web应用程序结构是标准的由servlet API规范指定
/myapp
/images
/WEB-INF
/classes
/lib
VIII) 打包war文件
Jar cvf myapp.war .
最后的(.)字符,表示jar工具要在war文件中包括当前目录的内容及子目录,该命令在当前目录中创建myqpp.war文件。
IX)
察看war文件
jar tvf myapp.war | more
X)
创建部署描述符
将XML文件命名的web.xml文件放置在web应用程序的WEB-INF目录下
XI)
手工配置servlet
©在webapps/ROOT/WEB-INF/classes下创建目录servlettest。
©将编译好的servlet类文件TestServlet拷贝到
webapps/ROOT/WEB-INF/classes/servlettest。
©启动tomcat,执行
http://localhost:8080/servlet/servlettest.TestServlet
©这种方式部署servlet需要重新启动Tomcat
XII) 不重启Tomcat而部署servlet
将sevlet部署为Tomcat的server.xml文件中的Context元素的一部分
©Server.xml位于<tomcat-installation-direction>/conf/
©Context元素必须嵌套在Host元素中,该Host元素表示虚拟机。
©web应用程序运行在虚拟机下
©新建Context,将该元素的reloadable属性设置为true,指示Tomcat监视
WEB-INF/class和WEB-INF/lib中内容的任何变化,如果检查到有变化,Tomcat会自动重新装载Web应用程序。
© <Context path="/dudu"
docBase="dudu" debug="99" reloadable="true">
<Logger
className="org.apache.catalina.logger.FileLogger"
prefix="dudu_log." suffix=".txt"
timestamp="true"/>
© path属性表示应用程序的上下文目录,如http://localhost:8080/newapp/
© docBase属性表示该web应用程序的
物理位置docBase属性还可以是相对于appBase(包含在server.xml的Host
元素中的路径名),如相对于<tomcat-home>/webapps
© 将reloadable设置为true会导致显著的运行时负担,所以建议只在部署模
式下才为web应用程序进行配置。
XIII) 将web应用程序部署在一个外部目录中
© 创建一个包含context元素的文件,以xml为扩展名。文件名不必与应用程
序名相同。
© 将该文件放在<tomcat-home>/webapps中
© 或该文件放在<tomcat-home>/conf/Catalina/localhost中
© 或该文件放在conf/server.xml的Host元素中appBase所配置的目录中
© 重启tomcat
XIV)
²编写servlet
创建一个扩展javax.http.HttpServlet的Java类,取保导入了servlet.jar(或
servlet-api.jar)中的类—编译servlet时需要这些类。
Web容器创建servlet实例时的基本过程:
I)
容器调用servlet的init()方法,初始化servlet即将使用的环境
II)
Init()方法初始化一个javax.servlet.ServletConfig接口的对象,
ServletConfig提供在web.xml中申明的初始化参数。
ServletConfig提供了对javax.servlet.ServletContext对象的访问。
III) 调用service()方法响应servlet请求,对于HttpServlet,service()
会自动调用适当的HTTP方法(如doGet()或doPost())
IV)
当调用doGet()或doPost()方法时,容器会创建javax.servlet.http.HttpServletRequest和HttpServletResponse对象。
V)
Tomcat支持servlet API 2.4。类路径中所需的JAR文件位于<Tomcat-5-installation-directory>/common/lib/servlet-api.jar
Tomcat2.1.24使用servlet2.3 API,servlet类位于
<Tomcat-4-installation-directory>/common/lib/servlet.jar
VI)
编译servlet,并把编译后的类放在build子目录下
Javac –classpath c:/tomcat/common/lib/servlet-api.jar
-d ./build
./src/FirstServlet.java
执行时,改变至src目录的父目录
VII) Web应用程序结构是标准的由servlet API规范指定
/myapp
/images
/WEB-INF
/classes
/lib
VIII) 打包war文件
Jar cvf myapp.war .
最后的(.)字符,表示jar工具要在war文件中包括当前目录的内容及子目录,该命令在当前目录中创建myqpp.war文件。
IX)
察看war文件
jar tvf myapp.war | more
X)
创建部署描述符
将XML文件命名的web.xml文件放置在web应用程序的WEB-INF目录下
XI)
手工配置servlet
©在webapps/ROOT/WEB-INF/classes下创建目录servlettest。
©将编译好的servlet类文件TestServlet拷贝到
webapps/ROOT/WEB-INF/classes/servlettest。
©启动tomcat,执行
http://localhost:8080/servlet/servlettest.TestServlet
©这种方式部署servlet需要重新启动Tomcat
XII) 不重启Tomcat而部署servlet
将sevlet部署为Tomcat的server.xml文件中的Context元素的一部分
©Server.xml位于<tomcat-installation-direction>/conf/
©Context元素必须嵌套在Host元素中,该Host元素表示虚拟机。
©web应用程序运行在虚拟机下
©新建Context,将该元素的reloadable属性设置为true,指示Tomcat监视
WEB-INF/class和WEB-INF/lib中内容的任何变化,如果检查到有变化,Tomcat会自动重新装载Web应用程序。
© <Context path="/dudu"
docBase="dudu" debug="99" reloadable="true">
<Logger
className="org.apache.catalina.logger.FileLogger"
prefix="dudu_log." suffix=".txt"
timestamp="true"/>
© path属性表示应用程序的上下文目录,如http://localhost:8080/newapp/
© docBase属性表示该web应用程序的
物理位置docBase属性还可以是相对于appBase(包含在server.xml的Host
元素中的路径名),如相对于<tomcat-home>/webapps
© 将reloadable设置为true会导致显著的运行时负担,所以建议只在部署模
式下才为web应用程序进行配置。
XIII) 将web应用程序部署在一个外部目录中
© 创建一个包含context元素的文件,以xml为扩展名。文件名不必与应用程
序名相同。
© 将该文件放在<tomcat-home>/webapps中
© 或该文件放在<tomcat-home>/conf/Catalina/localhost中
© 或该文件放在conf/server.xml的Host元素中appBase所配置的目录中
© 重启tomcat
XIV)
相关文章推荐
- Servlet和Jsp 设置编码格式
- javax.servlet.jsp.JspException: Error - tag.getAsString : component context is not defined. Check tag syntax
- JSP+MySql+Servlet实现用户登录
- Servlet 笔记二 - Jsp
- Tomcat下JSP、Servlet和JavaBean环境的配置
- jsp的servlet乱码问题
- JSP/Servlet 常识总结
- 深入分析JavaWeb Item19 -- 基于Servlet+JSP+JavaBean开发模式的用户登录注册
- JSP与Servlet之间传递
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之05.JDBC MetaData
- JSP/Servlet:tomcat深入内部结构描述
- jsp界面调用servlet中设置的bean,得到null的原因总结
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之08.JDBC可更新的ResultSet及RowSet 推荐
- [Servlet&JSP] JSTL的使用
- JSP和Servlet中的Cookie
- JSP学习------新建servlet注意问题
- Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之09.JDBC DAO设计模式
- javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext解决办法
- servlet&jsp高级:第二部分
- java旅行--第五站--servlet与JSP--java过滤器与session的小例子