1

我有一个包含许多方法的 DAO,每个方法都包含要执行的 SQL 语句。我不想将 SQL 字符串硬编码到 DAO Java 类中,那么管理这种场景的最佳方法是什么?我正在考虑注射它们,但如何最好地做到这一点?

干杯,马特

4

1 回答 1

2

您可以在应用程序初始化期间注入您的 SQL 语句。

class MyDAO {
   private String someQuery;

   public void setSomeQuery(String someQuery) {
       this.someQuery = someQuery;
   }

}

然后,您可以将 SQL 语句放在 XML 文件中,而不是硬编码。

<bean class="some.package.MyDAO">
    <property name="someQuery">
        <value>
            SELECT * FROM user WHERE id = ?
        </value>
    </property>
</bean>

您甚至可以将 SQL 语句外部化为.properties文件。

看看:http ://www.summa-tech.com/blog/2009/04/20/6-tips-for-managing-property-files-with-spring/

于 2012-11-29T09:13:27.507 回答