当前位置: 首页 > news >正文

推广网站的图片怎么做wordpress上传到主机

推广网站的图片怎么做,wordpress上传到主机,凡科电脑版,如何在网上开店Java 实现发送 HTTP 请求#xff0c;系列文章#xff1a; 《Java使用原生HttpURLConnection实现发送HTTP请求》 《Java使用HttpClient5实现发送HTTP请求》 《SpringBoot使用RestTemplate实现发送HTTP请求》 1、HttpURLConnection 类的介绍 HttpURLConnection 是 Java 提供的…  Java 实现发送 HTTP 请求系列文章 《Java使用原生HttpURLConnection实现发送HTTP请求》 《Java使用HttpClient5实现发送HTTP请求》 《SpringBoot使用RestTemplate实现发送HTTP请求》 1、HttpURLConnection 类的介绍 HttpURLConnection 是 Java 提供的原生标准的用于发送 HTTP 请求和接收 HTTP 响应的一个类它位于 java.net 包下并继承了 URLConnection 类。 HttpURLconnection 是基于 HTTP 协议的支持 getpostputdelete 等各种请求方式最常用的就是 get 和 post。 URLConnection 提供了一组方法来建立与 URL 之间的连接、发送请求和接收响应。 以下是 HttpURLConnection 类常用的方法 方法说明openConnection()用于打开与 URL 的连接返回一个 URLConnection 对象。setRequestMethod(String method)设置请求方法如 GET、POST 等。setRequestProperty(String key, String value)设置请求属性如请求头参数。getRequestMethod()获取当前请求的方法。getRequestProperty(String key)获取指定请求属性的值。connect()建立与URL的连接。getInputStream()获取输入流用于接收响应数据。getOutputStream()获取输出流用于发送请求数据。getResponseCode()获取响应的状态码。getHeaderField(String name)获取指定响应头字段的值。setDoInput(boolean doinput)设置是否从 URLConnection 读入默认为true。setDoOutput(boolean dooutput)设置是否向 URLConnection 输出默认为false。setInstanceFollowRedirects(boolean followRedirects)设置是否自动执行重定向默认为true。disconnect()断开与URL的连接。 2、创建 HttpURLConnection 工具类 通过将常用的方法封装到工具类中可以避免重复编写相同的代码从而提高代码的复用性‌。 基于 HttpURLConnection 的 HTTP 请求工具类 package com.pjb.consumer.util;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.util.Map;/*** 基于 HttpURLConnection 的 HTTP 请求工具类* author pan_junbiao**/ public class HttpURLConnectionUtil {// 超时时间private final static int timeOut 60000; //60秒/*** 发送 GET 请求并获取响应数据** param url 请求地址* param params 请求参数* return 响应数据字符串*/public static String doGet(String url, MapString, String params){HttpURLConnection connection null;BufferedReader reader null;try{// 1、拼接 URLStringBuffer stringBuffer new StringBuffer(url);if (params ! null !params.isEmpty()){stringBuffer.append(?);for (Map.EntryString, String entry : params.entrySet()){stringBuffer.append(entry.getKey()).append().append(entry.getValue()).append();}stringBuffer.deleteCharAt(stringBuffer.length() - 1);}URL targetUrl new URL(stringBuffer.toString());// 2、建立链接connection (HttpURLConnection) targetUrl.openConnection();// 设置请求方法为 GETconnection.setRequestMethod(GET);// 设置连接超时connection.setConnectTimeout(timeOut);// 设置读取响应超时connection.setReadTimeout(timeOut);// 3、获取响应结果StringBuilder response new StringBuilder();reader new BufferedReader(new InputStreamReader(connection.getInputStream()));String line;while ((line reader.readLine()) ! null){response.append(line);}return response.toString();} catch (IOException e){e.printStackTrace();} finally{//释放资源releaseResource(connection, null, reader);}return null;}/*** 发送 POST 请求并获取响应数据** param url 请求地址* param params 请求参数* return 响应数据字符串*/public static String doPost(String url, MapString, String params){HttpURLConnection connection null;OutputStream outputStream null;BufferedReader reader null;try{// 1、创建 URL 对象URL targetUrl new URL(url);// 2、建立链接connection (HttpURLConnection) targetUrl.openConnection();// 设置请求方法为 POSTconnection.setRequestMethod(POST);// 设置连接超时connection.setConnectTimeout(timeOut);// 设置读取响应超时connection.setReadTimeout(timeOut);// 设置请求头部为默认URL编码表单数据格式connection.setRequestProperty(Content-Type, application/x-www-form-urlencoded);// 允许写入输出流connection.setDoOutput(true);// 禁用缓存connection.setUseCaches(false);// 3、写入请求体outputStream connection.getOutputStream();StringBuffer payload new StringBuffer();if (params ! null !params.isEmpty()){for (Map.EntryString, String entry : params.entrySet()){payload.append(entry.getKey()).append().append(entry.getValue()).append();}payload.deleteCharAt(payload.length() - 1);}outputStream.write(payload.toString().getBytes());outputStream.flush();outputStream.close();// 4、获取响应结果StringBuilder response new StringBuilder();reader new BufferedReader(new InputStreamReader(connection.getInputStream()));String line;// 读取响应数据while ((line reader.readLine()) ! null){response.append(line);}return response.toString();} catch (IOException e){e.printStackTrace();} finally{//释放资源releaseResource(connection, outputStream, reader);}return null;}/*** 发送 JSON 格式的 POST 请求并获取响应数据** param url 请求地址* param jsonParam JSON格式的请求参数* return 响应数据字符串*/public static String doJsonPost(String url, String jsonParam){HttpURLConnection connection null;OutputStream outputStream null;BufferedReader reader null;try{// 1、创建 URL 对象URL targetUrl new URL(url);// 2、建立链接connection (HttpURLConnection) targetUrl.openConnection();// 设置请求方法为 POSTconnection.setRequestMethod(POST);// 设置请求头部为 JSON 格式connection.setRequestProperty(Content-Type, application/json);// 设置连接超时connection.setConnectTimeout(timeOut);// 设置读取响应超时connection.setReadTimeout(timeOut);// 允许向服务器发送数据connection.setDoOutput(true);// 3、向服务器发送 JSON 数据outputStream connection.getOutputStream();outputStream.write(jsonParam.getBytes());outputStream.flush();// 4、获取响应结果StringBuffer response new StringBuffer();int responseCode connection.getResponseCode();reader new BufferedReader(new InputStreamReader(connection.getInputStream()));String line;while ((line reader.readLine()) ! null){response.append(line);}return response.toString();} catch (Exception e){e.printStackTrace();} finally{//释放资源releaseResource(connection, outputStream, reader);}return null;}/*** 释放资源*/private static void releaseResource(HttpURLConnection connection, OutputStream outputStream, BufferedReader reader){if (connection ! null){try{connection.disconnect();} catch (Exception e){System.out.println(连接关闭失败);}}if (outputStream ! null){try{outputStream.close();} catch (IOException e){System.out.println(输出流关闭失败);}}if (reader ! null){try{reader.close();} catch (IOException e){System.out.println(输入流关闭失败);}}} } 3、综合实例 【实例】实现用户信息的查询、新增、修改、删除接口并使用 HttpURLConnection 实现接口的请求。 1在 controller 层创建用户信息控制器类实现查询、新增、修改、删除接口。 package com.pjb.business.controller;import com.pjb.business.entity.UserInfo; import com.pjb.business.exception.ApiResponseException; import com.pjb.business.model.ApiModel.ApiResponseCode; import com.pjb.business.model.ApiModel.ApiResponseResult; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController;/*** 用户信息控制器类* author pan_junbiao**/ RestController RequestMapping(/user) Api(description 用户信息控制器) public class UserController {/*** 查询用户信息*/ApiOperation(value 查询用户信息)RequestMapping(value /getUserInfo, method RequestMethod.GET)public ApiResponseResultUserInfo getUserInfo(Long userId){if (userId 0){//使用全局异常处理throw new ApiResponseException(ApiResponseCode.PARAMETER_ERROR);}UserInfo userInfo new UserInfo();userInfo.setUserId(userId);userInfo.setUserName(pan_junbiao的博客);userInfo.setBlogName(您好欢迎访问 pan_junbiao的博客);userInfo.setBlogUrl(https://blog.csdn.net/pan_junbiao);//使用统一返回值return new ApiResponseResult(ApiResponseCode.SUCCESS, userInfo);}/*** 新增用户信息*/ApiOperation(value 新增用户信息)RequestMapping(value /addUserInfo, method RequestMethod.POST)public ApiResponseResultBoolean addUserInfo(RequestBody UserInfo userInfo){if (userInfo null || userInfo.getUserName() null || userInfo.getUserName().length() 0){//使用全局异常处理throw new ApiResponseException(ApiResponseCode.PARAMETER_ERROR);}//使用统一返回值return new ApiResponseResult(ApiResponseCode.SUCCESS, true);}/*** 修改用户信息*/ApiOperation(value 修改用户信息)RequestMapping(value /updateUserInfo, method RequestMethod.POST)public ApiResponseResultBoolean updateUserInfo(RequestBody UserInfo userInfo){if (userInfo null userInfo.getUserId() 0){//使用全局异常处理throw new ApiResponseException(ApiResponseCode.PARAMETER_ERROR);}//使用统一返回值return new ApiResponseResult(ApiResponseCode.SUCCESS, true);}/*** 删除用户信息*/ApiOperation(value 删除用户信息)RequestMapping(value /deleteUserInfo, method RequestMethod.POST)public ApiResponseResultBoolean deleteUserInfo(Long userId,String userName){if (userId 0){//使用全局异常处理throw new ApiResponseException(ApiResponseCode.PARAMETER_ERROR);}//使用统一返回值return new ApiResponseResult(ApiResponseCode.SUCCESS, true);} } 2使用 HttpURLConnection 发送 Get 请求查询用户信息。 /*** 使用 HttpURLConnection 发送 Get 请求查询用户信息*/ Test public void getUserInfo() {//请求地址String url http://localhost:8085/user/getUserInfo;//请求参数MapString, String params new HashMap();params.put(userId, 1);//发送 HTTP 的 Get 请求核心代码String httpResult HttpURLConnectionUtil.doGet(url, params);//反序列化JSON结果ApiResponseResultUserInfo responseResult JacksonUtil.getJsonToGenericityBean(httpResult, ApiResponseResult.class, UserInfo.class);UserInfo userInfo responseResult.getData();System.out.println(响应JSON结果 httpResult);System.out.println(响应结果编码 responseResult.getCode());System.out.println(响应结果信息 responseResult.getMessage());System.out.println(用户编号 userInfo.getUserId());System.out.println(用户名称 userInfo.getUserName());System.out.println(博客信息 userInfo.getBlogName());System.out.println(博客地址 userInfo.getBlogUrl()); } 执行结果 3使用 HttpURLConnection 发送 JSON 格式的 POST 请求新增用户信息。 /*** 使用 HttpURLConnection 发送 JSON 格式的 POST 请求新增用户信息*/ Test public void addUserInfo() {//请求地址String url http://localhost:8085/user/addUserInfo;//请求参数UserInfo userInfo new UserInfo();userInfo.setUserId(2L);userInfo.setUserName(pan_junbiao的博客);userInfo.setBlogName(您好欢迎访问 pan_junbiao的博客);userInfo.setBlogUrl(https://blog.csdn.net/pan_junbiao);String json JacksonUtil.getBeanToJson(userInfo);//发送 JSON 格式的 POST 请求核心代码String httpResult HttpURLConnectionUtil.doJsonPost(url, json);System.out.println(响应结果 httpResult); } 执行结果 响应结果{code:200000,message:操作成功,data:true} 4使用 HttpURLConnection 发送 POST 请求删除用户信息。 /*** 使用 HttpURLConnection 发送 POST 请求删除用户信息*/ Test public void deleteUserInfo() {//请求地址String url http://localhost:8085/user/deleteUserInfo;//请求参数MapString, String params new HashMap();params.put(userId,3);//发送 HTTP 的 POST 请求核心代码String httpResult HttpURLConnectionUtil.doPost(url, params);System.out.println(响应结果 httpResult); } 执行结果 响应结果{code:200000,message:操作成功,data:true}
http://www.dnsts.com.cn/news/184356.html

