服务器端代码:
- rundata.getModuleInfo().setLayoutTemplate(null);
- HttpServletRequest request = rundata.getRequest();
- HttpServletResponse response = rundata.getResponse();
- PrintWriter printWriter = null;
- ServletInputStream sis = null;
- String xmlData = null;
- try {
- printWriter = response.getWriter();
- // 取HTTP请求流
- sis = request.getInputStream();
- // 取HTTP请求流长度
- int size = request.getContentLength();
- // 用于缓存每次读取的数据
- byte[] buffer = new byte[size];
- // 用于存放结果的数组
- byte[] xmldataByte = new byte[size];
- int count = 0;
- int rbyte = 0;
- // 循环读取
- while (count < size) {
- // 每次实际读取长度存于rbyte中
- rbyte = sis.read(buffer);
- for(int i=0;i<rbyte;i++) {
- xmldataByte[count + i] = buffer[i];
- }
- count += rbyte;
- }
- xmlData = new String(xmldataByte, "UTF-8");
客户端代码:
- HttpClient httpClient = new HttpClient();
- String xmlData = getInput();
- int xmlDataLength = xmlData.getBytes("UTF-8").length;
- PostMethod method = new PostMethod(url);
- method.setRequestBody(xmlData);
- method.setRequestHeader("Content-type", "text/xml; charset=UTF-8");
- if (xmlDataLength < Integer.MAX_VALUE) {
- method.setRequestContentLength(xmlDataLength);
- } else {
- method.setRequestContentLength(EntityEnclosingMethod.CONTENT_LENGTH_CHUNKED);
- }
- try {
- int statusCode = httpClient.executeMethod(method);
- System.out.println("返回码: " + statusCode);
- if(statusCode != HttpStatus.SC_OK) {
- return;
- }
- System.out.println("输出:");
- System.out.println(method.getResponseBodyAsString());
- } catch (IOException e) {
- e.printStackTrace();
- } finally {
- method.releaseConnection();
- }
相关推荐
在本例中,Servlet接收来自前端的Ajax请求,读取XML文件,可能进行一些处理(如过滤、排序),然后将处理后的XML数据返回给前端。Servlet通过`doGet`或`doPost`方法处理HTTP请求,使用`response.getWriter().print()...
注意,`getParameter`只适用于URL编码的查询字符串或表单数据,如果数据格式是JSON或XML,需要使用`request.getReader()`读取并解析。 8. **异常处理与错误反馈**: 在发送和接收过程中,可能遇到网络问题、格式...
这可能涉及到读取请求体,因为XML通常作为POST请求的一部分发送。 2. **处理XML**:解析XML数据,可以使用Java的DOM(Document Object Model)、SAX(Simple API for XML)或者StAX(Streaming API for XML)库。...
### Java Web应用开发 48 课堂案例-应用Servlet读取指定HTML表单数据 #### 学习目标 本案例的主要学习目标是掌握如何利用Servlet技术读取HTML表单中的数据,并将这些数据以HTML列表的形式展示出来。通过实践操作,...
3. **获取XML文件**:Servlet可能从HTTP请求的POST或GET参数中接收XML数据,或者从服务器上的文件系统中读取XML文件。使用`HttpServletRequest`对象来获取XML数据。 4. **创建SAX解析器**:使用`SAXParserFactory`...
本文将深入探讨 `dxServlet.java` 文件中涉及的核心概念和技术细节,帮助开发者更好地理解如何在 Java Servlet 中处理 HTTP POST 请求携带的 XML 数据。 #### 核心知识点 1. **Servlet 的基本概念与功能** 2. **...
在这个项目中,数据库存储了要展示的数据,并通过SQL查询被Servlet读取。 4. **数据库连接**: 使用Java的JDBC(Java Database Connectivity)API,Servlet可以建立与MySQL的连接,执行SQL查询,如`SELECT`语句来...
在Servlet端,通常会用到HttpServlet类来接收请求,通过HttpServletRequest对象的getInputStream()方法读取XML数据。 在处理中文字符时,Flex客户端和Servlet都必须确保使用相同的字符编码,例如UTF-8。Flex中可以...
2. 图片展示:Servlet读取服务器上的图片文件并返回给前端,jQuery负责在页面上显示。 **源码分析** 在博文链接中,可能包含以下内容: 1. Servlet配置:`web.xml`文件中配置Servlet的映射路径。 2. Servlet代码:...
**四、JSON数据格式** JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它采用键值对的形式,类似于JavaScript的对象,因此JavaScript与JSON的互换非常方便。 **五、Servlet返回JSON...
- 对于POST请求,由于在读取请求参数前可以设置编码,因此在Servlet中使用上述方法可以解决问题。 - 但是,如果需要同时处理GET和POST,以及避免每个Servlet都写相同的代码,那么创建一个全局Filter是最好的解决...
原生Servlet CRUD是Java Web开发中的基础操作,主要用于创建、读取、更新和删除(Create, Read, Update, Delete)数据。在这个项目中,开发者直接使用了Servlet API进行实践,而不是依赖任何高级框架如Spring MVC。...
总结来说,这个系统利用了Web技术和Java后端服务,结合Apache Tomcat的部署能力,实现了Excel到XML的批量转换,为用户提供了便捷的数据格式转换工具。这样的解决方案在数据分析、数据交换和自动化工作流中具有广泛的...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。本例子将详细介绍如何在Servlet中获取并处理JSON数据。 首先,我们需要引入处理JSON的库,最常用的...
ExtJS中的Ajax类提供了与服务器交互的能力,它支持发送GET和POST请求,以及处理JSON、XML等多种数据格式的响应。在本例中,ExtJS将作为前端,通过Ajax调用Servlet来获取或提交数据。 Servlet在Java Web应用中扮演着...
1. 初始化:Servlet 初始化时,会读取 web.xml 文件中的配置信息,并执行 init 方法。在这个阶段,Servlet 会获取 web.xml 文件中的预定义参数。 2. 服务:在 Servlet 初始化完成后,会进入服务阶段。在这个阶段,...
在Servlet中,可以使用HttpServletRequest对象的getParameter()方法读取GET请求的参数,对于POST请求,需要使用getParameterValues()或getInputStream()来获取数据。 总之,Java Servlet技术是Java Web开发的重要...
Servlet提供了强大的I/O功能,可以读取客户端的输入数据并发送响应数据。这些操作通常通过`HttpServletRequest`和`HttpServletResponse`对象完成。 1. **读取客户端数据**: - 使用`HttpServletRequest`对象的`...
- **数据源配置**: 通过在`web.xml`文件中配置数据源,可以方便地在Servlet中访问数据库。 - **MVC框架**: Model-View-Controller架构模式用于分离业务逻辑、数据管理和用户界面。 - **RequestDispatcher**: 用于...
2. **初始化**:Servlet容器调用init()方法对Servlet进行初始化,通常在这个阶段完成配置信息的读取等初始化工作。 3. **服务**:接下来Servlet容器将调用service()方法来处理客户端请求。在service()方法中,根据...