Paw*_*wan 5 java static static-methods
我正在研究现有的基于Java EE的应用程序.这具有以下连接数据库的方法:
public static java.sql.Connection connectionToDataBase(String jndiName,boolean flag)throws Exception
{
DataSource ds =(javax.sql.DataSource) initCtx.lookup(jndiName);
return ds.getConnection();
} catch (NamingException ne) {
throw ne;
} finally {
try {
if (initCtx != null)
initCtx.close();
} catch (NamingException ne) {
throw ne;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是使用静态方法连接数据库是否正确?
为什么将函数定义为静态?
这并不是不正确的,也没有任何约定会禁止您从非静态方法调用静态方法。根据定义,非静态方法属于类的实例,而静态方法属于类本身。
拥有静态方法意味着您不需要类的实例来连接到数据库。
要回答您的问题,您可能需要考虑该类封装的内容。您是否只希望该类的实例能够连接到数据库?或者您希望能够在不引用该类实例的情况下连接到数据库?
| 归档时间: |
|
| 查看次数: |
2363 次 |
| 最近记录: |