org.apache.ibatis.scripting.xmltags.DynamicSqlSource Java Examples
The following examples show how to use
org.apache.ibatis.scripting.xmltags.DynamicSqlSource.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: DynamicSqlSourceTest.java From mybaties with Apache License 2.0 | 6 votes |
@Test public void shouldPerformStrictMatchOnForEachVariableSubstitution() throws Exception { final Map<String, Object> param = new HashMap<String, Object>(); final Map<String, String> uuu = new HashMap<String, String>(); uuu.put("u", "xyz"); List<Bean> uuuu = new ArrayList<Bean>(); uuuu.add(new Bean("bean id")); param.put("uuu", uuu); param.put("uuuu", uuuu); DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("INSERT INTO BLOG (ID, NAME, NOTE, COMMENT) VALUES"), new ForEachSqlNode(new Configuration(),mixedContents( new TextSqlNode("#{uuu.u}, #{u.id}, #{ u,typeHandler=org.apache.ibatis.type.StringTypeHandler}," + " #{u:VARCHAR,typeHandler=org.apache.ibatis.type.StringTypeHandler}")), "uuuu", "uu", "u", "(", ")", ",")); BoundSql boundSql = source.getBoundSql(param); assertEquals(4, boundSql.getParameterMappings().size()); assertEquals("uuu.u", boundSql.getParameterMappings().get(0).getProperty()); assertEquals("__frch_u_0.id", boundSql.getParameterMappings().get(1).getProperty()); assertEquals("__frch_u_0", boundSql.getParameterMappings().get(2).getProperty()); assertEquals("__frch_u_0", boundSql.getParameterMappings().get(3).getProperty()); }
Example #2
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 6 votes |
@Test public void shouldPerformStrictMatchOnForEachVariableSubstitution() throws Exception { final Map<String, Object> param = new HashMap<String, Object>(); final Map<String, String> uuu = new HashMap<String, String>(); uuu.put("u", "xyz"); List<Bean> uuuu = new ArrayList<Bean>(); uuuu.add(new Bean("bean id")); param.put("uuu", uuu); param.put("uuuu", uuuu); DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("INSERT INTO BLOG (ID, NAME, NOTE, COMMENT) VALUES"), new ForEachSqlNode(new Configuration(),mixedContents( new TextSqlNode("#{uuu.u}, #{u.id}, #{ u,typeHandler=org.apache.ibatis.type.StringTypeHandler}," + " #{u:VARCHAR,typeHandler=org.apache.ibatis.type.StringTypeHandler}")), "uuuu", "uu", "u", "(", ")", ",")); BoundSql boundSql = source.getBoundSql(param); assertEquals(4, boundSql.getParameterMappings().size()); assertEquals("uuu.u", boundSql.getParameterMappings().get(0).getProperty()); assertEquals("__frch_u_0.id", boundSql.getParameterMappings().get(1).getProperty()); assertEquals("__frch_u_0", boundSql.getParameterMappings().get(2).getProperty()); assertEquals("__frch_u_0", boundSql.getParameterMappings().get(3).getProperty()); }
Example #3
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 6 votes |
@Test public void shouldIterateOnceForEachItemInCollection() throws Exception { final HashMap<String, String[]> parameterObject = new HashMap<String, String[]>() {{ put("array", new String[]{"one", "two", "three"}); }}; final String expected = "SELECT * FROM BLOG WHERE ID in ( one = ? AND two = ? AND three = ? )"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG WHERE ID in"), new ForEachSqlNode(new Configuration(),mixedContents(new TextSqlNode("${item} = #{item}")), "array", "index", "item", "(", ")", "AND")); BoundSql boundSql = source.getBoundSql(parameterObject); assertEquals(expected, boundSql.getSql()); assertEquals(3, boundSql.getParameterMappings().size()); assertEquals("__frch_item_0", boundSql.getParameterMappings().get(0).getProperty()); assertEquals("__frch_item_1", boundSql.getParameterMappings().get(1).getProperty()); assertEquals("__frch_item_2", boundSql.getParameterMappings().get(2).getProperty()); }
Example #4
Source File: DynamicSqlSourceTest.java From mybaties with Apache License 2.0 | 6 votes |
@Test public void shouldIterateOnceForEachItemInCollection() throws Exception { final HashMap<String, String[]> parameterObject = new HashMap<String, String[]>() {{ put("array", new String[]{"one", "two", "three"}); }}; final String expected = "SELECT * FROM BLOG WHERE ID in ( one = ? AND two = ? AND three = ? )"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG WHERE ID in"), new ForEachSqlNode(new Configuration(),mixedContents(new TextSqlNode("${item} = #{item}")), "array", "index", "item", "(", ")", "AND")); BoundSql boundSql = source.getBoundSql(parameterObject); assertEquals(expected, boundSql.getSql()); assertEquals(3, boundSql.getParameterMappings().size()); assertEquals("__frch_item_0", boundSql.getParameterMappings().get(0).getProperty()); assertEquals("__frch_item_1", boundSql.getParameterMappings().get(1).getProperty()); assertEquals("__frch_item_2", boundSql.getParameterMappings().get(2).getProperty()); }
Example #5
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREORWithLFForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE \n ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" or\n ID = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #6
Source File: ExecutorTestHelper.java From mybaties with Apache License 2.0 | 5 votes |
public static MappedStatement prepareInsertAuthorMappedStatementWithBeforeAutoKey(final Configuration config) { final TypeHandlerRegistry registry = config.getTypeHandlerRegistry(); final ResultMap rm = new ResultMap.Builder(config, "keyResultMap", Integer.class, new ArrayList<ResultMapping>()) .build(); MappedStatement kms = new MappedStatement.Builder(config, "insertAuthor!selectKey", new StaticSqlSource(config,"SELECT 123456 as id FROM SYSIBM.SYSDUMMY1"), SqlCommandType.SELECT) .keyProperty("id") .resultMaps(new ArrayList<ResultMap>() { { add(rm); } }) .build(); config.addMappedStatement(kms); MappedStatement ms = new MappedStatement.Builder(config, "insertAuthor", new DynamicSqlSource(config, new TextSqlNode("INSERT INTO author (id,username,password,email,bio,favourite_section) values(#{id},#{username},#{password},#{email},#{bio:VARCHAR},#{favouriteSection})")), SqlCommandType.INSERT) .parameterMap( new ParameterMap.Builder(config, "defaultParameterMap", Author.class, new ArrayList<ParameterMapping>() { { add(new ParameterMapping.Builder(config, "id", registry.getTypeHandler(Integer.class)).build()); add(new ParameterMapping.Builder(config, "username", registry.getTypeHandler(String.class)).build()); add(new ParameterMapping.Builder(config, "password", registry.getTypeHandler(String.class)).build()); add(new ParameterMapping.Builder(config, "email", registry.getTypeHandler(String.class)).build()); add(new ParameterMapping.Builder(config, "bio", registry.getTypeHandler(String.class)).jdbcType(JdbcType.VARCHAR).build()); add(new ParameterMapping.Builder(config, "favouriteSection", registry.getTypeHandler(Section.class)).jdbcType(JdbcType.VARCHAR).build()); } }).build()) .cache(authorCache) .keyGenerator(new SelectKeyGenerator(kms, true)) .keyProperty("id") .build(); return ms; }
Example #7
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldDemonstrateSimpleExpectedTextWithNoLoopsOrConditionals() throws Exception { final String expected = "SELECT * FROM BLOG"; final MixedSqlNode sqlNode = mixedContents(new TextSqlNode(expected)); DynamicSqlSource source = createDynamicSqlSource(sqlNode); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #8
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldDemonstrateMultipartExpectedTextWithNoLoopsOrConditionals() throws Exception { final String expected = "SELECT * FROM BLOG WHERE ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new TextSqlNode("WHERE ID = ?")); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #9
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldConditionallyIncludeWhere() throws Exception { final String expected = "SELECT * FROM BLOG WHERE ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new IfSqlNode(mixedContents(new TextSqlNode("WHERE ID = ?")), "true" )); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #10
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldConditionallyExcludeWhere() throws Exception { final String expected = "SELECT * FROM BLOG"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new IfSqlNode(mixedContents(new TextSqlNode("WHERE ID = ?")), "false" )); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #11
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldConditionallyDefault() throws Exception { final String expected = "SELECT * FROM BLOG WHERE CATEGORY = 'DEFAULT'"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new ChooseSqlNode(new ArrayList<SqlNode>() {{ add(new IfSqlNode(mixedContents(new TextSqlNode("WHERE CATEGORY = ?")), "false" )); add(new IfSqlNode(mixedContents(new TextSqlNode("WHERE CATEGORY = 'NONE'")), "false" )); }}, mixedContents(new TextSqlNode("WHERE CATEGORY = 'DEFAULT'")))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #12
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldConditionallyChooseFirst() throws Exception { final String expected = "SELECT * FROM BLOG WHERE CATEGORY = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new ChooseSqlNode(new ArrayList<SqlNode>() {{ add(new IfSqlNode(mixedContents(new TextSqlNode("WHERE CATEGORY = ?")), "true" )); add(new IfSqlNode(mixedContents(new TextSqlNode("WHERE CATEGORY = 'NONE'")), "false" )); }}, mixedContents(new TextSqlNode("WHERE CATEGORY = 'DEFAULT'")))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #13
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldConditionallyChooseSecond() throws Exception { final String expected = "SELECT * FROM BLOG WHERE CATEGORY = 'NONE'"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new ChooseSqlNode(new ArrayList<SqlNode>() {{ add(new IfSqlNode(mixedContents(new TextSqlNode("WHERE CATEGORY = ?")), "false" )); add(new IfSqlNode(mixedContents(new TextSqlNode("WHERE CATEGORY = 'NONE'")), "true" )); }}, mixedContents(new TextSqlNode("WHERE CATEGORY = 'DEFAULT'")))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #14
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREInsteadOfANDForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and ID = ? ")), "true" ), new IfSqlNode(mixedContents(new TextSqlNode(" or NAME = ? ")), "false" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #15
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREANDWithLFForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE \n ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and\n ID = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #16
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREANDWithCRLFForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE \r\n ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and\r\n ID = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #17
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREANDWithTABForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE \t ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and\t ID = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #18
Source File: DynamicSqlSourceTest.java From mybaties with Apache License 2.0 | 5 votes |
@Test public void shouldMapNullStringsToEmptyStrings() { final String expected = "id=${id}"; final MixedSqlNode sqlNode = mixedContents(new TextSqlNode(expected)); final DynamicSqlSource source = new DynamicSqlSource(new Configuration(), sqlNode); String sql = source.getBoundSql(new Bean(null)).getSql(); Assert.assertEquals("id=", sql); }
Example #19
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREORWithCRLFForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE \r\n ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" or\r\n ID = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #20
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREORWithTABForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE \t ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" or\t ID = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #21
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREInsteadOfORForSecondCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE NAME = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and ID = ? ")), "false" ), new IfSqlNode(mixedContents(new TextSqlNode(" or NAME = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #22
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREInsteadOfANDForBothConditions() throws Exception { final String expected = "SELECT * FROM BLOG WHERE ID = ? OR NAME = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and ID = ? ")), "true" ), new IfSqlNode(mixedContents(new TextSqlNode("OR NAME = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #23
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimNoWhereClause() throws Exception { final String expected = "SELECT * FROM BLOG"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and ID = ? ")), "false" ), new IfSqlNode(mixedContents(new TextSqlNode("OR NAME = ? ")), "false" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #24
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimSETInsteadOfCOMMAForBothConditions() throws Exception { final String expected = "UPDATE BLOG SET ID = ?, NAME = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("UPDATE BLOG"), new SetSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" ID = ?, ")), "true" ), new IfSqlNode(mixedContents(new TextSqlNode(" NAME = ?, ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #25
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldTrimNoSetClause() throws Exception { final String expected = "UPDATE BLOG"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("UPDATE BLOG"), new SetSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" , ID = ? ")), "false" ), new IfSqlNode(mixedContents(new TextSqlNode(", NAME = ? ")), "false" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }
Example #26
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldSkipForEachWhenCollectionIsEmpty() throws Exception { final HashMap<String, Integer[]> parameterObject = new HashMap<String, Integer[]>() {{ put("array", new Integer[] {}); }}; final String expected = "SELECT * FROM BLOG"; DynamicSqlSource source = createDynamicSqlSource(new TextSqlNode("SELECT * FROM BLOG"), new ForEachSqlNode(new Configuration(), mixedContents( new TextSqlNode("#{item}")), "array", null, "item", "WHERE id in (", ")", ",")); BoundSql boundSql = source.getBoundSql(parameterObject); assertEquals(expected, boundSql.getSql()); assertEquals(0, boundSql.getParameterMappings().size()); }
Example #27
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
private DynamicSqlSource createDynamicSqlSource(SqlNode... contents) throws IOException, SQLException { createBlogDataSource(); final String resource = "org/apache/ibatis/builder/MapperConfig.xml"; final Reader reader = Resources.getResourceAsReader(resource); SqlSessionFactory sqlMapper = new SqlSessionFactoryBuilder().build(reader); Configuration configuration = sqlMapper.getConfiguration(); MixedSqlNode sqlNode = mixedContents(contents); return new DynamicSqlSource(configuration, sqlNode); }
Example #28
Source File: DynamicSqlSourceTest.java From mybatis with Apache License 2.0 | 5 votes |
@Test public void shouldMapNullStringsToEmptyStrings() { final String expected = "id=${id}"; final MixedSqlNode sqlNode = mixedContents(new TextSqlNode(expected)); final DynamicSqlSource source = new DynamicSqlSource(new Configuration(), sqlNode); String sql = source.getBoundSql(new Bean(null)).getSql(); Assert.assertEquals("id=", sql); }
Example #29
Source File: ExecutorTestHelper.java From mybatis with Apache License 2.0 | 5 votes |
public static MappedStatement prepareInsertAuthorMappedStatementWithBeforeAutoKey(final Configuration config) { final TypeHandlerRegistry registry = config.getTypeHandlerRegistry(); final ResultMap rm = new ResultMap.Builder(config, "keyResultMap", Integer.class, new ArrayList<ResultMapping>()) .build(); MappedStatement kms = new MappedStatement.Builder(config, "insertAuthor!selectKey", new StaticSqlSource(config,"SELECT 123456 as id FROM SYSIBM.SYSDUMMY1"), SqlCommandType.SELECT) .keyProperty("id") .resultMaps(new ArrayList<ResultMap>() { { add(rm); } }) .build(); config.addMappedStatement(kms); MappedStatement ms = new MappedStatement.Builder(config, "insertAuthor", new DynamicSqlSource(config, new TextSqlNode("INSERT INTO author (id,username,password,email,bio,favourite_section) values(#{id},#{username},#{password},#{email},#{bio:VARCHAR},#{favouriteSection})")), SqlCommandType.INSERT) .parameterMap( new ParameterMap.Builder(config, "defaultParameterMap", Author.class, new ArrayList<ParameterMapping>() { { add(new ParameterMapping.Builder(config, "id", registry.getTypeHandler(Integer.class)).build()); add(new ParameterMapping.Builder(config, "username", registry.getTypeHandler(String.class)).build()); add(new ParameterMapping.Builder(config, "password", registry.getTypeHandler(String.class)).build()); add(new ParameterMapping.Builder(config, "email", registry.getTypeHandler(String.class)).build()); add(new ParameterMapping.Builder(config, "bio", registry.getTypeHandler(String.class)).jdbcType(JdbcType.VARCHAR).build()); add(new ParameterMapping.Builder(config, "favouriteSection", registry.getTypeHandler(Section.class)).jdbcType(JdbcType.VARCHAR).build()); } }).build()) .cache(authorCache) .keyGenerator(new SelectKeyGenerator(kms, true)) .keyProperty("id") .build(); return ms; }
Example #30
Source File: DynamicSqlSourceTest.java From mybaties with Apache License 2.0 | 5 votes |
@Test public void shouldTrimWHEREANDWithCRLFForFirstCondition() throws Exception { final String expected = "SELECT * FROM BLOG WHERE \r\n ID = ?"; DynamicSqlSource source = createDynamicSqlSource( new TextSqlNode("SELECT * FROM BLOG"), new WhereSqlNode(new Configuration(),mixedContents( new IfSqlNode(mixedContents(new TextSqlNode(" and\r\n ID = ? ")), "true" ) ))); BoundSql boundSql = source.getBoundSql(null); assertEquals(expected, boundSql.getSql()); }