最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)現(xiàn)消息轟炸的方法 附帶源碼

 更新時(shí)間:2021年04月20日 10:27:48   作者:覅乆  
這篇文章主要介紹了Java實(shí)現(xiàn)消息轟炸的方法 附帶源碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1. 用到的技術(shù)

ArrayList
Robot (java中自動(dòng)控制電腦輸入設(shè)備的封裝類)
swing
awt

先寫個(gè)最簡(jiǎn)單的Demo然后逐漸完善。

2. 使用Robot 自動(dòng)發(fā)送消息(v1.0)

robot.delay(3000); 停止3000毫秒

KeyEvent.VK_W是java封裝好的常量,本質(zhì)上就是就是每一個(gè)按鍵對(duì)應(yīng)一個(gè)id

在這里插入圖片描述

太多了,就截取了一部分。

按鍵事件:(還有鼠標(biāo)按鈕點(diǎn)擊事件,這里我們主要使用了鍵盤點(diǎn)擊事件)
robot.keyPress(KeyEvent.VK_W); 按下W鍵
robot.keyRelease(KeyEvent.VK_W); W鍵彈起

代碼:

import java.awt.*;
import java.awt.event.KeyEvent;

public class TestRobot2 {

    public static void main(String[] args) throws AWTException {
        Robot robot = new Robot();
        robot.delay(3000);

        for (int i = 0; i < 5; i++) {
            robot.keyPress(KeyEvent.VK_W);
            robot.keyRelease(KeyEvent.VK_W);
            robot.keyPress(KeyEvent.VK_O);
            robot.keyRelease(KeyEvent.VK_O);
            robot.keyPress(KeyEvent.VK_A);
            robot.keyRelease(KeyEvent.VK_A);
            robot.keyPress(KeyEvent.VK_I);
            robot.keyRelease(KeyEvent.VK_I);
            robot.keyPress(KeyEvent.VK_N);
            robot.keyRelease(KeyEvent.VK_N);
            robot.keyPress(KeyEvent.VK_I);
            robot.keyRelease(KeyEvent.VK_I);
            robot.delay(100);
            robot.keyPress(KeyEvent.VK_SPACE);
            robot.keyRelease(KeyEvent.VK_SPACE);
            robot.delay(100);
            robot.keyPress(KeyEvent.VK_ENTER);
            robot.keyRelease(KeyEvent.VK_ENTER);
        }

    }
}

使用for循環(huán)可以反復(fù)發(fā)送該消息。
(注意:如果循環(huán)使用了死循環(huán),一定要在robot中添加延時(shí)函數(shù),否則發(fā)送消息的QQ會(huì)卡死,親測(cè))

效果:

在這里插入圖片描述

3. 記錄用戶操作(v2.0)

染過(guò)要實(shí)現(xiàn)自動(dòng)發(fā)消息,不可能讓用戶像上一步一樣去直接與代碼打交道,并且對(duì)于我們來(lái)說(shuō),如果每次都像上一步那樣,既費(fèi)時(shí)又費(fèi)力,那么可不可以用一個(gè)相對(duì)來(lái)說(shuō)比較簡(jiǎn)便的方法呢,它來(lái)了。

我們應(yīng)該知道,java中每個(gè)按鍵對(duì)應(yīng)了一個(gè)id,那是不是就可以將這些id存儲(chǔ)起來(lái),在使用的時(shí)候調(diào)用它呢

這里我們先存儲(chǔ)用戶的操作信息,還原是下一步

實(shí)現(xiàn)方法:
使用ArrayList動(dòng)態(tài)數(shù)組,存儲(chǔ)用戶操作信息

還可以使用switch語(yǔ)句,給用戶提示信息:
先上一部分代碼:

 ArrayList<KeyValue> list = new ArrayList<KeyValue>();//用于存儲(chǔ)用戶操作的動(dòng)態(tài)數(shù)組

    int n = 0;//自定義一個(gè)變量,用于存儲(chǔ)式第幾次,和下面的 addList方法搭配使用

    //這個(gè)方法用于向數(shù)組匯總存儲(chǔ)用戶的操作信息
    public void addList(int Key, String name) {
        //自定義了一個(gè)對(duì)象,KeyValue,里面有Key和Value兩個(gè)自定義值
        list.add(new KeyValue(++n, Key, name));
    }

