hello2应用程序是一个Web模块,它使用Java Servlet技术来显示问候语和响应。

1.GreetingServlet.java源码文件:

 1 @WebServlet("/greeting")    //以@WebServlet注释开头,注释指定相对于上下文根的URL模式,即在根目录下使用/greeting来访问
2 public class GreetingServlet extends HttpServlet {
3
4 @Override
5 public void doGet(HttpServletRequest request, //该servlet重写该doGet方法,实现GET HTTP方法
6 HttpServletResponse response)
7 throws ServletException, IOException {
8
9 response.setContentType("text/html"); //指定响应页面的类型为html
10 response.setBufferSize(8192); //指定缓冲区大小
11 try (PrintWriter out = response.getWriter()) { //实例化对象out,作为向html页面输出的对象
12
13 //使用println属性,向html页面输出html标签,这里输出的是:
14 //<html lang=en>
15 // <head>
16 // <title>Servlet Hello</title>
17 // </head>
18
19 out.println("<html lang=\"en\">"
20 + "<head><title>Servlet Hello</title></head>");
21
22 //使用println属性,向html页面输出html标签,这里输出的是:
23 //<body bgcolor=#ffffff>
24 // <img src=resources/images/duke.waving.gif alt=Duke waving his hand>
25 // <form method=get>
26 // <h2>Hello, my name is Duke. What's yours?</h2>
27 // <input title=My name is: type=text name=username size=25/>
28 // <p></p>
29 // <input type=submit value=Submit/>
30 // <input type=reset value=Reset/>
31 // </form>)
32
33 out.println("<body bgcolor=\"#ffffff\">"
34 + "<img src=\"resources/images/duke.waving.gif\" "
35 + "alt=\"Duke waving his hand\">"
36 + "<form method=\"get\">"
37 + "<h2>Hello, my name is Duke. What's yours?</h2>"
38 + "<input title=\"My name is: \" type=\"text\" "
39 + "name=\"username\" size=\"25\"/>"
40 + "<p></p>"
41 + "<input type=\"submit\" value=\"Submit\"/>"
42 + "<input type=\"reset\" value=\"Reset\"/>"
43 + "</form>");
44
45 //使用一个字符串username来获取,第一个input标签内的username的值
46 String username = request.getParameter("username");
47 if (username != null && username.length() > 0) {
48 RequestDispatcher dispatcher =
49 getServletContext().getRequestDispatcher("/response");
50 //指定要跳转的页面相对于上下文根的URL模式为/response
51
52 if (dispatcher != null) {
53 //整合request, response然后跳转
54 dispatcher.include(request, response);
55 }
56 }
57 //使用println属性,向html页面输出html标签,这里输出的是:
58 // </body>
59 //</html>
60 out.println("</body></html>");
61 }
62 }
63
64 @Override
65 public String getServletInfo() {
66 return "The Hello servlet says hello.";
67
68 }
69 }

2.ResponseServlet.java源码文件

 1 @WebServlet("/response")    //以@WebServlet注释开头,注释指定相对于上下文根的URL模式,
2 //即在根目录下使用/response来访问,这里作为greting页面的响应页面来实现访问
3 public class ResponseServlet extends HttpServlet {
4
5 @Override
6 public void doGet(HttpServletRequest request, //该servlet重写该doGet方法,实现GET HTTP方法
7 HttpServletResponse response)
8 throws ServletException, IOException {
9 try (PrintWriter out = response.getWriter()) { //实例化对象out,作为向html页面输出的对象
10 //接收来自greting页面请求中的input标签中输入的username
11 String username = request.getParameter("username");
12 if (username != null && username.length() > 0) {
13 //使用println属性,向html页面输出html标签,这里输出的是:
14 //<h2>Hello,XXX(前面输入的username的值)!</h2>
15 out.println("<h2>Hello, " + username + "!</h2>");
16 }
17 }
18 }
19
20 @Override
21 public String getServletInfo() {
22 return "The Response servlet says hello.";
23
24 }
25 }

