- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 spring 文档中读到 MapSqlParameterSource 只是 Map 的包装器。使用MapSqlParameterSource代替Map有什么优点?
public int countOfActorsByFirstName(String firstName) {
String sql = "select count(*) from T_ACTOR where first_name = :first_name";
SqlParameterSource namedParameters = new MapSqlParameterSource("first_name", firstName);
return this.namedParameterJdbcTemplate.queryForObject(sql, namedParameters, Integer.class);
}
public int countOfActorsByFirstName(String firstName) {
String sql = "select count(*) from T_ACTOR where first_name = :first_name";
Map<String, String> namedParameters = Collections.singletonMap("first_name", firstName);
return this.namedParameterJdbcTemplate.queryForObject(sql, namedParameters, Integer.class);
}
最佳答案
MapSqlParameterSource
只是 LinkedHashMap
的装饰器,如果您检查 MapSqlParameterSource
,您将看到以下内容:
private final Map<String, Object> values = new LinkedHashMap<String, Object>();
使用map或spring提供的实现实际上并没有多大的好处。
如果您深入了解代码,可以使用代码下方的addValue
:
public MapSqlParameterSource addValue(String paramName, Object value) {
Assert.notNull(paramName, "Parameter name must not be null");
this.values.put(paramName, value);
if (value instanceof SqlParameterValue) {
registerSqlType(paramName, ((SqlParameterValue) value).getSqlType());
}
return this;
}
因此,如您所见,addValue
返回相同的对象,您可以使用该对象(如果您愿意)进行流畅的方法调用,例如:
.addValue("a", 1).addValue("b", 2)...
因此,使用Map
或MapSqlParameterSource
只是一个品味问题
关于java - mapsqlparametersource 与 java.util.map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42565862/
我正在尝试使用带有 NamedParameterJdbcTemplate 的映射参数调用存储过程(Spring 3.0),但由于某些奇怪的原因,某些值没有传递给存储过程(Oracle 11.2)! 相
我尝试使用 Spring JdbcTemplate 插入一个简单的基础,将参数查询与 MapSqlParamaterSource 映射,并且将错误视为以下数据: public void adicion
我在 spring 文档中读到 MapSqlParameterSource 只是 Map 的包装器。使用MapSqlParameterSource代替Map有什么优点? public int coun
我想获取 start_date 到 end_date 之间的结果,以便我可以找到我的产品报告。 sql = new StringBuilder() .append(" sele
下面提到的表格: CREATE TABLE TABLE ( ID_DEMAND NUMBER NOT NULL , FILE_BLOB BLOB ) ; ID_DE
我正在尝试在 Spring MVC 4 中使用 order by 子句进行 SQL 查询。但这不起作用。我正在使用 MapSQLParameterSource 类来定义 sql 参数。 Map
我是一名优秀的程序员,十分优秀!