【发布时间】:2011-07-07 16:52:41
【问题描述】:
背景
开发一个简单的 Web 应用程序(Eclipse + JBoss + Apache Tomcat)来生成 XML 文件。
问题
“业务领域”列表查询数据库,“列簇”列表使用选定的“业务领域”项查询数据库。这两个都是存储外部文本文件的唯一查询。
文件目前存储在以下位置:
- WebContent/META-INF/business-areas.sql
- WebContent/META-INF/column-clusters.sql
然后将这些用于播种PreparedStatements。
源代码
读取 SQL 代码的方法可能类似于:
private String getSQL() {
String result = "";
try {
BufferedReader br = open( "business-areas.sql" );
String line = null;
while( (line = br.readLine()) != null ) {
result += line;
}
br.close();
}
catch( Exception e ) {
e.printStackTrace();
}
return result;
}
问题
我想知道:
- 存储此类资产以作为 Web 应用程序的一部分进行部署的最佳做法是什么? (也就是说,
META-INF是一个好位置,还是META-INF/resources是首选?) - 您推荐使用哪些 API 来读取文件内容? (即
open方法怎么写才能找到要打开的文件?)
我已经有 JNDI 来建立数据库连接,但如果可能的话,我宁愿不使用 JNDI 来获取文件的句柄。
相关网站
- http://blogs.oracle.com/alexismp/entry/web_inf_lib_jar_meta
- http://www.avajava.com/tutorials/lessons/where-do-i-put-resources-in-my-maven-project.html
- http://docs.jboss.org/jbossweb/3.0.x/config/context.html
- http://tomcat.apache.org/tomcat-4.0-doc/catalina/docs/api/org/apache/naming/resources/FileDirContext.html
谢谢!
【问题讨论】:
标签: java web-applications jsf servlets jboss