1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.mapping;
17
18 import java.util.HashMap;
19 import java.util.List;
20 import java.util.Map;
21
22 import org.apache.ibatis.reflection.MetaObject;
23 import org.apache.ibatis.session.Configuration;
24
25
26
27
28
29
30
31
32
33
34
35
36 public class BoundSql {
37
38 private String sql;
39 private List<ParameterMapping> parameterMappings;
40 private Object parameterObject;
41 private Map<String, Object> additionalParameters;
42 private MetaObject metaParameters;
43
44 public BoundSql(Configuration configuration, String sql, List<ParameterMapping> parameterMappings, Object parameterObject) {
45 this.sql = sql;
46 this.parameterMappings = parameterMappings;
47 this.parameterObject = parameterObject;
48 this.additionalParameters = new HashMap<String, Object>();
49 this.metaParameters = configuration.newMetaObject(additionalParameters);
50 }
51
52 public String getSql() {
53 return sql;
54 }
55
56 public List<ParameterMapping> getParameterMappings() {
57 return parameterMappings;
58 }
59
60 public Object getParameterObject() {
61 return parameterObject;
62 }
63
64 public boolean hasAdditionalParameter(String name) {
65 return metaParameters.hasGetter(name);
66 }
67
68 public void setAdditionalParameter(String name, Object value) {
69 metaParameters.setValue(name, value);
70 }
71
72 public Object getAdditionalParameter(String name) {
73 return metaParameters.getValue(name);
74 }
75 }