idea 打包到Jmeter中使用

idea 打包到Jmeter中使用

1.idea 普通打包
经纬度获取地址
package pers;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;

public class PostDemo {

    /**
     * 调用对方接口方法
     * @param path 对方或第三方提供的路径
     * @param data 向对方或第三方发送的数据,大多数情况下给对方发送JSON数据让对方解析
     */
    public static String interfaceUtil(String path,String data) {
        String str1 = "";
        try {
            URL url = new URL(path);
            //打开和url之间的连接
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            PrintWriter out = null;

            /**设置URLConnection的参数和普通的请求属性****start***/

            conn.setRequestProperty("accept", "*/*");
            conn.setRequestProperty("connection", "Keep-Alive");
            conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");

            /**设置URLConnection的参数和普通的请求属性****end***/

            //设置是否向httpUrlConnection输出,设置是否从httpUrlConnection读入,此外发送post请求必须设置这两个
            //最常用的Http请求无非是get和post,get请求可以获取静态页面,也可以把参数放在URL字串后面,传递给servlet,
            //post与get的 不同之处在于post的参数不是放在URL字串里面,而是放在http请求的正文内。
            conn.setDoOutput(true);
            conn.setDoInput(true);

            conn.setRequestMethod("POST");//GET和POST必须全大写
            /**GET方法请求*****start*/
            /**
             * 如果只是发送GET方式请求,使用connet方法建立和远程资源之间的实际连接即可;
             * 如果发送POST方式的请求,需要获取URLConnection实例对应的输出流来发送请求参数。
             * */
            conn.connect();

            /**GET方法请求*****end*/

            /***POST方法请求****start*/

            out = new PrintWriter(conn.getOutputStream());//获取URLConnection对象对应的输出流

            out.print(data);//发送请求参数即数据

            out.flush();//缓冲数据

            /***POST方法请求****end*/

            //获取URLConnection对象对应的输入流
            InputStream is = conn.getInputStream();
            //构造一个字符流缓存
            BufferedReader br = new BufferedReader(new InputStreamReader(is));
            String str = "";
            while ((str = br.readLine()) != null) {
                str=new String(str.getBytes(),"UTF-8");//解决中文乱码问题
                if(str!=null){
                    str1=str1.concat(str);
                }
            }
            //关闭流
            is.close();
            //断开连接,最好写上,disconnect是在底层tcp socket链接空闲时才切断。如果正在被其他线程使用就不切断。
            //固定多线程的话,如果不disconnect,链接会增多,直到收发不出信息。写上disconnect后正常一些。
            conn.disconnect();
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            return str1;
        }
    }

    public static void main(String[] args) {

//        interfaceUtil("http://api.map.baidu.com/geocoder/v2/?ak=sNt22yxtnLihNl78HTasb7vzcbvEYZK0&location=31.298247284063569,120.66298796130684&output=json&pois=0&mcode=27:09:CB:86:B5:F9:30:AF:20:E0:FA:E0:4B:3C:27:93:CC:B3:4A:FD;com.china.bida.cliu.wallpaperstore", "");//get请求

        String test = interfaceUtil("http://api.map.baidu.com/geocoder/v2/?ak=sNt22yxtnLihNl78HTasb7vzcbvEYZK0&output=json&pois=0&mcode=27:09:CB:86:B5:F9:30:AF:20:E0:FA:E0:4B:3C:27:93:CC:B3:4A:FD;com.china.bida.cliu.wallpaperstore", "location=31.298247284063569,120.66298796130684");//post请求
        System.out.println(test);
    }

}
运行结果:
{"status":0,"result":{"location":{"lng":120.66298796130677,"lat":31.298247160114639},"formatted_address":"江苏省苏州市吴中区东振路85号-16幢","business":"娄葑,东环路,葑门","addressComponent":{"country":"中国","country_code":0,"country_code_iso":"CHN","country_code_iso2":"CN","province":"江苏省","city":"苏州市","city_level":2,"district":"吴中区","town":"","town_code":"","adcode":"320506","street":"东振路","street_number":"85号-16幢","direction":"附近","distance":"1"},"pois":[],"roads":[],"poiRegions":[{"direction_desc":"内","name":"东振花园","tag":"房地产;住宅区","uid":"fbf383d636d6fe1a4c6d463e","distance":"0"}],"sematic_description":"东振花园内,东振小区-16幢内0米","cityCode":224}}

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.idea Maven打包

在这里插入图片描述在这里插入图片描述

导入到Jmeter并使用
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
成功~~
问题:1.在这里插入图片描述
2.找不到主类的解决办法
在pom.xl中配置主类

<build>
      <finalName>lh-test</finalName><!-- 导出jar的名字 -->
      <plugins>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-shade-plugin</artifactId>
              <version>3.2.0</version>
              <executions>
                  <execution>
                      <phase>package</phase>
                      <goals>
                          <goal>shade</goal>
                      </goals>
                      <configuration>
                          <transformers>
                              <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                  <mainClass>pers.PostDemo</mainClass>
                                  <!-- 主类的位置,例如上图文件,主类配置应为: -->
                                  <!-- <mainClass>top.nihilwater.App</mainClass> -->
                              </transformer>
                          </transformers>
                      </configuration>
                  </execution>
              </executions>
          </plugin>
      </plugins>
  </build>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值