zoukankan      html  css  js  c++  java
  • 【发包工具】http多线程发包工具

    【发包工具】http多线程发包工具

      使用方法:输入地址,发送的内容,线程数,等待时间,每个线程发送的次数,GET/POST请求。

      源代码

      package com.xmxkkk.httptest;

      import java.awt.*;

      import java.awt.event.*;

      import javax.swing.*;

      import javax.swing.border.TitledBorder;

      public class MainWindow extends JFrame {

      // HttpClient httpclient;

      private JPanel contentPane;

      private BorderLayout borderLayout1;

      private JPanel panURL;

      private JPanel jPanel1;

      private JPanel jPanel2;

      private GridLayout gridLayout1;

      private JTextField URLTxt;

      private JSplitPane jSplitPane1;

      private JScrollPane jScrollPane1;

      private JScrollPane jScrollPane2;

      private JTextArea jTextArea1;

      private JTextArea jTextArea2;

      private JScrollPane jScrollPane3;

      private JTextArea jTextArea3;

      private JButton jButton1;

      private JButton jButton2;

      private JPanel jPanel3;

      private JRadioButton jRadioGet;

      private JRadioButton jRadioPost;

      public String method;

      private JPanel jPanel4;

      private ButtonGroup buttonGroup1;

      private JButton jButton3;

      private JCheckBox jCheckWrap;

      private BorderLayout borderLayout2;

      private TitledBorder titledBorder1;

      private JTextField thread;

      private JTextField num;

      private JTextField time;

      public MainWindow() {

      // httpclient = null;

      thread=new JTextField(5);

      num=new JTextField(5);

      time=new JTextField(5);

      borderLayout1 = new BorderLayout();

      panURL = new JPanel();

      jPanel1 = new JPanel();

      jPanel2 = new JPanel();

      gridLayout1 = new GridLayout();

      URLTxt = new JTextField();

      jSplitPane1 = new JSplitPane();

      jScrollPane1 = new JScrollPane();

      jScrollPane2 = new JScrollPane();

      jTextArea1 = new JTextArea();

      jTextArea2 = new JTextArea();

      jScrollPane3 = new JScrollPane();

      jTextArea3 = new JTextArea();

      jButton1 = new JButton();

      jButton2 = new JButton();

      jPanel3 = new JPanel();

      jRadioGet = new JRadioButton();

      jRadioPost = new JRadioButton();

      method = "POST";

      jPanel4 = new JPanel();

      buttonGroup1 = new ButtonGroup();

      jButton3 = new JButton();

      jCheckWrap = new JCheckBox();

      borderLayout2 = new BorderLayout();

      enableEvents(64L);

      try {

      jbInit();

      } catch (Exception e) {

      e.printStackTrace();

      }

      }

      private void jbInit() throws Exception {

      // httpclient = new HttpClient(this,jTextArea1);

      contentPane = (JPanel) getContentPane();

      titledBorder1 = new TitledBorder("");

      contentPane.setLayout(borderLayout1);

      setSize(new Dimension(652, 460));

      setTitle("Http testing tool");

      jPanel1.setLayout(gridLayout1);

      gridLayout1.setColumns(1);

      URLTxt.setBackground(SystemColor.desktop);

      URLTxt.setForeground(Color.yellow);

      URLTxt.setBorder(BorderFactory.createEtchedBorder());

      URLTxt.setNextFocusableComponent(jButton1);

      // URLTxt.setToolTipText("Input the connection URL");

      URLTxt.setMargin(new Insets(5, 5, 5, 5));

      URLTxt.setText("http://");

      URLTxt.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      URLTxt_actionPerformed(e);

      }

      });

      jSplitPane1.setOrientation(0);

      jSplitPane1.setDividerSize(8);

      // jTextArea1.setToolTipText("Edit the request xml");

      jTextArea1.setText("");

      jTextArea2.setText("");

      jTextArea3.setForeground(Color.blue);

      // jTextArea3.setToolTipText("Recived message");

      jTextArea3.setText("");

      jTextArea3.setLineWrap(true);

      jTextArea3.setWrapStyleWord(true);

      jButton1.setText("Send");

      jButton1.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      jButton1_actionPerformed(e);

      }

      });

      jButton2.setText("Exit");

      jButton2.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      jButton2_actionPerformed(e);

      }

      });

      jRadioGet.setForeground(new Color(0, 0, 230));

      jRadioGet.setText("GET");

      jRadioGet.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      jRadioGet_actionPerformed(e);

      }

      });

      jRadioPost.setForeground(new Color(0, 0, 230));

      jRadioPost.setText("POST");

      jRadioPost.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      jRadioPost_actionPerformed(e);

      }

      });

      panURL.setLayout(borderLayout2);

      jButton3.setText("Clear");

      jButton3.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      jButton3_actionPerformed(e);

      }

      });

      jCheckWrap.setSelected(true);

      jCheckWrap.setText("LineWrap");

      jCheckWrap.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      jCheckWrap_actionPerformed(e);

      }

      });

      contentPane.add(jPanel1, "Center");

      contentPane.add(panURL, "North");

      contentPane.add(jPanel2, "South");

      panURL.add(URLTxt, "Center");

      jPanel2.add(new JLabel("线程"));

      jPanel2.add(thread,null);

      jPanel2.add(new JLabel("次数"));

      jPanel2.add(num,null);

      jPanel2.add(new JLabel("延时"));

      jPanel2.add(time,null);

      jPanel2.add(jCheckWrap, null);

      jPanel2.add(jPanel4, null);

      jPanel2.add(jPanel3, null);

      jPanel3.add(jRadioGet, null);

      jPanel3.add(jRadioPost, null);

      jRadioPost.setSelected(true);

      buttonGroup1.add(jRadioGet);

      buttonGroup1.add(jRadioPost);

      jPanel2.add(jButton1, null);

      jPanel2.add(jButton3, null);

      jPanel2.add(jButton2, null);

      jPanel1.add(jSplitPane1, null);

      jSplitPane1.add(jScrollPane1, "top");

      jSplitPane1.add(jScrollPane3, "bottom");

      jScrollPane3.getViewport().add(jTextArea3, null);

      jScrollPane1.getViewport().add(jTextArea1, null);

      jScrollPane2.getViewport().add(jTextArea2, null);

      jSplitPane1.setDividerLocation(100);

      }

      protected void processWindowEvent(WindowEvent e) {

      super.processWindowEvent(e);

      if (e.getID() == 201)

      System.exit(0);

      }

      void jButton1_actionPerformed(ActionEvent e) {

      // String soMethod = String.valueOf(String.valueOf((new StringBuffer("Method: ")).append(method).append(": ")));

      String url = URLTxt.getText();

      String xml = jTextArea1.getText();

      String str=thread.getText();

      int cnt=1;

      if(str==null||str.equals("")){

      cnt=1;

      thread.setText(cnt+"");

      }else{

      cnt=Integer.parseInt(str);

      thread.setText(cnt+"");

      }

      String abc=num.getText();

      int every=1;

      if(abc==null||abc.equals("")){

      every=1;

      num.setText(every+"");

      }else{

      every=Integer.parseInt(abc);

      num.setText(every+"");

      }

      String div=time.getText();

      int divI=0;

      if(div==null||div.equals("")){

      divI=0;

      time.setText(divI+"");

      }else{

      divI=Integer.parseInt(div);

      time.setText(divI+"");

      }

      for(int i=0;i -1)

      sb.append((char) ch);

      rec_string = sb.toString();

      rd.close();

      urlconn.disconnect();

      } catch (Exception e) {

      log = String.valueOf(String.valueOf((new StringBuffer("请求错误:"))

      .append(e.getMessage()).append(e.toString())));

      writeLog(log);

      }

      return rec_string;

      }

      private String getMethod() {

      if (mwindow == null)

      return "GET";

      else

      return mwindow.method;

      }

      private void writeLog(String s) {

      if (mwindow == null)

      System.out.println(s);

      else

      mwindow.showMsg(String.valueOf(String.valueOf(s)).concat(" "));

      }

      public static void main(String args[]) {

      }

      @Override

      public void run() {

      for(int i=0;i screenSize.height)

      frameSize.height = screenSize.height;

      if (frameSize.width > screenSize.width)

      frameSize.width = screenSize.width;

      frame.setLocation((screenSize.width - frameSize.width) / 2,

      (screenSize.height - frameSize.height) / 2);

      frame.setVisible(true);

      }

      public static void main(String args[]) {

      try {

      //

      UIManager.setLookAndFeel(UIManager

      .getCrossPlatformLookAndFeelClassName());

      UIManager

      .setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");

      // SwingUtilities.updateComponentTreeUI(this);

      } catch (Exception e) {

      e.printStackTrace();

      }

      new HttpTest();

      }

      }

  • 相关阅读:
    程序员眼里IE浏览器是什么样的
    iOS UITableView 与 UITableViewController
    iOS 委托与文本输入(内容根据iOS编程编写)
    iOS 视图控制器 (内容根据iOS编程编写)
    iOS 视图:重绘与UIScrollView(内容根据iOS编程编写)
    Python_Day_05 计数器(counter),有序字典(OrderDict),默认字典(defaultdict),可命名元祖(namedtuple),双向队列(deque),单项队列(deuqe.Queue)
    iOS 视图与视图层次结构(内容根据iOS编程)
    Python_Day_04 set方法总结
    iOS通过ARC管理内存(内容根据iOS编程编写)
    Python_Day_03 list,dic,tuple方法总结
  • 原文地址:https://www.cnblogs.com/firecode/p/4161453.html
Copyright © 2011-2022 走看看