我要去google
BlogJava
首页
新随笔
联系
聚合
管理
文章分类
(16)
FCKEditor(1)
(rss)
j2ee(2)
(rss)
j2se(4)
(rss)
JSValidation(1)
(rss)
Linux(3)
(rss)
Oracle(1)
(rss)
script(1)
(rss)
swing(1)
(rss)
Tomcat(2)
(rss)
文章档案
(15)
2008年12月 (2)
2008年11月 (1)
2008年9月 (2)
2008年8月 (1)
2008年7月 (5)
2008年6月 (4)
最新随笔
1. Servlet获取GET或者POST的参数
2. 手工编写Servlet
3. Traffic Shaping
4. rrdtool
5. Expect脚本
6. 启用Ubuntu下的root用户
7. 让电脑发出Beep声
8. 如何获取环境变量和遍历Map
9. JSValidation的简单使用
10. FCKEditor的例子
最新评论
1. re: Servlet获取GET或者POST的参数
废物
--二位
2. re: JSValidation的简单使用
saasdfasdf
--asd
3. re: JSValidation的简单使用
哥们 你去谷歌了么? 这个框架哪里还有的下?地址打不开了
--Jhon
4. 1[未登录]
1
--1
手工编写Servlet
Posted on 2008-12-01 05:19
fcp
阅读(470)
评论(0)
编辑
收藏
所属分类:
j2ee
从今天开始,复习原来学过的东东,基本上都忘了,从基础开始
万丈高楼平地起,
|||...
手工编写Servlet
1, what is servlet
说白了就一个能响应用户请求的java程序,可以回应给用户HTML代码,当然也可以执行其他任务,比如操纵数据库什么的。
2,编写Servlet
其实就是个Java文件,需要继承HttpServlet这个类,位置是在javax.servlet.http.HttpServlet
package
com.fcp.hello;
import
javax.servlet.http.
*
;
import
javax.servlet.
*
;
import
java.io.
*
;
import
java.util.
*
;
public
class
HelloServlet
extends
HttpServlet
{
public
void
doGet(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException
{
response.setContentType(
"
text/html;charset=utf-8
"
);
PrintWriter out
=
response.getWriter();
out.println(
"
<html>
"
);
out.println(
"
<head>
"
);
out.println(
"
<title>my first servlet</title>
"
);
out.println(
"
</head>
"
);
out.println(
"
<body>
"
);
//
print time
out.println(
new
Date());
out.println(
"
<br>
"
);
out.println(
"
Welcome to my first Servlet!
"
);
out.println(
"
</body>
"
);
out.println(
"
</html>
"
);
out.flush();
out.close();
}
public
void
doPost(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException
{
doGet(request, response);
}
}
重写doGet和doPost这两个函数,来处理GET和POST请求
response这个变量就是要返回给用户的,所以先设置一下返回数据的类型
response.setContentType("text/html;charset=utf-8");
然后获得PrintWriter这个对象的实例
PrintWriter out = response.getWriter();
恩,现在可以输出我们想输出的内容了
输出完别忘了,flush和close
在doPost方法里调用doGet,这样可以让GET和POST方法得到同样的处理
2,编译程序
因为Tomcat能接受的已经编译的class文件,所以我们要先进行编译
javac -d . HelloServlet.java
运行后有错误。。。。找不到javax.servlet.http.HttpServlet
传输中是没有装j2ee
这个包我们可以在tomcat中找到,导致我现在还不知道正常的装法
重新编译,加上class path
javac -d . -cp c:\tomcat6\lib\servlet-apt.jar HelloServlet.java
编译成功
3,创建tomcat的目录结构
在webapps下建立自己的web应用
-hello
|-WEB-INF
|-web.xml
|-classes
|-com
|-fcp
|-hello
|-HelloServlet.class
4,建立web.xml文件
<?
xml version="1.0" encoding="ISO-8859-1"
?>
<
web-app
xmlns
="http://java.sun.com/xml/ns/javaee"
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version
="2.5"
>
<
servlet
>
<
servlet-name
>
hello
</
servlet-name
>
<
servlet-class
>
com.fcp.hello.HelloServlet
</
servlet-class
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>
hello
</
servlet-name
>
<
url-pattern
>
/hello
</
url-pattern
>
</
servlet-mapping
>
</
web-app
>
前面的xml声明是从conf/web.xml中copy的
后面的才是主要内容
<servlet>就是定义servlet,定义servlet的名字和对应的类
<servlet-mapping>就是定义哪个servlet和哪个URL对应
5,启动tomcat,查看对应的URL
http://localhost:8080/htllo/hello
应该就可以看见了
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理
相关文章:
Servlet获取GET或者POST的参数
手工编写Servlet
评论排行榜
阅读排行榜
posts - 0, comments - 4, trackbacks - 0, articles - 15
Copyright © fcp