private void applyResults(Result[] results, Class<?> resultType, List<ResultMapping> resultMappings) { for (Result result : results) { List<ResultFlag> flags = new ArrayList<>(); if (result.id()) { flags.add(ResultFlag.ID); } @SuppressWarnings("unchecked") Class<? extends TypeHandler<?>> typeHandler = (Class<? extends TypeHandler<?>>) ((result.typeHandler() == UnknownTypeHandler.class) ? null : result.typeHandler()); ResultMapping resultMapping = assistant.buildResultMapping( resultType, nullOrEmpty(result.property()), nullOrEmpty(result.column()), result.javaType() == void.class ? null : result.javaType(), result.jdbcType() == JdbcType.UNDEFINED ? null : result.jdbcType(), hasNestedSelect(result) ? nestedSelectId(result) : null, null, null, null, typeHandler, flags, null, null, isLazy(result)); resultMappings.add(resultMapping); } }
private void applyResults(Result[] results, Class<?> resultType, List<ResultMapping> resultMappings) { for (Result result : results) { List<ResultFlag> flags = new ArrayList<>(); if (result.id()) { flags.add(ResultFlag.ID); } @SuppressWarnings("unchecked") Class<? extends TypeHandler<?>> typeHandler = (Class<? extends TypeHandler<?>>) ((result.typeHandler() == UnknownTypeHandler.class) ? null : result.typeHandler()); ResultMapping resultMapping = assistant.buildResultMapping( resultType, nullOrEmpty(result.property()), nullOrEmpty(result.column()), result.javaType() == void.class ? null : result.javaType(), result.jdbcType() == JdbcType.UNDEFINED ? null : result.jdbcType(), hasNestedSelect(result) ? nestedSelectId(result) : null, null, null, null, typeHandler, flags, null, null, isLazy(result)); resultMappings.add(resultMapping); } }
private boolean isLazy(Result result) { boolean isLazy = configuration.isLazyLoadingEnabled(); if (result.one().select().length() > 0 && FetchType.DEFAULT != result.one().fetchType()) { isLazy = result.one().fetchType() == FetchType.LAZY; } else if (result.many().select().length() > 0 && FetchType.DEFAULT != result.many().fetchType()) { isLazy = result.many().fetchType() == FetchType.LAZY; } return isLazy; }
@Select(value = "select id, name, create_time from roncoo_user where id = #{id,jdbcType=INTEGER}") @Results(value = { @Result(column = "create_time", property = "createTime", jdbcType = JdbcType.TIMESTAMP) }) RoncooUser selectByPrimaryKey(Integer id); }
private void applyResults(Result[] results, Class<?> resultType, List<ResultMapping> resultMappings) { for (Result result : results) { List<ResultFlag> flags = new ArrayList<ResultFlag>(); if (result.id()) { flags.add(ResultFlag.ID); } @SuppressWarnings("unchecked") Class<? extends TypeHandler<?>> typeHandler = (Class<? extends TypeHandler<?>>) ((result.typeHandler() == UnknownTypeHandler.class) ? null : result.typeHandler()); ResultMapping resultMapping = assistant.buildResultMapping( resultType, nullOrEmpty(result.property()), nullOrEmpty(result.column()), result.javaType() == void.class ? null : result.javaType(), result.jdbcType() == JdbcType.UNDEFINED ? null : result.jdbcType(), hasNestedSelect(result) ? nestedSelectId(result) : null, null, null, null, typeHandler, flags, null, null, isLazy(result)); resultMappings.add(resultMapping); } }
private boolean hasNestedSelect(Result result) { if (result.one().select().length() > 0 && result.many().select().length() > 0) { throw new BuilderException("Cannot use both @One and @Many annotations in the same @Result"); } return result.one().select().length() > 0 || result.many().select().length() > 0; }
@Results(value = { @Result(property = "id", column = "id", id = true), @Result(property = "name", column = "name"), @Result(property = "age", column = "age"), @Result(property = "description", column = "desc", typeHandler = DescriptionTypeHandler.class), @Result(property = "height", column = "height") }) @Select("SELECT id,name,age,`desc`,height FROM user WHERE id = #{id}") User selectUser(int id);
private void applyResults(Result[] results, Class resultType, List<ResultMapping> resultMappings) { if (results.length > 0) { for (Result result : results) { ArrayList<ResultFlag> flags = new ArrayList<ResultFlag>(); if (result.id()) flags.add(ResultFlag.ID); ResultMapping resultMapping = assistant.buildResultMapping( resultType, result.property(), result.column(), result.javaType() == void.class ? null : result.javaType(), result.jdbcType() == JdbcType.UNDEFINED ? null : result.jdbcType(), hasNestedSelect(result) ? nestedSelectId(result) : null, null, result.typeHandler() == void.class ? null : result.typeHandler(), flags); resultMappings.add(resultMapping); } } }
@Results(id = "roleResultMap", value = { @Result(property = "id", column = "id", id = true), @Result(property = "roleName", column = "role_name"), @Result(property = "enabled", column = "enabled"), @Result(property = "createBy", column = "create_by"), @Result(property = "createTime", column = "create_time") }) @Select("select id,role_name, enabled, create_by, create_time from sys_role where id = #{id}") SysRole selectById2(Long id);
private void createDiscriminatorResultMaps(String resultMapId, Class resultType, TypeDiscriminator discriminator) { if (discriminator != null) { for (Case c : discriminator.cases()) { String value = c.value(); Class type = c.type(); String caseResultMapId = resultMapId + "-" + value; List<ResultMapping> resultMappings = new ArrayList<ResultMapping>(); for (Result result : c.results()) { List<ResultFlag> flags = new ArrayList<ResultFlag>(); if (result.id()) { flags.add(ResultFlag.ID); } ResultMapping resultMapping = assistant.buildResultMapping( resultType, result.property(), result.column(), result.javaType() == void.class ? null : result.javaType(), result.jdbcType() == JdbcType.UNDEFINED ? null : result.jdbcType(), hasNestedSelect(result) ? nestedSelectId(result) : null, null, result.typeHandler() == void.class ? null : result.typeHandler(), flags); resultMappings.add(resultMapping); } assistant.addResultMap(caseResultMapId, type, resultMapId, null, resultMappings); } } }
@Select("SELECT * FROM message") @Results({ @Result(property = "id", column = "id", javaType = Integer.class, jdbcType = JdbcType.INTEGER), @Result(property = "nickName", column = "nick_name", javaType = String.class, jdbcType = JdbcType.VARCHAR), @Result(property = "ip", column = "ip", javaType = String.class, jdbcType = JdbcType.VARCHAR), @Result(property = "insertTime", column = "INSERT_TIME", javaType = Date.class, jdbcType = JdbcType.DATE) }) List<Message> list(); }
private boolean isLazy(Result result) { boolean isLazy = configuration.isLazyLoadingEnabled(); if (result.one().select().length() > 0 && FetchType.DEFAULT != result.one().fetchType()) { isLazy = (result.one().fetchType() == FetchType.LAZY); } else if (result.many().select().length() > 0 && FetchType.DEFAULT != result.many().fetchType()) { isLazy = (result.many().fetchType() == FetchType.LAZY); } return isLazy; }
@Select("SELECT * FROM OWF_ACTIVITY_CREATION") @Results(value = { @Result(property = "factoryName", column = "FACTORY_NAME"), @Result(property = "processDefinitionId", column = "PROCESS_DEFINITION_ID"), @Result(property = "processInstanceId", column = "PROCESS_INSTANCE_ID"), @Result(property = "propertiesText", column = "PROPERTIES_TEXT") }) List<SimpleRuntimeActivityDefinitionEntity> findAll();
private boolean hasNestedSelect(Result result) { if (result.one().select().length() > 0 && result.many().select().length() > 0) { throw new BuilderException("Cannot use both @One and @Many annotations in the same @Result"); } return result.one().select().length() > 0 || result.many().select().length() > 0; }
@Select("SELECT * FROM OWF_ACTIVITY_PERMISSION where PROCESS_DEFINITION_ID=#{processDefinitionId} and ACTIVITY_KEY=#{taskDefinitionKey}") @Results(value = { @Result(property = "processDefinitionId", column = "PROCESS_DEF_ID"), @Result(property = "activityKey", column = "ACTIVITY_KEY"), @Result(property = "assignee", column = "ASSIGNED_USER"), @Result(property = "grantedGroupString", column = "GRANTED_GROUPS"), @Result(property = "grantedUserString", column = "GRANTED_USERS") }) public SqlActivityPermissionEntity load(@Param("processDefinitionId") String processDefinitionId, @Param("taskDefinitionKey") String taskDefinitionKey);