`
keney_oak
  • 浏览: 27304 次
社区版块
存档分类
最新评论

JAVA 访问接口,并获取接口的返回值 1

    博客分类:
  • java
阅读更多
----------------访问接口
try {
    /** post方式 */
    HttpClient client = new HttpClient();
    PostMethod postMethod = new PostMethod(
            "http://localhost:8080/portal/check.jsp");
    // 参数设置
    postMethod.setParameter("channelid", "85");
    // 执行postMethod
    client.getParams().setParameter(
            HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8");
    // 执行并返回状态
    int status = client.executeMethod(postMethod);
    String getUrl = postMethod.getResponseBodyAsString();
    System.out.println(getUrl);
} catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

-----------------------------------访问路径

check.jsp类的代码

<%@ page contentType="text/html;charset=UTF-8" pageEncoding="utf-8" %>
<%
//通过栏目id判断用户对栏目权限;
String channelid = (String) request.getParameter("channelid");
if(null==channelid||""==channelid){
    response.getWriter().print(100);
}else{
    response.getWriter().print(200);
}
%>

---------------------------------------获得访问接口返回值

// 构造HttpClient的实例
HttpClient httpClient = new HttpClient();
// 创建GET方法的实例
GetMethod getMethod = new GetMethod(url);
// 使用系统提供的默认的恢复策略
getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
        new DefaultHttpMethodRetryHandler());
// 定义一个输入流
InputStream ins = null;
// 定义文件流
BufferedReader br = null;
try {
    // 执行getMethod
    int statusCode = httpClient.executeMethod(getMethod);
    if (statusCode != HttpStatus.SC_OK) {
        System.err.println("方法失败: " + getMethod.getStatusLine());
    }
    // 使用getResponseBodyAsStream读取页面内容,
    //这个方法对于目标地址中有大量数据需要传输是最佳的。
    ins = getMethod.getResponseBodyAsStream();
    String charset = getMethod.getResponseCharSet();
    if (charset.toUpperCase().equals("ISO-8859-1")) {
        charset = "gbk";
    }
    // 按服务器编码字符集构建文件流,这里的CHARSET要根据实际情况设置
    br = new BufferedReader(new InputStreamReader(ins, getMethod
            .getResponseCharSet()));
    StringBuffer sbf = new StringBuffer();
    String line = null;
    while ((line = br.readLine()) != null) {
        sbf.append(line);
    }
    String result = new String(sbf.toString().getBytes(
            getMethod.getResponseCharSet()), charset);
    // 输出内容
    System.out.println(result);

    // 服务器编码
    System.out.println("服务器编码是:" + getMethod.getResponseCharSet());
    return result;
} catch (HttpException e) {
    // 发生致命的异常,可能是协议不对或者返回的内容有问题
    System.out.println("请检查您所提供的HTTP地址!");
    e.printStackTrace();
} catch (IOException e) {
    // 发生网络异常
    e.printStackTrace();
} finally {
    // 关闭流,释放连接
}
return null;






分享到:
评论

相关推荐

    android webview中使用Java调用JavaScript方法并获取返回值

    如果需要在WebView中启用JavaScript调用Android代码的功能,还要在addJavascriptInterface()方法中声明一个Java类的实例,并为其指定一个可以在JavaScript中访问的接口名字。 在Java代码中定义一个内部类,用于接收...

    Java调用MySQL存储过程并获得返回值的方法

    在Java编程中,调用MySQL存储过程并获取返回值是一项常见的任务,这有助于优化数据库操作,提高代码的可维护性和性能。以下是如何使用Java来执行这个操作的详细步骤和相关知识点: 1. **连接数据库**: 在Java中,...

    java调用天气的接口

    Java 调用天气接口是指使用 Java 语言来调用天气预报服务的 WebService,获取当前天气信息和天气预报数据。下面是相关知识点的总结: 1. Java 调用 WebService Java 调用 WebService 需要使用到以下知识点: * ...

    java链接postgresql

    1. **JDBC**: JDBC是Java中用于与关系数据库交互的一组接口和类,它是Java标准的一部分,位于`java.sql`包中。JDBC提供了一种标准的API,使得Java开发者能够通过编写统一的代码来访问不同的数据库,无需关心底层...

    asp.net通过WebService调用Java接口全过程

    这里的`getTestString`是Java接口提供的方法,传入参数并接收返回值。 5. **通信协议**: - WebService通常基于SOAP协议,它是一种XML格式的数据交换标准,使得不同平台之间可以进行通信。在本例中,ASP.NET通过...

    java--接口--下载文件--可支持断点续传.rar

    在Java编程语言中,接口(Interface)是一种定义行为的标准,它允许不同的类实现相同的方法,以达到多态性。在本示例中,"java--接口--下载文件--可支持断点续传"指的是利用Java设计一个接口来处理文件下载,并且这...

    F12调试几个返回值的说明1

    本文将重点解析F12调试页面中常见的几个返回值及其对应的处理方法,主要针对网络协议、Java服务器以及前端CSS等方面。 1. **400 Bad Request**:这个错误表示客户端发送的请求在服务器端无法被理解,通常是因为参数...

    有返回值的线程

    在压缩包文件名`jdbctest`中,JDBC(Java Database Connectivity)是Java访问数据库的标准API。可能包含了测试JDBC连接、查询、事务处理等示例代码。学习JDBC,我们需要了解如何加载驱动、建立数据库连接、执行SQL...

    用反射解析jar文件并执行里面Java代码

    在Java编程语言中,反射(Reflection)是一种强大的工具,它允许程序在运行时检查和操作类、接口、字段以及方法等对象。通过反射,我们可以在不知道具体类名的情况下实例化对象,调用方法,访问和修改私有成员,以及...

    最完美的Discuz UCenter的JAVA API接口【java包】

    2. **认证机制**:API 接口通常需要认证才能访问,Java 包可能会提供一个认证机制,如使用 AppID 和 AppKey 进行签名,确保请求的安全性。 3. **用户管理**:包括用户注册、登录、退出、密码重置、用户信息更新等...

    java调用webservice接口方法

    4. **调用服务方法**: 现在,你可以像调用普通Java方法一样调用服务的方法,传递参数并接收返回值。例如: ```java YourWebServiceStub stub = new YourWebServiceStub(); YourResponseType response = stub....

    java调用sap rfc说明

    // 获取并处理返回值 String result = function.getTable("RESULT_TABLE").getString("COLUMN_NAME"); System.out.println("Result: " + result); // 清理资源 destination.release(); Environment.exit(0); ...

    Java本地接口(JNI)编程指南和规范 Java Native Interface 6.0 Specification

    1. **JNIEnv指针**:JNIEnv是一个指向一系列函数的指针,这些函数提供了与Java对象和数据交互的接口。 2. **本地方法签名**:每个本地方法都有一个唯一的签名,由参数类型和返回类型组成,例如"(ILjava/lang/String;...

    JNA 转java接口以及指针结构体解析

    理解和熟练掌握JNA,能够极大地扩展Java应用程序的能力,使其能够访问操作系统级别的功能和库,而无需深入学习JNI的复杂性。通过实践和研究`CallBackTest`中的代码,你可以更深入地了解JNA在实际项目中的应用。

    Xml格式返回值WS接口样例

    在这个特定的案例中,我们关注的是一个名为"Xml格式返回值WS接口样例"的项目,它涉及到使用WebService接口来获取数据库中的数据,并以XML格式返回结果。 首先,让我们深入了解一下WebService。WebService是一种独立...

    ASM函数监听实现(二)之打印注入函数的参数值

    这个类可能包含了一个`invoke`方法,该方法在目标方法执行前后进行拦截,通过`MethodVisitor`接口,我们可以访问到方法的参数,并进行适当的处理,比如打印。 `asmAopMethodAdapter.java`和`...

    JAVA的免费API直接使用!

    1. **基础类库**:如`java.lang`包,这是每个Java程序的基础,包含了一些基本数据类型、字符串处理、系统属性访问等核心类。 2. **集合框架**:`java.util`包中的ArrayList、LinkedList、HashMap等数据结构,以及...

    JAVA数据库编程JDBC 与 Java数据库接口JDBC入门基础讲座 与 JDBC API数据库编程实作教材-程序设计-JAVA JDBC全压缩包.rar

    Java数据库编程JDBC(Java Database Connectivity)是Java平台中用于访问数据库的标准应用程序接口,它为开发者提供了连接和操作各种数据库的能力。本压缩包包含了三个重要组成部分:《JAVA数据库编程JDBC》、《Java...

    vjia接口 vjiaApi java

    以上代码展示了如何实例化vjiaApi客户端,并调用`getVideoList()`接口获取视频列表。实际应用中,开发者需要根据vjiaApi的具体文档来编写相应的调用逻辑。 总结,vjiaApi是vjia平台与Java应用之间的通信桥梁,通过...

    result最为返回值

    然而,直接将ResultSet作为方法的返回值并不是最佳实践,原因在于ResultSet是依赖于数据库连接的。一旦Connection关闭,ResultSet也会随之关闭,可能导致数据无法正确读取。因此,为了确保数据的稳定访问,我们可以...

Global site tag (gtag.js) - Google Analytics