`
includemain
  • 浏览: 32814 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类
最新评论

初试Tomcat7

阅读更多
启动Tomcat7的代码
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());
		}
	}
}

编写的Servlet
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");
	}

}

运行的效果

测试AsyncContext
@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();
		}
	}
}
  • 大小: 59.3 KB
  • 大小: 108.1 KB
  • 大小: 28.3 KB
2
3
分享到:
评论
4 楼 snowolf 2010-05-31  
includemain 写道
呵呵,是啊,web.xml文件都不需要了。还增加了AsyncContext的新特性,异步处理以及对文件上传的处理简化了.

文件上传?连这个都有了?不能吧!!!
3 楼 includemain 2010-05-31  
呵呵,是啊,web.xml文件都不需要了。还增加了AsyncContext的新特性,异步处理以及对文件上传的处理简化了.
2 楼 snowolf 2010-05-31  
以后不会注解,恐怕是寸步难行了!呵呵!
1 楼 mercyblitz 2010-05-31  
目前还不稳定,不过Servlet3.0确实进步不小。

相关推荐

    csp - j初试模拟卷.docx

    csp - j初试模拟卷.docx csp - j初试模拟卷.docx csp - j初试模拟卷.docx csp - j初试模拟卷.docx csp - j初试模拟卷.docx csp - j初试模拟卷.docx csp - j初试模拟卷.docx csp - j初试模拟卷.docx csp - j初试模拟...

    基于c++的研究生初试录取管理系统全文件

    【标题】基于C++的研究生初试录取管理系统全文件 本系统是针对研究生初试录取流程而设计的一个管理软件,采用C++编程语言在Visual Studio环境下实现。C++是一种广泛应用的面向对象编程语言,以其高效、灵活性和强大...

    大连大学2023年初试科目大纲汇总.rar

    7. **分数分配**:大纲通常会给出各部分试题的分值比例,考生应根据分值权重分配复习精力,确保在关键部分取得高分。 8. **最新变动**:每年的大纲可能会有所调整,考生需关注最新的变化,以免遗漏新增或删除的内容...

    软件工程初试.zip

    《软件工程初试》资料集合是为准备武汉科技大学计算机专业考研初试的考生精心整理的一份宝贵资源。这个压缩包涵盖了三个主要部分:期末考试试卷、历年真题以及模拟预测题,旨在帮助考生全面深入地理解和掌握软件工程...

    研究生初试录取 c++课程设计

    【研究生初试录取 C++课程设计】是一种编程实践任务,旨在考察学生的编程能力和对研究生入学考试规则的理解。在这个课程设计中,学生需要编写一个C++程序来模拟研究生初试的录取过程,根据设定的分数线来筛选合格的...

    西南交大初试相关

    在“西南交大初试相关”的压缩包文件中,包含了丰富的学习资料,如PPT和期末考试试卷,这些都是备考的重要资源。 首先,我们来详细探讨电力电子这一主题。电力电子是研究电能转换和控制的科学,它涵盖了电力半导体...

    武汉理工初试复试汇总

    7. **算法设计与分析**:学习如何分析算法的时间复杂度和空间复杂度,运用大O表示法评估算法效率,以及如何优化算法。 8. **数据结构在实际应用中的体现**:理解数据结构在操作系统、数据库系统、编译原理等领域中...

    西安电子科技大学计算机初试复试汇总

    7. 网络信息学院特色:可能涉及网络工程、通信协议、无线网络、物联网技术等内容,对网络架构和应用有深入理解。 8. 人工智能学院重点:涵盖自然语言处理、计算机视觉、智能控制、模式识别等前沿领域,需要关注最新...

    应聘人员初试测评表.doc

    7. **思维逻辑性,条理性**:测试应聘者分析问题和解决问题的能力,是否能有条不紊地思考。 8. **应变能力**:评估应聘者面对突发情况时的反应速度和处理问题的能力。 9. **判断分析能力**:看应聘者是否具备独立...

    研究生初试录取管理系统

    ### 知识点一:研究生初试录取管理系统的架构与实现 #### 1.1 系统概述 研究生初试录取管理系统是一款基于C++语言开发的应用程序,旨在帮助教育机构高效地管理和处理研究生入学考试的相关数据。该系统通过定义结构...

    研究生初试C++源代码

    研究生初试cpp文件,可以完成文件操作功能,统计研究生录取结果

    09多校考研初试成绩排名

    在中国的研究生入学考试(考研)过程中,初试成绩是决定考生能否进入复试的关键因素。"09多校考研初试成绩排名"这个压缩包文件很可能包含的是2009年多所高校考研初试的成绩数据,包括哈工大、浙江大学、大连理工大学...

    09高校初试排名 09年高校初试排名

    09年高校初试排名09年高校初试排名09年高校初试排名

    研究生初试录取系统 c 课程设计报告

    研究生初试录取系统 C 课程设计报告 本课程设计报告的主要目的是设计一个研究生初试录取系统,旨在统计初试合格的人数,并按总分由高到低的顺序输出合格考生的信息。本系统需要输入考生姓名、准考证号、报考专业、...

    浙大电气初试复试经验

    从给定的文件中,我们可以了解到浙江大学电气考研的初试和复试的一些具体经验和建议。以下是从标题、描述和部分内容中提取的关键知识点。 首先,关于初试经验,文档的作者是来自一所普通985高校电气学院的学生,...

    初试JqueryEasyUI(附Demo)

    在初试 Jquery EasyUI 的 Demo 中,你可以通过阅读 `初试JqueryEasyUI.docx` 和 `初试JqueryEasyUI.mht` 文件了解详细步骤和示例代码。`EasyUIDemo` 文件可能是包含实际演示的 HTML 和 JavaScript 代码,可以运行...

    南邮微机原理初试考研真题(2002~2014年).7z

    7. **中断系统**:中断的概念,中断处理过程,中断向量,以及中断在操作系统和设备驱动中的作用。 8. **CPU工作流程**:从取指、译码、执行到结果写回的完整周期,以及流水线技术的引入和优化。 9. **数字逻辑**:...

    新人教统编版六年级下册语文 交流平台与初试身手课件 教学课件.pptx

    这篇文档主要围绕的是小学六年级下册语文课程中“交流平台与初试身手”的教学内容,旨在教授学生如何通过观察和描绘环境来表达个人情感,即“借景抒情”的写作技巧。刘勰在《文心雕龙》中提到的“岁有其物,物有其容...

Global site tag (gtag.js) - Google Analytics