我想为2个数据库创建简单的应用程序 - Oracle和PostgreSQL。有没有办法为所有数据库使用一个Java代码?我试过这个:
public String init()
{
String user_name = null;
try
{
Context ctx = new InitialContext();
if (ctx == null)
throw new Exception("Boom - No Context");
DataSource ds = (DataSource) ctx.lookup("jdbc/DefaultDB");
if (ds != null)
{
Connection conn = ds.getConnection();
if (conn != null)
{
Statement stmt = conn.createStatement();
ResultSet rst = stmt.executeQuery("select id, user_name from user where username = " + user);
if (rst.next())
{
user_name = rst.getString("user_name");
}
conn.close();
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
return user_name;
}
如何使用此代码使用预准备语句?
答案 0 :(得分:0)
这是一个非常广泛的问题,但多数据库兼容性的常用方法有两个:
一些数据库抽象层(Hibernate,Spring JDBC)可以帮助完成很多工作,但是你仍然需要非常了解它们之间的差异和代码。
答案 1 :(得分:0)
您可以通过单个java-Code使用多个数据库,但是 以下方式,
- 需要设置每个数据库的单独连接
醇>
您可以String selectSQL = "select id, user_name from user where username = ?"
PreparedStatement preparedStatement = dbConnection.prepareStatement(selectSQL);
preparedStatement.setString(1, "userName");
ResultSet rs = preparedStatement.executeQuery(selectSQL);
同样使用bower_components
,
var obj = {
foo: 0,
bar: 1
};
Object.observe(obj, function(changes) {
console.log(changes);
});
obj.baz = 2;
// [{name: 'baz', object: <obj>, type: 'add'}]
obj.foo = 'hello';
// [{name: 'foo', object: <obj>, type: 'update', oldValue: 0}]