Category: Source Code Analyze
mybatis 动态参数及其 foreach collection使用
Mybatis里传参数入Mapper一般基于基本类型,Integer、String、List、Hashtable,然后以此构架foreach迭代动态sql。
1 2 3 4 5 6 7 8 |
<select id="findUserListByIdList" parameterType="java.util.ArrayList" resultType="User"> select * from user user <where> user.id in <foreach collection="listName" item="guard" index="index" separator="," open="(" separator="," close=")" > #{guard} </foreach> </where> </select> |
[汇总]代码级别经验
你见过哪些目瞪口呆的 Java 代码优化技巧? 项目组入职一个阿里的大牛,看他写代码真的太优雅了! 用1个月重构了同事写的烂代码,我总结出了15条重写烂代码的经验! 分享几个工作里实用的代码优化技巧,保证领导看了你的代码都点赞! 还在使用SimpleDateFormat?你的项目崩没? BigDecimal使用不当,造成P0事故! 在涉及到精度计算的过程中,我们尽量使用 String 类型来进行转换。 谁再在 POJO 中使用基本数据类型,以后就不用来了! 很不起眼的6个bug,90%的程序员就算写了10年代码也肯定都踩过! 看了我写的设计模式,全公司同事都开始悄悄模仿了 代码中的时间格式问题究竟该如何处理? 警告!别再使用 TIMESTAMP 作为日期字段 也有的同学会热衷用类型 TIMESTEMP 存储日期,因为类型 TIMESTAMP 占用 4 个字节,比 DATETIME 小一半的存储空间。 但若要将时间精确到毫秒,TIMESTAMP 要 7 个字节,和 DATETIME 8 字节差不太多。另一方面,现在距离 TIMESTAMP 的最大值‘2038-01-19 03:14:07’已经很近,这是需要开发同学好好思考的问题。 总的来说,我建议你使用类型 DATETIME。对于时区问题,可以由前端或者服务这里做一次转化,不一定非要在数据库中解决。 PropertyValuesProvider在日期绑定和校验中的应用 手写一个连接池? 讲解线程池的一篇干货,很干很干!...
Spring Batch in Spring MVC
Today I have implemented Spring Batch in my Spring MVC project for importing data from CSV file to database. There are plenty of tutorials on the internet but I met a lot of problems during...
[转]Spring AOP以及代理JDK和CGLIB
我们知道,Spring 中 AOP 是一大核心技术,也是面试中经常会被问到的问题,最近我在网上也看到很多面试题,其中和 Spring AOP 相关的就有不少,这篇文章主要来总结下相关的技术点,希望对大家有用。