相关文章:

  • 三沙网站设计公司毕业室内设计代做网站
  • 电商网站优化方案代驾平台
  • 烟台百度网站建设企业门户样式
  • 中国移动idc建设网站郑州网站建设hndream
  • 龙岗网站建设要多少钱做网站后台开发工资
  • 曰本做爰l网站关于重新建设网站的申请
  • 绵阳网站建设培训wordpress 正在跳转中 请稍等
  • 如何搜索asp网站网上建立网站
  • wordpress京豆插件深圳设计优化公司
  • 如何查看网站是否开启gzip破天网站定制
  • 学习建设网站做网站题材
  • 深圳做棋牌网站建设哪家好正规少儿编程排名
  • 专业的网站开发公司电话网站建设分几次付钱
  • 郑州专业做网站怎么做公司的官方网站
  • 装修设计网站源码网站被k的表现
  • 网站开发 建设叫什么宠物网站推广怎么做
  • 电商网站首页图片郑州短视频代运营
  • 厦门专业网站设计公网站关键词整体方案
  • 小网站要备案吗做网站的公司主要做shm
  • 如何设计并制作各级网页莱芜网站seo
  • 服务器2003系统如何建设网站做时彩网站违法吗
  • 域名已注册怎样建设网站暖暖社区免费观看高清完整版
  • 怎么在国外建网站网站专题栏目策划方案
  • 阿里云 网站建设小红书推广方案
  • 河北网站建设方案详细镇江门户网
  • 程序员做的导航网站网络宣传平台
  • 河源建设工程交易中心网站百度seo新规则
  • 青岛网站设计价格北京企业网站推广哪家公司好
  • 朝阳网站建设怎么样东莞网站建设推广公司
  • 网站的格式分类有创意的广告