package tools; //import org.ccalm.main.AcceptASDCController; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Types; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class PreparedStatementNamed { private static final Logger logger = LoggerFactory.getLogger(PreparedStatementNamed.class); private class HMap{ public String name = ""; public int pos = -1; public HMap(String name,int pos) { this.name = name; this.pos = pos; } } private List< HMap > fields = new ArrayList< HMap >(); private PreparedStatement m_prepStmt; public PreparedStatementNamed(Connection conn, String sql) throws SQLException { int cnt=0; int pos = 0; while((pos = sql.indexOf("${")) != -1) { int end = sql.substring(pos).indexOf("}"); if (end == -1) end = sql.length(); else end += pos+1; cnt++; fields.add(new HMap(sql.substring(pos+2,end-1),cnt)); sql = sql.substring(0, pos) + "?" + sql.substring(end); //Removing a parameter from a string } m_prepStmt = conn.prepareStatement(sql); } public void setString(String name, String value) throws SQLException { for(int i=0;i