Java MySQL从另一个类更新

时间:2015-01-24 13:20:34

标签: java mysql function

我正在使用Java以及sql library。我正在尝试执行我使用此库从另一个类创建的更新函数。这是我的代码;

主类:

public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
  Player player = (Player)sender;
      if (command.getName().equalsIgnoreCase("testvote")) {
            try {
                this.mysql.updatePlayer(player);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
          return true;
      }
  return false;
  }

这应该可以正常工作,但是 this.mysql.updatePlayer(player); 只有在我向其他类中的代码添加静态时才会起作用:

public void updatePlayer(Player p) throws SQLException{
    String pname = p.getDisplayName().toLowerCase();
    Statement statement = this.db.getConnection().createStatement();
    int tokens = this.getTokens(p);
    if(tokens!=0){
        statement.executeUpdate("UPDATE 'tokens' SET 'tokens'='"+(tokens+1)+"' WHERE  'username'='"+pname+"'");
    }else{
        statement.executeUpdate("INSERT INTO 'tokens' ('username', 'tokens') ('"+pname+"','1');");
    }

}

但是,将静态标记添加到此公共空白将导致此标记中断,因为静态不允许这样做。 如何在不添加静态的情况下从其他类运行此函数?如果这有点模糊,我道歉,但如果您有任何疑问,请询问。

0 个答案:

没有答案