java打印sql语句

<!--打印SQL-->
<logger name="java.sql.Connection" level="DEBUG" />
<logger name="java.sql.Statement" level="DEBUG" />
<logger name="java.sql.PreparedStatement" level="DEBUG" />

<root level="DEBUG">
            <appender-ref ref="generalDailyFileAppender"/>
            <appender-ref ref="errorDailyFileAppender"/>
    <appender-ref ref="console" />
</root>

取list<user>中指定元素的集合

List<Integer> lsAttach=fundManagers.stream().map(TblFundManager::getId).collect(Collectors.toList());

#对指定元素进行分隔.
String ownIds=StringUtils.join(lsAttach.toArray(),",");

取集合中的某一元素

用optional 防止空

Optional<TblAttachInfo> attach=managerAttachInfos.stream().filter(s->s.getOwnId()==manager.getId()).findFirst();
                if (attach.isPresent()) {
                    fundManager.setAttachPath(attach.get().getAttachPath());
                }

mybatis中使用in

<select id="selectByIdSet" parameterType="java.lang.String" resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List" />
    from table1
    where own_id in  (${ownIds,jdbcType=VARCHAR})
  </select>

上面的不能防止sql注入,用$替换, 下面的是#加list循环.

List<User> selectByIdSet(List idList);
 
<select id="selectByIdSet" resultMap="BaseResultMap">
    SELECT
    <include refid="Base_Column_List" />
      from table1
    where own_id in  
    <foreach collection="list" item="id" index="index" open="(" close=")" separator=",">
      #{id}
    </foreach>
</select>

本文由 hcb 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论