gpt4 book ai didi

java - 相当于 Java 中的 String.Format()

转载 作者:行者123 更新时间:2023-11-29 09:33:44 25 4
gpt4 key购买 nike

我有这个和平的代码:

String query = "SELECT * FROM utilisateurs WHERE pseudo = '" +  pseudo.getText()+ "' AND password = '" + new String(password.getPassword()) + "'";

我的问题是:没有其他方法可以将这些变量与字符串连接起来吗?

在 C# 中,我将方法 String.Format() 方法用作:

String query = String.Format("SELECT * FROM utilisateurs WHERE pseudo = '{0}' AND password = '{1}'", pseudo.getText(), new String(password.getPassword()));

最佳答案

String.format() 可用于格式化字符串,Javadoc .

public static String format(String format, Object... args)

Returns a formatted string using the specified format string and arguments.

然而,在构建 SQL 查询字符串时,首选方法是使用 PreparedStatement ( Javadoc ):

  • 保护您免受 SQL 注入(inject)攻击
  • 允许数据库缓存您的查询(一次构建查询计划)

使用 PreparedStatement 的代码可能如下所示:

final PreparedStatement pstmt = con.prepareStatement(
"SELECT * FROM utilisateurs WHERE pseudo = ? AND password = ?");
pstmt.setString(1, pseudo.getText());
pstmt.setString(2, new String(password.getPassword()));
final ResultSet rs = pstmt.executeQuery();

关于java - 相当于 Java 中的 String.Format(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16552569/

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