java服务器servlet_二、Java Web -- 使用servlet显示服务器时间

一、在项目下创建如下包、及servlet

20180110230718439471.png

20180110230718441424.png

20180110230718443377.png

生成servlet如下:

@WebServlet(name="TimmerServlet" ,urlPatterns = "/showtime.do")public class TimmerServlet extendsHttpServlet {private static final long serialVersionUID = 1L;publicTimmerServlet() {super();

}protected voiddoGet(HttpServletRequest request, HttpServletResponse response)throwsServletException, IOException {//设置刷新自动加载的事件间隔为 1 秒

response.setIntHeader("Refresh", 1);//设置响应内容类型

response.setContentType("text/html");//获取当前的时间

Calendar now = Calendar.getInstance(TimeZone.getTimeZone("GMT+8"));

PrintWriter out=response.getWriter();

out.println(""-//W3C//DTD HTML 4.01 Transitional//EN\">");

out.println("");

out.println("

A Servlet");

out.println("

");

out.print(now.getTime());

out.println(" ");

out.println("");

out.flush();

out.close();

}protected voiddoPost(HttpServletRequest request, HttpServletResponse response)throwsServletException, IOException {

doGet(request, response);

}

}

二、@WebServlet注解

在servlet3.0下,提供了WebServlet的注解,可以取代在web.xml下配置、的步骤。

注解源码如下:

packagejavax.servlet.annotation;importjava.lang.annotation.Annotation;importjava.lang.annotation.Documented;importjava.lang.annotation.Retention;importjava.lang.annotation.RetentionPolicy;importjava.lang.annotation.Target;

@Target({ java.lang.annotation.ElementType.TYPE })

@Retention(RetentionPolicy.RUNTIME)

@Documentedpublic @interfaceWebServlet {//指定 Servlet 的 name 属性,等价于 。如果没有显式指定,则该 Servlet 的取值即为类的全限定名。

public abstractString name();//该属性等价于 urlPatterns 属性。两个属性不能同时使用。

public abstractString[] value();//指定一组 Servlet 的 URL 匹配模式。等价于 标签。

public abstractString[] urlPatterns();//指定 Servlet 的加载顺序,等价于 标签。

public abstract intloadOnStartup();//指定一组 Servlet 初始化参数,等价于 标签。

public abstractWebInitParam[] initParams();//声明 Servlet 是否支持异步操作模式,等价于 标签。

public abstract booleanasyncSupported();public abstractString smallIcon();public abstractString largeIcon();//该 Servlet 的描述信息,等价于 标签。

public abstractString description();//该 Servlet 的显示名,通常配合工具使用,等价于 标签。

public abstractString displayName();

}

二、urlPatterns通配符

匹配方法只有三种,要么是路径匹配(以“/”字符开头,并以“/*”结尾),要么是扩展名匹配(以“*.”开头),要么是精确匹配,三种匹配方法不能进行组合,不要想当然使用通配符或正则规则。

如/user/*.action是非法的

另外注意:/aa/*/bb是精确匹配,合法,这里的*不是通配的含义

servlet

*.do

servlet

/action/*

三、启动Tomcat,键入http://localhost:8080/jeb/showtime.do,可以看到每一秒钟显示一下服务器时间

20180110230718445331.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值