svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.fmap.dal / org.gvsig.fmap.dal.db / org.gvsig.fmap.dal.db.jdbc / src / main / java / org / gvsig / fmap / dal / store / jdbc2 / spi / JDBCSQLBuilderBase.java @ 43020
History | View | Annotate | Download (1.09 KB)
1 | 43020 | jjdelcerro | |
---|---|---|---|
2 | package org.gvsig.fmap.dal.store.jdbc2.spi; |
||
3 | |||
4 | import java.sql.PreparedStatement; |
||
5 | import java.util.ArrayList; |
||
6 | import java.util.List; |
||
7 | import org.gvsig.fmap.dal.feature.spi.FeatureProvider; |
||
8 | import org.gvsig.fmap.dal.feature.spi.SQLBuilderBase; |
||
9 | import org.gvsig.fmap.dal.store.jdbc2.JDBCUtils; |
||
10 | |||
11 | |||
12 | public class JDBCSQLBuilderBase extends SQLBuilderBase { |
||
13 | |||
14 | public JDBCSQLBuilderBase() {
|
||
15 | super();
|
||
16 | } |
||
17 | |||
18 | public void setParameters(PreparedStatement st, FeatureProvider feature) { |
||
19 | try {
|
||
20 | |||
21 | List<Object> values = new ArrayList<>(); |
||
22 | for (Parameter parameter : this.getParameters()) { |
||
23 | if( parameter.is_constant() ) {
|
||
24 | values.add(parameter.getValue()); |
||
25 | } else {
|
||
26 | String name = parameter.getName();
|
||
27 | values.add(feature.get(name)); |
||
28 | } |
||
29 | } |
||
30 | JDBCUtils.setObjects(st, values, this.geometry_support_type());
|
||
31 | } catch (Exception ex) { |
||
32 | throw new RuntimeException("Can't set parameters to prepared statement", ex); |
||
33 | } |
||
34 | } |
||
35 | |||
36 | } |