初试Tomcat7

[b]启动Tomcat7的代码[/b]
package com.tan.util;

import org.apache.catalina.startup.Bootstrap;

/**Tomcat util for start or stop the tomcat.*/
public class TomcatUtil {
public static void main(String[] args) {
if (args.length == 0) {
info("Starting up the tomcat 7!");
Bootstrap.main(args);
} else if ("stop".equalsIgnoreCase((args[0]))) {
info("Stopping the tomcat 7!");
Bootstrap.main(new String[]{"stop"});
}
}


private final static void info(Object o) {
if (o != null) {
System.out.println(o.toString());
}
}
}
[img]http://dl.iteye.com/upload/attachment/257386/78b70826-0596-3e37-85ac-fe6361dc33b8.png[/img]
[b]编写的Servlet[/b]
package com.tan.servlet3;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
*
* @author administrator
*
* 2010-5-29 上午10:44:27
*/
@WebServlet("/firstservlet3")
public class FirstServlet3 extends HttpServlet{

private static final long serialVersionUID = 1L;

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doPost(req, resp);
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter out = resp.getWriter();
out.println("The first web application for the servlet 3");
}

}

[b]运行的效果[/b]
[img]http://dl.iteye.com/upload/attachment/257388/fa56e5cb-16fb-3fdd-9ac3-6d7ec15c9113.png[/img]
[b]测试AsyncContext[/b]

@WebServlet(urlPatterns="/second", asyncSupported=true)
public final class SecondServlet3 extends HttpServlet{

private static final long serialVersionUID = -7545111408599552911L;

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html;charset=utf-8");
PrintWriter out = resp.getWriter();
out.println("进入servlet的时间是:" + format(new Date()) + "<br/>");
out.flush();


AsyncContext ctx = req.startAsync();
new Thread(new Executor(ctx)).start();
out.println("结束Servlet的时间:" + format(new Date()) + "<br/>");
out.flush();
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doGet(req, resp);
}
}

public class Executor implements Runnable{
private AsyncContext ctx = null;

public Executor(AsyncContext ctx) {
this.ctx = ctx;
}

public void run() {
try {
// 等待三秒钟,模拟业务方法执行.
Thread.sleep(3000);
PrintWriter out = ctx.getResponse().getWriter();
out.println("<span style=\"background-color: #006600; color: #FFFFFF\">业务处理完毕的时间:" + format(new Date()) + "</span>");
out.println("<a href=\"javascript:history.go(-1);\">返回</a>");
out.flush();
ctx.complete();
} catch (Exception e) {
e.printStackTrace();
}
}
}
[img]http://dl.iteye.com/upload/attachment/257614/f80872d4-d0ea-3dc9-910e-b4b5f24d2a9a.jpg[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值