gpt4 book ai didi

Java 添加额外的传递变量

转载 作者:行者123 更新时间:2023-11-29 14:36:24 25 4
gpt4 key购买 nike

首先,我应该提到我对 Java 还很陌生。

我正在使用 PircBot 和 JDBC 来创建一个返回一些 MySQL 值的 irc 机器人。我遇到的问题是我想制作准备好的语句来防止 SQL 注入(inject)。但是,因为我无法在方法中添加额外的变量,所以我似乎无法让它工作。

这是我现在的代码:http://pastebin.com/K8zCKt9f

基本上,我想使用准备好的 SQL 语句,但我无法将 Connection conn 传递到 onMessage 方法而不造成困惑(onMessage 不会在 IRC 上触发)。这意味着每次有 if 语句时我都必须创建一个新连接,这与现在使用 MySQL 方法的工作方式相反。

我确信有一种更简单/更干净的方法可以做到这一点,但我似乎无法弄清楚。感谢任何帮助,谢谢!

最佳答案

使用成员变量来存储连接,并在构造Ross对象时构造连接:

public class Ross extends PircBot {

private Connection conn;


public Ross() {

this.setName("RICK_ROSS");
this.setVersion("v1.0");
this.setLogin("not_a_bot");
if (!main.password.equals("")) this.sendMessage(main.loginbot, "auth "+main.username+" "+main.password);

//Set up MySQL-connection
Connection conn = null;
String url = "jdbc:mysql://";
Class.forName ("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection (url,"","");
}
...The rest...

现在您可以在类的其他方法中使用成员变量conn

关于Java 添加额外的传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8947992/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com