如何在MyEclipse中建立一个代理服务器

一、什么是 TCP/IP Monitor

TCP/IP monitor 是可以监控在某个端口上通过 TCP/IP 协议传送的通信数据的一个工具软件。 TCP/IP monitor 工具,通过一些配置,这个工具可以用简单明了的形式将客户端和服务器端之间传输的数据呈现给开发者。

二、TCP/IP monitor工作原理

TCP/IP monitor 类似一个代理服务器或者转发器。其工作原理如下:

1.客户端向"本地监听端口"发起请求,TCP/IP Monitor 获取客户端发送的数据,并显示该数据。

2.TCP/IP Monitor 将在 1 步骤得到的数据转发给"服务器端口", 服务器端接收数据。

3.TCP/IP Monitor 从接收服务器端返回的数据 , 并显示该数据。

4.TCP/IP Monitor 将在 3 步骤得到的数据返回客户端,客户端接收到数据。

三、打开TCP/IP Monitor步骤

打开 TCP/IP Monitor,创建一个本地代理端口监听服务器 Http 端口就行了。具体步骤如下:

1.打开 WebSphere Commerce 开发环境 , 选择 Windows->Show View->TCP/IP Monitor。

点击ok即可。

2.在 TCP/IP Monitor 中点击右键,选择 Properties, 点击 Add 添加一个新的本地代理端口,各设置项的含义如下:

local monitoring port: 指定本地代理端口,用于监听服务器端口

Host name: 指定要监听的主机

Port: 指定要监听的服务器端口

Type: 指定监听的协议类型

把它修改为:

3.进行设置并保存,选定该本地代理端口并点击 Start 以打开端口开始监听。

效果:

小结:只要进行 Web 开发,有 Client 和 Server 端的 TCP/IP 请求的开发,都可以利用 TCP/IP Monitor 来监控客户端和服务端交互的内容,从而精确定位问题原因。

五、测试 TCP/IP Monitor

1.新建一个java web工程:

HelloWorld.html 源码:

 1 <html>
 2   <head>
 3   </head>
 4   <body style="font-size:24px">
 5     <form action="hello" method="get">
 6         Name:<input name="name"><br>
 7         Contact Me:<Br>
 8         QQ<input type="checkbox" name="contact"
 9            value="qq"/>
10         Tel<input type="checkbox" name="contact"
11            value="tel"/>
12         WeChat<input type="checkbox" name="contact"
13            value="wechat"/>
14         <br>
15         <input type="submit" value="OK">
16     </form>
17   </body>
18 </html>

HelloWorld源码:

 1 package web;
 2
 3 import java.io.IOException;
 4 import java.io.PrintWriter;
 5 import javax.servlet.ServletException;
 6 import javax.servlet.http.HttpServlet;
 7 import javax.servlet.http.HttpServletRequest;
 8 import javax.servlet.http.HttpServletResponse;
 9 public class HelloWorld extends HttpServlet {
10     /**
11      * 获取请求中的name、contact两组参数值
12      * 分别使用getParameter和getParameterValues方法获取
13      */
14     protected void service(HttpServletRequest req, HttpServletResponse resp)
15             throws ServletException, IOException {
16         PrintWriter out = resp.getWriter();
17         //获取提交的name的值
18         String name = req.getParameter("name");
19         out.println("Hello," + name);
20         //获取提交的contact的值
21         String[] contacts = req.getParameterValues("contact");
22         if(contacts!=null){
23             out.print("Contact Information:");
24             for(String info :contacts){
25                 out.print(info+",");
26             }
27         }
28         out.close();
29     }
30 }

xml源码:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app version="2.5"
 3     xmlns="http://java.sun.com/xml/ns/javaee"
 4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 5     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 6     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 7   <servlet>
 8       <servlet-name>HelloWorld</servlet-name>
 9       <servlet-class>web.HelloWorld</servlet-class>
10   </servlet>
11   <servlet-mapping>
12       <servlet-name>HelloWorld</servlet-name>
13       <url-pattern>/hello</url-pattern>
14   </servlet-mapping>
15 </web-app>

最后部署项目到Tomcat,在浏览器中输入访问地址:

http://localhost:8888/TCP/HelloWorld.html

通过输入名字和选择相应的选项。

然后观察TCP控制台这边,可以获得以下的信息。

同时通过变换HelloWorld.html 中的表单方式get,post会得出的不同的效果。具体请参看以下post和get的区别。

原文作者:daliu_it
博文出处:http://www.cnblogs.com/liuhongfeng/p/4187572.html

