Java程序API数据接口

简介: Java程序API数据接口

API:应用程序接口(API:Application Program Interface)

一、使用数据接口的作用

1、封装逻辑


数据接口从数据库查询出数据,并组织成json格式,这个逻辑如果在每个终端都写一遍,那样将编写大量重复代码


2、便于分布部署


可以部署多份API便于多个终端使用


3、提高安全性


可以避免从APP端直接访问数据库


API 同时也是一种中间件,为各种不同平台提供数据共享。根据单个或分布式平台上不同软件应用程序间的数据共享性能,可以将 API 分为四种类型: 远程过程调用(RPC):通过作用在共享数据缓存器上的过程(或任务)实现程序间的通信; 标准查询语言(SQL):是标准的访问数据的查询语言,通过通用数据库实现应用程序间的数据共享; 文件传输:文件传输通过发送格式化文件实现应用程序间数据共享; 信息交付:指松耦合或紧耦合应用程序间的小型格式化信息,通过程序间的直接通信实现数据共享.


二、项目搭建

1. 技术选型:使用springmvc+mybatis jdk1.7 tomcat7


(注:没有届面,只有数据接口,通过springmvc中的controller对外提供数据服务,利用@ResponseBody注解将数据转成json数组)


2. 项目搭建


-1 pom.xml


-2 web.xml


-3 pring-servlet.xml


-4 日志配置文件


-5 数据库连接属性文件


-6 mybatis配置文件


3. 代码编写(按个人习惯正序、倒序书写)(使用Mybatis)


-1 DAO接口类


-2 映射文件


-3 实体类代码


-4 Service接口类


-5 Service实现类


-6 控制器类


三、简单是的演示

前往演示接口

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
import java.nio.charset.Charset;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.PrintWriter;
import java.net.URLConnection;
public class Example {
  private static String readAll(Reader rd) throws IOException {
    StringBuilder sb = new StringBuilder();
    int cp;
    while ((cp = rd.read()) != -1) {
      sb.append((char) cp);
    }
    return  sb.toString();
  }
  public static JSONObject postRequestFromUrl(String url, String body) throws IOException, JSONException {
    URL realUrl = new URL(url);
    URLConnection conn = realUrl.openConnection();
    conn.setDoOutput(true);
    conn.setDoInput(true);
    PrintWriter out = new PrintWriter(conn.getOutputStream());
    out.print(body);
    out.flush();
    InputStream instream = conn.getInputStream();
    try {
      BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8")));
      String jsonText = readAll(rd);
      JSONObject json = new JSONObject(jsonText);
      return json;
    } finally {
      instream.close();
    }
  }
  public static JSONObject getRequestFromUrl(String url) throws IOException, JSONException {
    URL realUrl = new URL(url);
    URLConnection conn = realUrl.openConnection();
    InputStream instream = conn.getInputStream();
    try {
      BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8")));
      String jsonText = readAll(rd);
      JSONObject json = new JSONObject(jsonText);
      return json;
    } finally {
      instream.close();
    }
  }
  public static void main(String[] args) throws IOException, JSONException {
    // 请求示例 url 默认请求参数已经URL编码处理
    String url = "https://api-gw.onebound.cn/taobao/item_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=652874751412&is_promotion=1";
    JSONObject json = getRequestFromUrl(url);
    System.out.println(json.toString());
  }
}
相关文章
|
24天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
64 2
|
9天前
|
存储 SQL 安全
API 数据接口使用与安全指南
本文介绍了API数据接口的基础知识、使用流程及安全要点。首先,定义了API及其在现代技术生态中的重要性,接着详细阐述了API使用的六个步骤:明确需求、搜索筛选、注册获取密钥、解读文档、环境搭建与集成、数据处理与应用集成。最后,强调了API安全的重要性,包括身份验证、数据加密、防范攻击及安全监控等方面,确保API的安全稳定运行。
|
13天前
|
Java 数据处理 数据安全/隐私保护
Java处理数据接口方法
Java处理数据接口方法
20 1
|
22天前
|
IDE Java 编译器
开发 Java 程序一定要安装 JDK 吗
开发Java程序通常需要安装JDK(Java Development Kit),因为它包含了编译、运行和调试Java程序所需的各种工具和环境。不过,某些集成开发环境(IDE)可能内置了JDK,或可使用在线Java编辑器,无需单独安装。
48 1
|
1月前
|
缓存 监控 Java
如何运用JAVA开发API接口?
本文详细介绍了如何使用Java开发API接口,涵盖创建、实现、测试和部署接口的关键步骤。同时,讨论了接口的安全性设计和设计原则,帮助开发者构建高效、安全、易于维护的API接口。
84 4
|
13天前
|
SQL 安全 Java
Java 异常处理:筑牢程序稳定性的 “安全网”
本文深入探讨Java异常处理,涵盖异常的基础分类、处理机制及最佳实践。从`Error`与`Exception`的区分,到`try-catch-finally`和`throws`的运用,再到自定义异常的设计,全面解析如何有效管理程序中的异常情况,提升代码的健壮性和可维护性。通过实例代码,帮助开发者掌握异常处理技巧,确保程序稳定运行。
25 0
|
1月前
|
Java API 数据处理
探索Java中的Lambda表达式与Stream API
【10月更文挑战第22天】 在Java编程中,Lambda表达式和Stream API是两个强大的功能,它们极大地简化了代码的编写和提高了开发效率。本文将深入探讨这两个概念的基本用法、优势以及在实际项目中的应用案例,帮助读者更好地理解和运用这些现代Java特性。
|
2月前
|
Java 大数据 API
别死脑筋,赶紧学起来!Java之Steam() API 常用方法使用,让开发简单起来!
分享Java Stream API的常用方法,让开发更简单。涵盖filter、map、sorted等操作,提高代码效率与可读性。关注公众号,了解更多技术内容。
|
2月前
|
Java Maven 数据安全/隐私保护
如何实现Java打包程序的加密代码混淆,避免被反编译?
【10月更文挑战第15天】如何实现Java打包程序的加密代码混淆,避免被反编译?
91 2
|
2月前
|
安全 Java Linux
java程序设置开机自启
java程序设置开机自启
135 1