自定義的KeyValue對(duì)象:

class KeyValue {
    public int Num;//存儲(chǔ)是第幾次按下的
    public int Key;//存儲(chǔ)按鍵對(duì)應(yīng)的KeyCode
    public String Value;//存儲(chǔ)按鍵的信息,主要用于給用戶提示

    public KeyValue(int num, int key, String value) {
        Key = key;
        Num = num;
        Value = value;
    }
}

先看看效果:

在這里插入圖片描述

上代碼:

package GUI.Demo0418;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;


//嘗試寫個(gè)記錄按鍵記錄的demo
public class Test {
    public static void main(String[] args) throws AWTException {
        new MyFrame();
    }
}

class MyFrame extends Frame {

    ArrayList<KeyValue> list = new ArrayList<KeyValue>();//用于存儲(chǔ)用戶操作的動(dòng)態(tài)數(shù)組

    int n = 0;//自定義一個(gè)變量,用于存儲(chǔ)式第幾次,和下面的 addList方法搭配使用

    //這個(gè)方法用于向數(shù)組匯總存儲(chǔ)用戶的操作信息
    public void addList(int Key, String name) {
        //自定義了一個(gè)對(duì)象,KeyValue,里面有Key和Value兩個(gè)自定義值
        list.add(new KeyValue(++n, Key, name));
    }