本文版权归作者和博客园共有,但未经作者同意转载必须保留以上的声明且在放在文章页面明显位置。谢谢合作。

时间: 2024-10-12 11:54:09

如何在MyEclipse中建立一个代理服务器的相关文章

如何在Apache中建立一个新端口

环境: Windows server 2008 R2, Apache, PHP5 步骤: 建立一个目录,里面放置一个index.php. 打开Apache\conf\httpd.conf 文件,做如下的更改: 监听端口 s 打开以下两项的注释: LoadModule vhost_alias_module modules/mod_vhost_alias.so Include conf/extra/httpd-vhosts.conf 注释掉如下的内容 #<Directory /> # Option

如何在 javascript / js 中 建立一个map

建立map的方式(其实用的是json实现方式) var a = {}; a["key1"] = "value1"; a["key2"] = "value2"; 既然是个map就有检索某个键是否存在的方法,这样写 if ("key1" in a) { // something } else { // something else } 简单的一句话声明map里面的key和value的方式: var a = {'

如何在MyEclipse中通过hibernate使用jtds驱动连接数据库,并向数据库添加数据的方法

最近学习了下如何在MyEclipse中通过hibernate使用jtds驱动连接数据库,并向数据库添加数据的方法,虽然MyEclipse中自带了连接数据库的方法,我也尝试了下其他方法,如有不当之处请指教,具体如下: 需要的驱动包为:jtds-1.2.jar 首先创建Java项目,就叫testjtds,同时为工程添加hibernate支持 对testjtds鼠标右键,在最下面找到MyEclipse-->Add Hibernate Capabilities...之后 出现如图窗口 当然了,直接nex

【hibernate进阶】如何在myeclipse中添加jar包

        这篇博客的目的是为下一篇博客讲解hibernate实例做准备,如何在myeclipse中,向hibernate项目加jar包,分为两种方法:①直接添加②建立本地仓库,把需要的jar包引用进去,再把本地仓库放到项目中.         方法1:直接添加 1.右击项目,点击properties 2.选择[java build path],选择[libraries],点击add external jars,即可  方法2:建立本地仓库,把需要的jar包引用进去,再把本地仓库放到项目中

MyEclipse 10.0破解,及建立Myeclipse中建立JFrame 和Swing插件的使用

一.MyEclipse 注册码生成 免积分下载 http://download.csdn.net/detail/u014112584/7270453 具体使用过程: myeclipse 9.1.10 破解 激活,java编写,适用于装有java环境的各种操作系统,win,linux,maxos 第一步:输入任意用户名 第二步:点击Systemid... 按钮,自动生成本机器的systemid. 第三步: 点菜单Tools->RebuildKey 第四步:点击active按钮.会在显示区域生成 L

在Visual Studio和MyEclipse中建立UML图

最近在看<Head First设计模式>,在前面的博客中我也提到了这本书,这是一本非常经典,非常通俗易懂的书,写得很好.因为这本书是使用java描述的,所以我就使用了MyEclipse写了点代码,之前一直使用VS,VS中建立UML图的功能还是非常强大的,现在发现MyEclipse中也可以建立UML图,而且功能也很强大,学习设计模式的时候,结合类图学习,会事半功倍的.下面就来说说在Visual Studio和MyEclipse中建立UML图的过程,这里以类图为例,其他图的建立过程与类图差不多.博

如何在html中把一个图片或者表格覆盖在一张已有图片上的任意位置

如何在html中把一个图片或者表格覆盖在一张已有图片上的任意位置 <div style="position:relative;"> <img src="" width="500" height="500" /> <div style="position:absolute; left:80px; top:50px; border:#000 solid 1px;"><i

powerdesinger中建立一个表后,出现Existence of index的警告

Table Existence of index A table should contain at least one column, one index, one key, and one reference.可以不检查 Existence of index 这项,也就没有这个警告错误了.这是说没有给表建立索引,而一个表一般至少要有一个索引,这是一个警告,不用的话对执行没有影响.不用管它即可. powerdesinger中建立一个表后,出现Existence of index的警告,码迷,m

【翻译自mos文章】在一个使用uniform size的 本地管理的表空间中建立一个表,为什么会忽略INITIAL 参数?

翻译:Why Does a Table Created in a Locally Managed Tablespace With Uniform Extents Ignore INITIAL? (文档 ID 753662.1) 在一个使用uniform size的 本地管理的表空间中建立一个表,为什么会忽略INITIAL 参数? 适用于: Oracle Database - Enterprise Edition - Version 8.1.5.0 to 11.1.0.7 [Release 8.1