我正在使用属性文件来访问Spring App Context的数据库连接,如下所示:
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close" p:driverClass="${app.jdbc.driverClassName}"
p:jdbcUrl="${app.jdbc.url}"
我现在想在我的jsp中引用相同的字符串,我试过这个但没有运气:
<c:out value="${app.jdbc.url}" />
答案 0 :(得分:5)
在Spring 3.x中,您可以执行以下操作:
@Value("#{'${app.jdbc.url}'}")
public void setURL(String url) { ... }
在你的控制器上。然后,您可以为该属性提供getter并从JSP访问它。
另外,我完全错过了你问题的Spring 3.1部分。您可以将环境自动装配到控制器中。然后你可以这样做:
environment.getProperty("app.jdbc.url")
答案 1 :(得分:0)
我这样做了:
@Autowired
private ComboPooledDataSource dataSource;
然后在我的控制器方法中返回视图名称:
model.addAttribute("db", dataSource.getJdbcUrl());
并在jsp中简单地引用如下:
DB connection string is ${db}