@Override public String handleToken(String content) { parameterMappings.add(buildParameterMapping(content)); return "?"; }
private ParameterMapping buildParameterMapping(String content) { Map<String, String> propertiesMap = parseParameterMapping(content); String property = propertiesMap.get("property"); Class<?> propertyType; String value = entry.getValue(); if ("javaType".equals(name)) { javaType = resolveClass(value); builder.javaType(javaType); } else if ("jdbcType".equals(name)) { builder.jdbcType(resolveJdbcType(value)); } else if ("mode".equals(name)) { builder.mode(resolveParameterMode(value)); } else if ("numericScale".equals(name)) { builder.numericScale(Integer.valueOf(value)); builder.typeHandler(resolveTypeHandler(javaType, typeHandlerAlias));
private ParameterMapping buildParameterMapping(String content) { StringTokenizer parameterMappingParts = new StringTokenizer(content, ", \n\r\t"); String propertyWithJdbcType = parameterMappingParts.nextToken(); String property = extractPropertyName(propertyWithJdbcType); String jdbcType = extractJdbcType(propertyWithJdbcType); Class propertyType; MetaClass metaClass = MetaClass.forClass(parameterType); builder.jdbcType(resolveJdbcType(jdbcType)); String value = attributeParts.nextToken(); if ("javaType".equals(name)) { builder.javaType(resolveClass(value)); } else if ("jdbcType".equals(name)) { builder.jdbcType(resolveJdbcType(value)); } else if ("mode".equals(name)) { builder.mode(resolveParameterMode(value)); } else if ("numericScale".equals(name)) { builder.numericScale(Integer.valueOf(value)); builder.resultMapId(value); } else if ("typeHandler".equals(name)) { builder.typeHandler((TypeHandler) resolveInstance(value)); } else if ("jdbcTypeName".equals(name)) { builder.jdbcTypeName(value);
public SqlSource parse(String originalSql, Class parameterType) { ParameterMappingTokenHandler handler = new ParameterMappingTokenHandler(configuration, parameterType); GenericTokenParser parser = new GenericTokenParser("#{", "}", handler); String sql = parser.parse(originalSql); return new StaticSqlSource(configuration, sql, handler.getParameterMappings()); }
public String handleToken(String content) { parameterMappings.add(buildParameterMapping(content)); return "?"; }
private ParameterMapping buildParameterMapping(String content) { Map<String, String> propertiesMap = parseParameterMapping(content); String property = propertiesMap.get("property"); Class<?> propertyType; String value = entry.getValue(); if ("javaType".equals(name)) { javaType = resolveClass(value); builder.javaType(javaType); } else if ("jdbcType".equals(name)) { builder.jdbcType(resolveJdbcType(value)); } else if ("mode".equals(name)) { builder.mode(resolveParameterMode(value)); } else if ("numericScale".equals(name)) { builder.numericScale(Integer.valueOf(value)); builder.typeHandler(resolveTypeHandler(javaType, typeHandlerAlias));
@Override public String handleToken(String content) { parameterMappings.add(buildParameterMapping(content)); return "?"; }
public SqlSource parse(String originalSql, Class<?> parameterType, Map<String, Object> additionalParameters) { ParameterMappingTokenHandler handler = new ParameterMappingTokenHandler(configuration, parameterType, additionalParameters); GenericTokenParser parser = new GenericTokenParser("#{", "}", handler); String sql = parser.parse(originalSql); return new StaticSqlSource(configuration, sql, handler.getParameterMappings()); }
public SqlSource parse(String originalSql, Class<?> parameterType, Map<String, Object> additionalParameters) { ParameterMappingTokenHandler handler = new ParameterMappingTokenHandler(configuration, parameterType, additionalParameters); GenericTokenParser parser = new GenericTokenParser("#{", "}", handler); String sql = parser.parse(originalSql); return new StaticSqlSource(configuration, sql, handler.getParameterMappings()); }