我正在使用 JDBC 驱动程序,我的问题是将 SQL 查询存储在一个合适的位置。关键是它将进行大量查询。
Statement s = conn.createStatement ();
s.executeUpdate ("DROP TABLE IF EXISTS animal");
s.executeUpdate (
"CREATE TABLE animal ("
+ "id INT UNSIGNED NOT NULL AUTO_INCREMENT,"
+ "PRIMARY KEY (id),"
+ "name CHAR(40), category CHAR(40))");`
改成这个...
Statement s = conn.createStatement ();
s.executeUpdate (StaticVariables.getDropTableAnimalQuery());
s.executeUpdate (StaticVariables.getCreateTableAnimalQuery());`
...并使用静态变量创建特殊类
public class StaticVariables {
private static String dropTableAnimalQuery = "DROP TABLE IF EXISTS animal";
private static String createTableAnimalQuery = "CREATE TABLE animal ("
+ "id INT UNSIGNED NOT NULL AUTO_INCREMENT,"
+ "PRIMARY KEY (id),"
+ "name CHAR(40), category CHAR(40))";
public static String getDropTableAnimalQuery() {
return dropTableAnimalQuery;
}
public static String getCreateTableAnimalQuery() {
return createTableAnimalQuery;
}
}
也许有人有更好的方法来解决这个问题
最佳答案
我讨厌将静态常量放入接口(interface)中的习惯用法,例如您的StaticVariable
示例。
我更喜欢在最大程度使用常量的类中保留常量。如果实现接口(interface)的许多子类需要常量,我将向接口(interface)添加常量,但也会实现一些方法。
关于java - sql查询放在哪里?代码风格。 java 。数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7541990/