代码之家  ›  专栏  ›  技术社区  ›  bmargulies

SpringJDBC与Derby存储过程

  •  1
  • bmargulies  · 技术社区  · 16 年前

    我制作了以下简单的类:

    public class DerbyMemoryDatabaseDumpDao extends JdbcDaoSupport {
        private SimpleJdbcCall caller;
    
        @PostConstruct
        public void initialize() {
            caller = new SimpleJdbcCall(getDataSource()).withCatalogName("SYSCS_UTIL")
                .withProcedureName("SYSCS_BACKUP_DATABASE");
        }
    
        public void dumpDatabase(String whereTo) {
            SqlParameterSource in = new MapSqlParameterSource().addValue("BACKUPDIR", whereTo);
            caller.execute(in);
    
        }
    }
    

    并且得到了如下的奖励:SpringJDBC3.0.4未能理解这种情况。我看不出怎么只用一个位置?为此,甚至只是将参数硬编码到调用中(尽管我几乎没有触及这个表面)。

    2258 [main] DEBUG org.springframework.jdbc.core.metadata.CallMetaDataProviderFactory  - Using org.springframework.jdbc.core.metadata.DerbyCallMetaDataProvider
    2258 [main] DEBUG org.springframework.jdbc.core.metadata.CallMetaDataProvider  - Retrieving metadata for null/SA/SYSCS_BACKUP_DATABASE
    2862 [main] DEBUG org.springframework.jdbc.datasource.DataSourceUtils  - Returning JDBC Connection to DataSource
    2863 [main] DEBUG org.springframework.jdbc.core.simple.SimpleJdbcCall  - Compiled stored procedure. Call string is [{call SYSCS_UTIL.SYSCS_BACKUP_DATABASE()}]
    2863 [main] DEBUG org.springframework.jdbc.core.simple.SimpleJdbcCall  - SqlCall for procedure [SYSCS_BACKUP_DATABASE] compiled
    2864 [main] DEBUG org.springframework.jdbc.core.metadata.CallMetaDataContext  - Matching [BACKUPDIR] with []
    2864 [main] DEBUG org.springframework.jdbc.core.metadata.CallMetaDataContext  - Found match for []
    2865 [main] DEBUG org.springframework.jdbc.core.simple.SimpleJdbcCall  - The following parameters are used for call {call SYSCS_UTIL.SYSCS_BACKUP_DATABASE()} with: {}
    2866 [main] DEBUG org.springframework.jdbc.core.JdbcTemplate  - Calling stored procedure [{call SYSCS_UTIL.SYSCS_BACKUP_DATABASE()}]
    2866 [main] DEBUG org.springframework.jdbc.datasource.DataSourceUtils  - Fetching JDBC Connection from DataSource
    2866 [main] DEBUG org.springframework.jdbc.datasource.SimpleDriverDataSource  - Creating new JDBC Driver Connection to [jdbc:derby:memory:testdb;create=true]
    
    1 回复  |  直到 16 年前
        1
  •  0
  •   bmargulies    16 年前

    尽管出现了建议添加.withCatalog的错误消息,但解决方案却是.withSchema。

    推荐文章