iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >从头开始用JAVA创建一个自己的简单API并实现第三方调用
  • 881
分享到

从头开始用JAVA创建一个自己的简单API并实现第三方调用

javaspringmybatisspringboot 2023-09-09 08:09:39 881人浏览 薄情痞子
摘要

        相信大家对这个词汇并不陌生,通俗来说api就是程序之间的接口,在学习和工作中经常会调用别人的API,那么如果我们要做一个自己的API,要如何下手呢。本文将用spring+JAVA编写一个简单的API,过程可供初学者参考。  

        相信大家对这个词汇并不陌生,通俗来说api就是程序之间的接口,在学习和工作中经常会调用别人的API,那么如果我们要做一个自己的API,要如何下手呢。本文将用spring+JAVA编写一个简单的API,过程可供初学者参考。

        为了顾及完全没有经验的小白(比如我),本文内容将比较详细从创建开始讲起,大佬可以跳过。

一、创建项目

        其实API也是一个Spring项目,和别的spring项目没有很大的区别,所以创建项目的过程也是一样的。

        首先选择new project,并选择Spring Inilalizr,如下图所示

        选择Dependencies,此处作为示范勾选常用几项

 点击finish,项目创建成功。

二、创建一个自己的简单API

         创建项目完成之后我们来简单说一下配置部分,大多数时候我们调用别人的API都是用HTTP方式调用,这就需要URL,这个步骤我相信常用Spring的同学都不会陌生,所以我们简要提一下就行。

        ①创建application.yml文件

spring:  datasource:    driver-class-name: com.Mysql.cj.jdbc.Driver    url: jdbc:mysql://localhost:3306/my_blog_db?useUnicode=true&characterEncoding=utf8&autoReconnect=true&useSSL=false&serverTimezone=UTC    username: root    passWord: rootmybatis-plus:  mapper-locations: classpath:mapper        System.out.println("已进入api接口------");        System.out.println(flag);        if(flag==true){            return ResultUtil.success("返回成功数据Congraduations!");        }        return ResultUtil.error("抱歉sorry!");    }}

        到这里我们已经写完我们的简单API了,是不是看起来平平无奇?是的,我们的API只是演示使用,而API本身并不是什么特别高大上的东西,不过我们既然已经写完了,那我们就来试试看调用我们的API吧。

三、实现第三方调用

        调用部分我们在另一个JAVA文件中调用,编写一个用于调用API的类HttpClientUtil

public class HttpClientUtil {    public static String doPost(String pathUrl, String data){        OutputStreamWriter out = null;        BufferedReader br = null;        String result = "";        try {            URL url = new URL(pathUrl);            //打开和url之间的连接            HttpURLConnection conn = (HttpURLConnection) url.openConnection();            //请求方法为"POST"            conn.setRequestMethod("POST");            // 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在http正文内,因此需要设为true, 默认情况下是false;            conn.setDoOutput(true);            // Post请求不能使用缓存            conn.setUseCaches(false);            //设置请求属性            conn.setRequestProperty("accept", "*/*");            conn.setRequestProperty("connection", "Keep-Alive");  //维持长链接            conn.setRequestProperty("Content-Type", "application/JSON;charset=utf-8");            conn.connect();            //调用,获取输出流            out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");            //发送请求参数            out.write(data);            out.flush();            //获取URLConnection对象对应的输入流            InputStream is = conn.getInputStream();            //构造一个字符流缓存            br = new BufferedReader(new InputStreamReader(is));            String str = "";            while ((str = br.readLine()) != null){                result += str;            }            System.out.println(result);            //关闭流            is.close();            //断开连接,disconnect是在底层tcp Socket链接空闲时才切断,如果正在被其他线程使用就不切断。            conn.disconnect();        } catch (Exception e) {            e.printStackTrace();        }        return result;    }}

在别的类中调用该方法就可以啦

//url需要与我们在api中设置的对应,后一个是传参String s = HttpClientUtil.doPost("http://localhost:12345/api/postTest","true");System.out.println(s);

看一下返回结果,我们已经成功实现了调用

 再看一下传入"false"时返回的结果

由此可见我们已经实现了api中的小功能

在实际开发中很多时候传参都会采用json的方式,只要另作修改即可,还有很多种调用第三方api的方法,这边就不作赘述了,希望大家天天开心!(*^_^*)

来源地址:https://blog.csdn.net/weixin_51224818/article/details/131441468

--结束END--

本文标题: 从头开始用JAVA创建一个自己的简单API并实现第三方调用

本文链接: https://www.lsjlt.com/news/401206.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作