Tutorial中的Hello2代码的更多相关文章

  1. linux内核分析作业4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    系统调用:库函数封装了系统调用,通过库函数和系统调用打交道 用户态:低级别执行状态,代码的掌控范围会受到限制. 内核态:高执行级别,代码可移植性特权指令,访问任意物理地址 为什么划分级别:如果全部特权 ...

  2. Gradle中的buildScript代码块

    在编写Gradle脚本的时候,在build.gradle文件中经常看到这样的代码: build.gradle 1 2 3 4 5 6 7 8 9 buildScript { repositories ...

  3. Oracle中经典分页代码!

    在Oracle中因为没有top关键字,所以在sqlserver中的分页代码并不适用于Oracle,那么在Oracle中如何来实现分页呢? --查询所有数据 STUNO STUNAME STUAGE S ...

  4. python学习之——计算给出代码中注释、代码、空行的行数

    题目:计算给出代码中注释.代码.空行的行数 来源:网络 思路:注释行以 ‘#’开头,空行以 ‘\n’ 开头,以此作为判断 def count_linenum(fname): fobj = open(f ...

  5. netbeans中实体类代码的bug

    用了netbeans中实体类代码后,忽然报错: com.sun.tools.javac.code.Symbol$CompletionFailure: 找不到sun.util.logging.Platf ...

  6. 在Flex (Flash)中嵌入HTML 代码或页面—Flex IFrame

    在flex组件中嵌入html代码,可以利用flex iframe.这个在很多时候会用到的,有时候flex必须得这样做,如果你不这样做还真不行-- flex而且可以和html进行JavaScript交互 ...

  7. Scala 深入浅出实战经典 第45讲: scala中context bounds代码实例

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-64讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  8. Myeclipse中把java代码导成UML类图

    Myeclipse中把java代码导成UML类图 1.右键点击项目名称,选择New-------àUML2 Model 2.给类图命名 3.导成类图 1)如果要把整个项目导成类图,则把整个项目拖到类图 ...

  9. jsp页面中的java代码

    jsp页面中的java代码 1.jsp表达式  <%= ....%>  只能放置一个变量常量 2. jsp小脚本 <% .... %>  java语句,可以插入一些语句 3. ...

随机推荐

  1. MySQL_列值为null对索引的影响_实践

    一.首先看一个我在某公众号看到的一个关于数据库优化的举措 二.如果where子句中查询的列执行了 “is null” 或者 “is not null” 或者 “<=> null” 会不会使 ...

  2. Hadoop基础-镜像文件(fsimage)和编辑日志(edits)

    Hadoop基础-镜像文件(fsimage)和编辑日志(edits) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看日志镜像文件(如:fsimage_00000000000 ...

  3. SpringBoot系列: 使用 Swagger 生成 API 文档

    SpringBoot非常适合开发 Restful API程序, 我们都知道为API文档非常重要, 但要维护好难度也很大, 原因有: 1. API文档如何能被方便地找到? 以文件的形式编写API文档都有 ...

  4. [译]Ocelot - Delegating Handlers

    原文 可以为HttpClient添加delegating handlers. Usage 为了添加delegating handler需要做两件事. 首先如下一样创建一个类. public class ...

  5. WPS for Linux 2017版+字库安装

    一.下载地址: http://wps-community.org/download.html WPS Office for Linux Alpha21[2017-06-15] http://wps-c ...

  6. shell 批量检测远程端口

    [DNyunwei@YZSJHL24-209 li]$ cat port.sh #!/bin/bash # ip=`cat iplist` for i in $ip;do port=`ssh -t $ ...

  7. 软件测试之adb命令-实际公司使用场景--今日log

    软件测试之adb命令-实际公司使用场景--今日log Dotest-董浩整理 1)可以看内存泄漏: 2)可以安装.卸载app--截图并提交bug: 3)可以通过抓app日志定位问题: 4)可以结合mo ...

  8. JavaWeb - apache和tomcat是如何配合工作的

    ref: https://jingyan.baidu.com/article/47a29f246f354ec0142399dc.html 网上有很多的介绍apache和tomcat的区别,但大部分都是 ...

  9. C语言官网蓝桥杯训练1115DNA

    这道题是比较简单的输出字符图形的题,但是有几个坑还是要注意下. 1.题中所述的X是大写的,不要看成小写了.(我就错了好几次) 2.每一行输出最后的X后不能在输出空格. 3.输出两个DNA中间有一个空行 ...

  10. C#基础之Assembly

    一直以来,我们都在用C#编写程序,编写程序的时候,我们用到继承.多态.接口以及泛型,我们也都明白子类可以继承抽象类,并能够重写父类的抽象方法,可是大家是否想过,如下几个问题: 1.凡树必有根和叶,类的 ...