0

我正在使用 Java Spring 创建一个 REST 接口

我正在尝试从另一个资源 B 的 .get() 函数中访问特定资源 A 的 .get() 函数。(以避免复制粘贴一些 DB-Query 代码)

[RESOURCE-A] --access--> [RESOURCE-B] 然后返回组合结果

这可能吗?如果是这样,怎么做?

我的想法是尝试用我自己的来自 A 的 jdbcTemplate 填充资源 B 的 DataSource,然后调用 .get() 函数......这失败了,因为我无法将 jdbcTemplate 转换为 DataSource ;(

// within ResourceA...

ResourceB rB = new ResourceB();
rB.setDataSource( (DataSource) this.jdbcTemplate );
theResultItem.parentList = (List<ResourceB>) rB.get("country", language);

是否有可能从 SimpleJDBCTemplate 创建数据源?或任何其他方式来交叉访问资源?

4

1 回答 1

0

有时喝点咖啡有助于...

我现在刚刚在第二个资源中插入了一个额外的方法,它可以帮助我注入 jdbcTemplate:

    //within resource B
    public void setSimpleJdbcTemplate(SimpleJdbcTemplate jdbcTemplate) {
     this.jdbcTemplate = jdbcTemplate;
    }

我现在从资源 A 中调用

    //within resource A
    ResourceB rB = new ResourceB();
    rB.setSimpleJdbcTemplate(jdbcTemplate);
    theResultItem.parentElements = (List<ResourceB>) pr.get("country", language);
于 2012-09-19T14:04:33.957 回答