- 浏览: 168348 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (186)
- [网站分类]4.其他技术区 (93)
- [网站分类]6.转载区(Java技术文章转载, 请注明原文出处) (4)
- [网站分类]3.非技术区 (7)
- [网站分类]1.网站首页原创Java技术区(对首页文章的要求: 原创、高质量、经过认真思考并精心写作。BlogJava管理团队会对首页的文章进行管理。) (28)
- HTML&CSS (0)
- 感悟生活 (4)
- c#(.net) (1)
- [网站分类]2.Java新手区 (32)
- [网站分类]5.提问区(Java方面的技术提问) (1)
- java (6)
- web前端 (7)
- php (0)
- C++ (1)
- python (0)
- 互联网应用 (0)
最新评论
-
lliiqiang:
请求单线程资源只能等待结果.
Applet 与JS通信 -
feng2qin:
期待你的精彩回到。QQ:864479410
Applet 与JS通信 -
feng2qin:
我想问一句;哥们儿,applet程序中调用js,你真的成功了嘛 ...
Applet 与JS通信 -
lyaixsp:
...
ExtJS 入门学习之 window与panel篇 -
longzijian:
不知道 java-he 现在找到数组的这种特性 的原因在那里
和网友关于javascript数组的讨论
servlet学习笔记之一
servlet 学习笔记
自序
昨天心情有些失落。公司从去年底到现在就没有安排我做个正事,(也没有我什么事情,研发部门当产品出来后,还有什么好研发呢,无非就是修改 BUG ,做些维护)。没有事情的情况下,被拉着做测试。测试的内容也就是 GIS 的客户端,功能没有几个,测试很枯燥,被叫着翻来覆去做同一件事。郁闷的是部门经理的座位在我后面,虽然隔了有 <chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="4" unitname="米"><span lang="EN-US">4</span> <span style="FONT-FAMILY: 宋体">米</span> </chmetcnv>左右距离,但是他完全能看到我在做什么事情。他批评了我好几次“该做什么就做什么。叫你做什么就做什么。”不说了,我并不喜欢发牢骚……
鉴于工作中的种种因素,我想跳槽,换个环境。换工作,我是 java 程序员,而目前的工作无非就是写 UI , swing 编程。类似的工作可不那么好找,而且也打算多长点见识。所以决定离开成都去北京找工作,而且找 J2EE 方面的。辞职前我打算做个 JSP 方面的小应用、再把 JAVA 好好复习一遍这样才对新工作有所准备。
说做就做吧。先学习 JSP (毕业前,曾自学过一点点),学习 JSP 前,有必要学习 servlet 。这就有了这一系列学习笔记……
<!--[if !supportLists]--> 1. <!--[endif]--> 什么是Servlet?
Java Servlet ( java 服务器小程序)是一个基于 Java 技术的 Web 组件,运行在服务器端,由 Servlet 容器所管理,用于生成动态的内容。
<!--[if !supportLists]--> 2. <!--[endif]--> servlet和applet区别?
相同点:
<!--[if !supportLists]--> ² <!--[endif]--> 他们都不是独立的应用程序,都没有main()方法;
<!--[if !supportLists]--> ² <!--[endif]--> 他们都生存在容器中,applet运行在浏览器中,servlet运行在servlet容器中。
<!--[if !supportLists]--> ² <!--[endif]--> 他们都有生命周期,都有init()和destroy()方法;
不同点:
<!--[if !supportLists]--> ² <!--[endif]--> applet具有图形界面,运行在客户端,servlet没有图形界面,运行在服务器端的servlet容器中。
我写的 applet 要多点,这样对比有利于自己更好的掌握 servlet 技术。
<!--[if !supportLists]--> 3. <!--[endif]--> hello world
说句废话:买的书《 JAVA WEB 开发详解》,孙鑫编著,感觉讲得不好, servlet 简直就是在介绍 api 手册。
我总结的时候,自然不能这样。还是介绍个入门例子吧。
先说下环境变量,要编译 servlet 需要把必要的 jar 设置到 classpath 中。我的环境变量是这样设置的。(这里我把 jar 拷贝到了 jdk 目录下面)
.;D:\jdk\lib\dt.jar;D:\jdk\lib\tools.jar;D:\jdk\jre\lib\rt.jar;D:\jdk\lib\servlet-api.jar;D:\jdk\lib\jsp-api.jar;
第一个程序—— test.java
import javax.servlet.ServletException;
import java.io.*;
import javax.servlet.http.*;
public class test extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException
{
PrintWriter out = resp.getWriter();
out.println("hello, world!");
out.close();
}
}
由于设置了环境变量,这里顺利编译通过。
部署 servlet :
在 webapps 目录下,建立一个目录(存储该应用)。如: hello
在该 hello 目录下建立一个特殊目录 WEB-INF ,注意全大写。之所以特殊,因为该目录对客户端不可见。如果你把 index.html 放到 WEB-INF 目录下面,然后通过 http://127.0.0.1:8080/hello/WEB-INF/index.html 访问,这样是访问不到的。
而在 WEB –INF 目录下:
建立 classes 目录来存放编译好的 class 文件。
建立 lib 目录来存放运行所需要的其他包。
建立重要的 web.xml 配置文件。
web.xml 可以包含如下的配置和部署信息:
<!--[if !supportLists]--> ² <!--[endif]--> ServletContext的初始参数;
<!--[if !supportLists]--> ² <!--[endif]--> Session的配置;
<!--[if !supportLists]--> ² <!--[endif]--> Servlet/Jsp的定义;
<!--[if !supportLists]--> ² <!--[endif]--> Servlet/Jsp的映射;
<!--[if !supportLists]--> ² <!--[endif]--> MIME类型映射;
<!--[if !supportLists]--> ² <!--[endif]--> 欢迎文件列表;
<!--[if !supportLists]--> ² <!--[endif]--> 错误页面;
<!--[if !supportLists]--> ² <!--[endif]--> 安全;
<!--[if !supportLists]--> ² <!--[endif]--> 地区和编码映射;
<!--[if !supportLists]--> ² <!--[endif]--> jsp配置。
我们编写的 xml 必须是格式良好的 xml 。 web.xml :
<?xml version =”<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="1" unitname="”">1.0”</chmetcnv> encoding=”ISO-8859<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="True" hasspace="False" sourcevalue="1" unitname="”">-1”</chmetcnv>?>
<web-app>
<servlet>
<servlet-name>helloworld</servlet-name>
<servlet-class>test</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>helloworld</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
这样输入:“ http://127.0.0.1:8080/hello/hello “就访问到了刚才写的 servlet 。
再介绍一种访问 servlet 方式: telnet 方式
telnet localhost 8080
回车,输入
GET /hello/hello HTTP/1.1
Host:localhost
dos 窗口下将显示 hello , world
如果要用 servlet 处理表单提交的信息,表单提交方式一般情况分 get 、 post 。相应的我们就应该覆盖 HttpServlet 中的 doGet ()、 doPost ()方法。表单中 action 写 servlet 的 url-/pattern 值。
值得注意的是: web.xml 在 servlet 2.2 、 2.3 规范中都由 DTD 定义,所有有元素间严格的顺利关系,而 servlet2.4 规范中, web.xml 文件改为, xml schema 来定义文档的结构,其中一个好处是元素出现的顺序不再有严格的限定。如果要兼容低版本的,还是得有严格的顺序关系。
提示一旦修改过 servlet 就应该重启 tomcat 。
发表评论
-
详细总结LOG4J的使用
2007-02-06 16:31 6661 import java.util.*; 2 impor ... -
数字签名
2007-02-06 16:39 733使用applet经常涉及到java的砂箱问题,由于java的安 ... -
常见排序算法
2007-02-06 16:48 795<!--<br><br> ... -
测试连接数据源
2007-02-06 17:07 7761 ////////////////////////// ... -
解析XML
2007-02-06 17:12 6181 2 package com.parsexml ; ... -
BASE64编码
2007-02-06 17:16 7291 ////////////////////////// ... -
MD5加密
2007-02-07 09:49 894<!--<br><br>Cod ... -
省市地区三级菜单
2007-02-07 09:58 1192级联菜单:(1.js文件)<!--<br>& ... -
解析XML字符串与xml文件
2007-02-07 10:53 907对两种情况,这个文件不需要修改:<!--<br&g ... -
总结WebService的使用
2007-02-08 09:18 737一、安装jsp程序员应该不会装错。首先下载axis,解压缩。将 ... -
Applet 与JS通信
2007-02-08 16:09 4822Applet 与JS通信:一、页面嵌入applet:<a ... -
正则表达式使用详解
2007-02-14 10:54 738如果我们问那些UNIX系 ... -
xml学习总结之一
2007-02-15 13:16 7081 . XML 与 DTD —— XML 入门知识 1 ... -
xml学习总结之二
2007-02-26 10:49 6362. XML 名称空间 XML 命 ... -
JAVA 写的一截屏小工具
2007-03-01 09:48 682该截图工具的原代码参照了网上一文:(http://www.ch ... -
记事本程序
2007-03-08 12:09 665写了一个记事本程序,程序运行效果如下。 ... -
servlet学习笔记之二
2007-03-26 19:16 541servlet 学习笔记之二 — ... -
servlet学习笔记之三
2007-03-26 19:25 560servlet 学习笔记之三 ——关于 web 应用程序的部 ... -
JFreeChart 入门指南
2007-04-18 01:47 766JFreeChart也许对大家来说很陌生,JFreeCh ... -
创意柱状图
2007-04-20 23:39 667本来页面上是用jfreechart 绘制的数据分析 ...
相关推荐
Java相关课程系列笔记之一Java学习笔记 Java相关课程系列笔记之四JDBC学习笔记 Java相关课程系列笔记之六HTML学习笔记 Java相关课程系列笔记之七CSS学习笔记 Java相关课程系列笔记之八JavaScript学习笔记 Java相关...
JSP & Servlet学习笔记(第2版)》是作者多年来教学实践经验的总结,汇集了学生在学习JSP&Servlet或认证考试时遇到的概念、操作、应用等各种问题及解决方案。 本书针对Servlet3.0的新功能全面改版,无论章节架构...
书 名:JSP & Servlet学习笔记(第2版) 作 者:(台湾)林信良 著 出 版 社:清华大学出版社 出版时间:2012-5-1 ISBN:9787302283669 纸书页数:456页 定 价:¥ 58.00 内容简介: 本书是作者多年来...
本书是作者多年来教学实践经验的总结,汇集了..., 本书在讲解的过程中,以“微博”项目贯穿全书,随着每一章的讲述都在适当的时候将JSP & Servlet技术应用于“微博”程序之中,以便读者能了解完整的应用程序构建方法。
本书是作者多年来教学实践经验的总结,汇集了... 本书在讲解的过程中,以“微博”项目贯穿全书,随着每一章的讲述都在适当的时候将JSP & Servlet技术应用于“微博”程序之中,以便读者能了解完整的应用程序构建方法。
javaEE servlet 学习笔记 jsp本质上是servlet,但是为了更加符合mvc的框架,将页面显示和逻辑控制分离,jsp页面只负责页面,也就是mvc中的V(view),而servlet负责mvc中的C(control)。 而为了更加好的理解结构,一下...
看过方立勋老师的课程之后 做的一点小笔记 以后拿出来复习复习 不对之处 请见谅 本人只是默默的一只菜鸟
本书是作者多年来教学实践经验的总结,汇集了...本书在讲解的过程中,以“微博”项目贯穿全书,随着每一章的讲述都在适当的时候将JSP & Servlet技术应用于“微博”程序之中,以便读者能了解完整的应用程序构建方法。
Java相关课程系列笔记之九Servlet学习笔记(建议用WPS打开) Java相关课程系列笔记之六HTML学习笔记(建议用WPS打开) Java相关课程系列笔记之七CSS学习笔记(建议用WPS打开) Java相关课程系列笔记之三PLSQL学习...
寻找适合自己的学习资源,现在不需要如此麻烦了,动力节点全新整理Javaweb阶段全套教程已经上线,内涵网络通信、HTML、CSS、JavaScript、MySQL、JDBC、JSP、Servlet等技术,Javaweb从入门到精通全套教程一站搞定,...
7.Web容器是Servlet/JSP唯一认识的HTTP服务器,是使用Java撰写的应用程序,运行于JVM之上。 8.JVM让Java可以跨平台,不同的系统平台有不同的JVM,它们都认识.class文件。Java编译语言将Java代码编译成.class文件...
过滤器是JavaWeb三大组件之一,它与Servlet很相似!不过它是用来拦截请求的,而不是用来处理请求的。 当用户请求某个Servlet时,会先执行部署在这个请求上的Filter,如果Filter“放行”,那么会继续执行用户请求的...
java内容介绍 java编程可以分成三个方向: 1、java se (j2se)桌面开发 java中的基础中的基础 2、java ee (j2ee)web开发 3、java me (j2me)手机开发 ...1995 sun正式发布java第一个版本,目前最新是jdk7.0
%>(只是一个方法内的局部变量,每个客户端都有一个)使用的过程当中,尽量避免将一个变量声明为类的成员变量,除非需要统计一个servlet类的访问次数。后者之中不能定义方法,前者可以。 2.java脚本(如javascript)...
寻找适合自己的学习资源,现在不需要如此麻烦了,动力节点全新整理Javaweb阶段全套教程已经上线,内涵网络通信、HTML、CSS、JavaScript、MySQL、JDBC、JSP、Servlet等技术,Javaweb从入门到精通全套教程一站搞定,...
寻找适合自己的学习资源,现在不需要如此麻烦了,动力节点全新整理Javaweb阶段全套教程已经上线,内涵网络通信、HTML、CSS、JavaScript、MySQL、JDBC、JSP、Servlet等技术,Javaweb从入门到精通全套教程一站搞定,...
寻找适合自己的学习资源,现在不需要如此麻烦了,动力节点全新整理Javaweb阶段全套教程已经上线,内涵网络通信、HTML、CSS、JavaScript、MySQL、JDBC、JSP、Servlet等技术,Javaweb从入门到精通全套教程一站搞定,...