    public MyFrame() throws AWTException {
        super("記錄用戶的按鍵操作");

        JButton button3 = new JButton("查看記錄信息");

        button3.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                for (KeyValue ky : list) {
                    System.out.println("第" + ky.Num + "次" + ky.Key + " " + ky.Value);
                }
            }
        });


        addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.out.println("窗口正在關(guān)閉");
                System.exit(0);
            }
        });

        setLayout(new FlowLayout(FlowLayout.LEADING));

        addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent e) {
                int keyCode = e.getKeyCode();
                switch (keyCode) {
                    case KeyEvent.VK_A:
                        System.out.println("你點(diǎn)擊了 A 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "A");
                        break;
                    case KeyEvent.VK_B:
                        System.out.println("你點(diǎn)擊了 B 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "B");
                        break;
                    case KeyEvent.VK_C:
                        System.out.println("你點(diǎn)擊了 C 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "C");
                        break;
                    case KeyEvent.VK_D:
                        System.out.println("你點(diǎn)擊了 D 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "D");
                        break;
                    case KeyEvent.VK_E:
                        System.out.println("你點(diǎn)擊了 E 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "E");
                        break;
                    case KeyEvent.VK_F:
                        System.out.println("你點(diǎn)擊了 F 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "F");
                        break;
                    case KeyEvent.VK_G:
                        System.out.println("你點(diǎn)擊了 G 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "G");
                        break;
                    case KeyEvent.VK_H:
                        System.out.println("你點(diǎn)擊了 H 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "H");
                        break;
                    case KeyEvent.VK_I:
                        System.out.println("你點(diǎn)擊了 I 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "I");
                        break;
                    case KeyEvent.VK_J:
                        System.out.println("你點(diǎn)擊了 J 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "J");
                        break;
                    case KeyEvent.VK_K:
                        System.out.println("你點(diǎn)擊了 K 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "K");
                        break;
                    case KeyEvent.VK_L:
                        System.out.println("你點(diǎn)擊了 L 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "L");
                        break;
                    case KeyEvent.VK_M:
                        System.out.println("你點(diǎn)擊了 M 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "M");
                        break;
                    case KeyEvent.VK_N:
                        System.out.println("你點(diǎn)擊了 N 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "N");
                        break;
                    case KeyEvent.VK_O:
                        System.out.println("你點(diǎn)擊了 O 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "O");
                        break;
                    case KeyEvent.VK_P:
                        System.out.println("你點(diǎn)擊了 P 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "P");
                        break;
                    case KeyEvent.VK_Q:
                        System.out.println("你點(diǎn)擊了 Q 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "Q");
                        break;
                    case KeyEvent.VK_R:
                        System.out.println("你點(diǎn)擊了 R 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "R");
                        break;
                    case KeyEvent.VK_S:
                        System.out.println("你點(diǎn)擊了 S 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "S");
                        break;
                    case KeyEvent.VK_T:
                        System.out.println("你點(diǎn)擊了 T 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "T");
                        break;
                    case KeyEvent.VK_U:
                        System.out.println("你點(diǎn)擊了 U 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "U");
                        break;
                    case KeyEvent.VK_V:
                        System.out.println("你點(diǎn)擊了 V 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "V");
                        break;
                    case KeyEvent.VK_W:
                        System.out.println("你點(diǎn)擊了 W 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "W");
                        break;
                    case KeyEvent.VK_X:
                        System.out.println("你點(diǎn)擊了 X 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "X");
                        break;
                    case KeyEvent.VK_Y:
                        System.out.println("你點(diǎn)擊了 Y 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "Y");
                        break;
                    case KeyEvent.VK_Z:
                        System.out.println("你點(diǎn)擊了 Z 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "Z");
                        break;
                    case KeyEvent.VK_SPACE:
                        System.out.println("你點(diǎn)擊了 空格 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "空格");
                        break;
                    case KeyEvent.VK_ENTER:
                        System.out.println("你點(diǎn)擊了 ENTER 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "回車");
                        break;
                    default:
                        System.out.println("該按鍵沒(méi)有收錄");
                }
            }
        });

        add(button3);
        setBounds(100, 100, 500, 500);
        setVisible(true);
        setResizable(false);
        setAlwaysOnTop(true);
    }
}

class KeyValue {
    public int Num;
    public int Key;
    public String Value;

    public KeyValue(int num, int key, String value) {
        Key = key;
        Num = num;
        Value = value;
    }

}

4. 還原操作(v3.0)

簡(jiǎn)單的說(shuō)就是遍歷上一步存儲(chǔ)的用戶操作信息,再加上幾個(gè)按鈕,用來(lái)控制何時(shí)進(jìn)行還原,和還原的次數(shù)。
直接上代碼:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;


//嘗試寫個(gè)記錄按鍵記錄的demo
public class Test {
    public static void main(String[] args) throws AWTException {
        new MyFrame();
    }
}

class MyFrame extends Frame {

    ArrayList<KeyValue> list = new ArrayList<KeyValue>();//用于存儲(chǔ)用戶操作的動(dòng)態(tài)數(shù)組
    Robot robot = new Robot();

    //下拉框,用于獲取用戶想要發(fā)送幾次這個(gè)消息
    String[] num = {"1", "2", "3", "4", "5", "6", "10", "死"};
    JComboBox jComboBox = new JComboBox(num);

    int n = 0;//自定義一個(gè)變量,用于存儲(chǔ)式第幾次,和下面的 addList方法搭配使用

    //這個(gè)方法用于向數(shù)組匯總存儲(chǔ)用戶的操作信息
    public void addList(int Key, String name) {
        //自定義了一個(gè)對(duì)象,KeyValue,里面有Key和Value兩個(gè)自定義值
        list.add(new KeyValue(++n, Key, name));
    }


    public MyFrame() throws AWTException {
        super("記錄用戶的按鍵操作");
        JButton button1 = new JButton("清空");
        JButton button2 = new JButton("開(kāi)始");
        JButton button3 = new JButton("查看記錄信息");

        button1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                list = null;
            }
        });
        button2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                robot.delay(3000);
                System.out.println(jComboBox.getSelectedItem());

                if (jComboBox.getSelectedItem().equals("死")) {
                    while (true) {
                        for (KeyValue ky : list) {
                            robot.keyPress(ky.Key);
                            robot.keyRelease(ky.Key);
                            robot.delay(10);
                        }
                    }
                } else {
                    int time = Integer.parseInt((String) jComboBox.getSelectedItem());
                    for (int i = 0; i < time; i++) {
                        for (KeyValue ky : list) {
                            robot.keyPress(ky.Key);
                            robot.keyRelease(ky.Key);
                            robot.delay(100);
                        }
                    }
                }

            }
        });
        button3.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                for (KeyValue ky : list) {
                    System.out.println("第" + ky.Num + "次" + ky.Key + " " + ky.Value);
                }
            }
        });


        addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.out.println("窗口正在關(guān)閉");
                System.exit(0);
            }
        });

        setLayout(new FlowLayout(FlowLayout.LEADING));

        addKeyListener(new KeyAdapter() {
            @Override
            public void keyPressed(KeyEvent e) {
                int keyCode = e.getKeyCode();
                switch (keyCode) {
                    case KeyEvent.VK_A:
                        System.out.println("你點(diǎn)擊了 A 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "A");
                        break;
                    case KeyEvent.VK_B:
                        System.out.println("你點(diǎn)擊了 B 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "B");
                        break;
                    case KeyEvent.VK_C:
                        System.out.println("你點(diǎn)擊了 C 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "C");
                        break;
                    case KeyEvent.VK_D:
                        System.out.println("你點(diǎn)擊了 D 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "D");
                        break;
                    case KeyEvent.VK_E:
                        System.out.println("你點(diǎn)擊了 E 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "E");
                        break;
                    case KeyEvent.VK_F:
                        System.out.println("你點(diǎn)擊了 F 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "F");
                        break;
                    case KeyEvent.VK_G:
                        System.out.println("你點(diǎn)擊了 G 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "G");
                        break;
                    case KeyEvent.VK_H:
                        System.out.println("你點(diǎn)擊了 H 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "H");
                        break;
                    case KeyEvent.VK_I:
                        System.out.println("你點(diǎn)擊了 I 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "I");
                        break;
                    case KeyEvent.VK_J:
                        System.out.println("你點(diǎn)擊了 J 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "J");
                        break;
                    case KeyEvent.VK_K:
                        System.out.println("你點(diǎn)擊了 K 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "K");
                        break;
                    case KeyEvent.VK_L:
                        System.out.println("你點(diǎn)擊了 L 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "L");
                        break;
                    case KeyEvent.VK_M:
                        System.out.println("你點(diǎn)擊了 M 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "M");
                        break;
                    case KeyEvent.VK_N:
                        System.out.println("你點(diǎn)擊了 N 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "N");
                        break;
                    case KeyEvent.VK_O:
                        System.out.println("你點(diǎn)擊了 O 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "O");
                        break;
                    case KeyEvent.VK_P:
                        System.out.println("你點(diǎn)擊了 P 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "P");
                        break;
                    case KeyEvent.VK_Q:
                        System.out.println("你點(diǎn)擊了 Q 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "Q");
                        break;
                    case KeyEvent.VK_R:
                        System.out.println("你點(diǎn)擊了 R 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "R");
                        break;
                    case KeyEvent.VK_S:
                        System.out.println("你點(diǎn)擊了 S 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "S");
                        break;
                    case KeyEvent.VK_T:
                        System.out.println("你點(diǎn)擊了 T 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "T");
                        break;
                    case KeyEvent.VK_U:
                        System.out.println("你點(diǎn)擊了 U 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "U");
                        break;
                    case KeyEvent.VK_V:
                        System.out.println("你點(diǎn)擊了 V 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "V");
                        break;
                    case KeyEvent.VK_W:
                        System.out.println("你點(diǎn)擊了 W 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "W");
                        break;
                    case KeyEvent.VK_X:
                        System.out.println("你點(diǎn)擊了 X 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "X");
                        break;
                    case KeyEvent.VK_Y:
                        System.out.println("你點(diǎn)擊了 Y 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "Y");
                        break;
                    case KeyEvent.VK_Z:
                        System.out.println("你點(diǎn)擊了 Z 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "Z");
                        break;
                    case KeyEvent.VK_SPACE:
                        System.out.println("你點(diǎn)擊了 空格 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "空格");
                        break;
                    case KeyEvent.VK_ENTER:
                        System.out.println("你點(diǎn)擊了 ENTER 鍵,這個(gè)按鍵的ID為:" + keyCode);
                        addList(keyCode, "回車");
                        break;
                    default:
                        System.out.println("該按鍵沒(méi)有收錄");
                }
            }
        });

        add(button1);
        add(jComboBox);
        add(button2);
        add(button3);
        setBounds(100, 100, 500, 500);
        setVisible(true);
        setResizable(false);
        setAlwaysOnTop(true);
    }

}


class KeyValue {
    public int Num;
    public int Key;
    public String Value;

    public KeyValue(int num, int key, String value) {
        Key = key;
        Num = num;
        Value = value;
    }
}

效果:

在這里插入圖片描述

5. 總結(jié)

昨天晚上突然跳出的想法,花了點(diǎn)時(shí)間實(shí)現(xiàn)了,雖然界面不太美觀,但是想要的功能都實(shí)現(xiàn)了,感覺(jué)代碼冗余有點(diǎn)多。??赡軙?huì)有梗簡(jiǎn)潔的代碼吧(時(shí)間緊,博客寫的有點(diǎn)匆忙)

到此這篇關(guān)于Java實(shí)現(xiàn)消息轟炸 附帶源碼的文章就介紹到這了,更多相關(guān)java消息轟炸內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java中timer的schedule和scheduleAtFixedRate方法區(qū)別詳解

    java中timer的schedule和scheduleAtFixedRate方法區(qū)別詳解

    這篇文章主要為大家詳細(xì)介紹了java中timer的schedule和scheduleAtFixedRate方法區(qū)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • 詳解Java Bellman-Ford算法原理及實(shí)現(xiàn)

    詳解Java Bellman-Ford算法原理及實(shí)現(xiàn)

    Bellman-Ford算法與Dijkstra算法類似,都是以松弛操作作為基礎(chǔ),Bellman-Ford算法是對(duì)所有邊都進(jìn)行松弛操作,本文將詳解Bellman-Ford算法原理及實(shí)現(xiàn),感興趣的可以了解一下
    2022-07-07
  • 六個(gè)Java集合使用時(shí)需要注意的事項(xiàng)

    六個(gè)Java集合使用時(shí)需要注意的事項(xiàng)

    這篇文章主要為大家詳細(xì)介紹了六個(gè)Java集合使用時(shí)需要注意的事項(xiàng),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)java有一定的幫助,需要的可以參考一下
    2023-01-01
  • SpringMVC工作原理實(shí)例詳解

    SpringMVC工作原理實(shí)例詳解

    這篇文章主要介紹了SpringMVC工作原理實(shí)例詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 詳解Java文件下載的幾種實(shí)現(xiàn)方式

    詳解Java文件下載的幾種實(shí)現(xiàn)方式

    這篇文章主要介紹了詳解Java文件下載的幾種實(shí)現(xiàn)方式,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-12-12
  • 全面理解Java類和對(duì)象

    全面理解Java類和對(duì)象

    下面小編就為大家?guī)?lái)一篇全面理解Java類和對(duì)象。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • java 實(shí)現(xiàn)漢諾塔詳解及實(shí)現(xiàn)代碼

    java 實(shí)現(xiàn)漢諾塔詳解及實(shí)現(xiàn)代碼

    這篇文章主要介紹了java 實(shí)現(xiàn)漢諾塔詳解及實(shí)現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • Springboot教程之如何設(shè)置springboot熱重啟

    Springboot教程之如何設(shè)置springboot熱重啟

    這篇文章主要介紹了Springboot教程之如何設(shè)置springboot熱重啟,本文通過(guò)實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • java實(shí)現(xiàn)學(xué)籍管理系統(tǒng)

    java實(shí)現(xiàn)學(xué)籍管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)學(xué)籍管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Eureka源碼閱讀Client啟動(dòng)入口注冊(cè)續(xù)約及定時(shí)任務(wù)

    Eureka源碼閱讀Client啟動(dòng)入口注冊(cè)續(xù)約及定時(shí)任務(wù)

    這篇文章主要為大家介紹了Eureka源碼閱讀Client啟動(dòng)入口注冊(cè)續(xù)約及定時(shí)任務(wù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10

最新評(píng)論

德兴市| 红安县| 依兰县| 三穗县| 克拉玛依市| 衢州市| 枞阳县| 塔河县| 凌源市| 娄烦县| 紫云| 屯门区| 蓝田县| 汉源县| 揭阳市| 衡阳市| 江都市| 三明市| 天气| 南江县| 郑州市| 虞城县| 东兰县| 呈贡县| 嵩明县| 依安县| 延川县| 莱西市| 阿勒泰市| 丘北县| 绵阳市| 靖安县| 乾安县| 潼关县| 上饶县| 泾源县| 漳平市| 义乌市| 吉木萨尔县| 雷州市| 贺兰县|