From 46515341f68309aa7db8d1b5865e289b09acb31d Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 28 Mar 2023 10:38:48 +0800 Subject: [PATCH] 后台修改 --- /dev/null | 68 ---------------------------------- 1 files changed, 0 insertions(+), 68 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/websocket/Ball.java b/src/main/java/cc/mrbird/febs/websocket/Ball.java deleted file mode 100644 index 2648d36..0000000 --- a/src/main/java/cc/mrbird/febs/websocket/Ball.java +++ /dev/null @@ -1,69 +0,0 @@ -package cc.mrbird.febs.websocket; -import java.awt.Color; -import java.awt.Graphics; -import java.awt.Graphics2D; -import java.awt.RenderingHints; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import javax.swing.JFrame; -import javax.swing.JPanel; -import javax.swing.Timer; - -public class Ball extends JPanel implements ActionListener { - private Timer timer; - private int x, y; - private int size; - - public Ball() { - x = 0; - y = 0; - size = 20; - timer = new Timer(10, this); - timer.start(); - } - - // 重写paintComponent方法,绘制红色的球 - @Override - public void paintComponent(Graphics g) { - super.paintComponent(g); - Graphics2D g2d = (Graphics2D) g; - // 开启抗锯齿 - g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); - // 设置颜色为红色 - g2d.setColor(Color.RED); - // 绘制圆形 - g2d.fillOval(x, y, size, size); - } - - // 重写actionPerformed方法,控制球的大小 - @Override - public void actionPerformed(ActionEvent e) { - // 如果球的大小小于100,则增加大小 - if (size < 100) { - size++; - } else { - // 否则减小大小 - size--; - } - // 重新绘制 - repaint(); - // 控制球的移动 - x++; - if (x > getWidth()) { - x = 0; - } - } - - public static void main(String[] args) { - // 创建窗口 - JFrame frame = new JFrame("Ball"); - // 添加球 - frame.add(new Ball()); - // 设置窗口大小 - frame.setSize(300, 300); - // 显示窗口 - frame.setVisible(true); - // 设置关闭窗口时的操作 - frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - } -} diff --git a/src/main/java/cc/mrbird/febs/websocket/BscWebSocketClient.java b/src/main/java/cc/mrbird/febs/websocket/BscWebSocketClient.java deleted file mode 100644 index 55273df..0000000 --- a/src/main/java/cc/mrbird/febs/websocket/BscWebSocketClient.java +++ /dev/null @@ -1,81 +0,0 @@ -package cc.mrbird.febs.websocket; - -import java.net.URI; -import java.net.URISyntaxException; -import java.util.concurrent.TimeUnit; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import org.java_websocket.client.WebSocketClient; -import org.java_websocket.handshake.ServerHandshake; - -public class BscWebSocketClient extends WebSocketClient { - - public BscWebSocketClient(String url) throws URISyntaxException { - super(new URI(url)); - } - - @Override - public void onOpen(ServerHandshake handshakedata) { - System.out.println("Connected to BSC WebSocket node"); - - // 订阅ERC-20代币转账事件 - subscribeToErc20Transfers("0x55d398326f99059ff775485246999027b3197955"); // USDT合约地址 - } - - @Override - public void onMessage(String message) { - System.out.println("Received message: " + message); - - // 在这里处理收到的区块链事件 - JSONObject jsonObject = new JSONObject(Boolean.parseBoolean(message)); - String method = jsonObject.getString("method"); - if (method.equals("eth_subscription")) { - JSONArray params = jsonObject.getJSONArray("params"); - JSONObject result = params.getJSONObject(0).getJSONObject("result"); - String from = result.getString("from"); - String to = result.getString("to"); - String value = result.getString("value"); - System.out.println("Received USDT transfer from " + from + " to " + to + ", amount: " + value); - } - } - - @Override - public void onClose(int code, String reason, boolean remote) { - System.out.println("Disconnected from BSC WebSocket node"); - } - - @Override - public void onError(Exception ex) { - System.err.println("Error occurred: " + ex.getMessage()); - } - - // 订阅ERC-20代币转账事件 - private void subscribeToErc20Transfers(String contractAddress) { - String message = "{\"id\":1,\"method\":\"eth_subscribe\",\"params\":[\"logs\",{" + - "\"address\":\"" + contractAddress + "\"," + - "\"topics\":[\"0x" + "a9059cbb" + "\",null,null]," + - "\"fromBlock\":\"latest\"" + - "}]}"; - send(message); - System.out.println("Subscribed to ERC-20 transfer events for " + contractAddress); - } - - public static void main(String[] args) throws URISyntaxException, InterruptedException { - String url = "wss://bsc-ws-node.nariox.org:443"; // 更换为您想要连接的节点地址 - BscWebSocketClient client = new BscWebSocketClient(url); - client.connect(); - - // 等待连接成功 - while (!client.isOpen()) { - System.out.println("Connecting to BSC WebSocket node..."); - TimeUnit.SECONDS.sleep(1); - } - - // 连接成功后,继续运行程序 - System.out.println("Connected to BSC WebSocket node, waiting for events..."); - TimeUnit.SECONDS.sleep(60); // 等待60秒,以便收到一些事件 - client.close(); - } - -} diff --git a/src/main/java/cc/mrbird/febs/websocket/BscWebSocketService.java b/src/main/java/cc/mrbird/febs/websocket/BscWebSocketService.java deleted file mode 100644 index afbdfa9..0000000 --- a/src/main/java/cc/mrbird/febs/websocket/BscWebSocketService.java +++ /dev/null @@ -1,68 +0,0 @@ -package cc.mrbird.febs.websocket; -import com.alibaba.fastjson.JSONObject; -import org.java_websocket.client.WebSocketClient; -import org.java_websocket.handshake.ServerHandshake; -import org.springframework.stereotype.Service; - -import java.net.URI; - -@Service -public class BscWebSocketService { - - private final String USDT_CONTRACT_ADDRESS = "0xdac17f958d2ee523a2206206994597c13d831ec7"; // USDT合约地址 - private final String YOUR_ADDRESS = "0x1234567890"; // 您的地址 - - public void subscribeToUsdtTransfers() throws Exception { - URI uri = new URI("wss://bsc-mainnet.nodereal.io/ws/v1/78074065950e4915aef4f12b6f357d16"); // BSC主网节点WebSocket API地址 - WebSocketClient client = new WebSocketClient(uri) { - - @Override - public void onOpen(ServerHandshake handshake) { - JSONObject payload = new JSONObject(); - payload.put("jsonrpc", "2.0"); - payload.put("method", "eth_subscribe"); - payload.put("params", new Object[]{"logs", getFilterParams()}); - send(payload.toString()); - } - - @Override - public void onMessage(String message) { - JSONObject response = new JSONObject(Boolean.parseBoolean(message)); - if (response.containsKey("params")) { - JSONObject result = response.getJSONObject("params").getJSONArray("result").getJSONObject(0); - String transactionHash = result.getString("transactionHash"); - String from = result.getString("address"); - String to = result.getJSONArray("topics").getString(2); - String value = result.getJSONArray("data").getString(0); - // 在这里处理收到的交易信息 - // transactionHash: 交易哈希值 - // from: 发送方地址 - // to: 接收方地址 - // value: 转账数量 - } - } - - @Override - public void onClose(int code, String reason, boolean remote) { - System.out.println("WebSocket连接关闭: " + reason); - } - - @Override - public void onError(Exception ex) { - System.out.println("WebSocket连接出错: " + ex.getMessage()); - } - }; - client.connect(); - } - - private JSONObject getFilterParams() { - JSONObject filterParams = new JSONObject(); - filterParams.put("address", USDT_CONTRACT_ADDRESS); - filterParams.put("topics", new String[]{ - "0xa9059cbb000000000000000000000000" + YOUR_ADDRESS.substring(2), - null, - null - }); - return filterParams; - } -} -- Gitblit v1.9.1