parameterMappingList, Class> parameterObjectClass, Object parameterObject) throws Exception {String propertyValue;for(Iterator var5 = parameterMappingList.iterator(); var5.hasNext(); sql = sql.replaceFirst("\?", propertyValue)) {ParameterMapping parameterMapping = (ParameterMapping)var5.next();propertyValue = null;if (this.isPrimitiveOrPrimitiveWrapper(parameterObjectClass)) {propertyValue = parameterObject.toString();} else {String propertyName = parameterMapping.getProperty();Field field = parameterObjectClass.getDeclaredField(propertyName);field.setAccessible(true);propertyValue = String.valueOf(field.get(parameterObject));if (parameterMapping.getJavaType().isAssignableFrom(String.class)) {propertyValue = """ + propertyValue + """;}}}return sql;}private boolean isPrimitiveOrPrimitiveWrapper(Class> parameterObjectClass) {return parameterObjectClass.isPrimitive() || parameterObjectClass.isAssignableFrom(Byte.class) || parameterObjectClass.isAssignableFrom(Short.class) || parameterObjectClass.isAssignableFrom(Integer.class) || parameterObjectClass.isAssignableFrom(Long.class) || parameterObjectClass.isAssignableFrom(Double.class) || parameterObjectClass.isAssignableFrom(Float.class) || parameterObjectClass.isAssignableFrom(Character.class) || parameterObjectClass.isAssignableFrom(Boolean.class);}private boolean isStrictMap(Class> parameterObjectClass) {return parameterObjectClass.isAssignableFrom(StrictMap.class);}private boolean isList(Class> clazz) {Class>[] interfaceClasses = clazz.getInterfaces();Class[] var3 = interfaceClasses;int var4 = interfaceClasses.length;for(int var5 = 0; var5 < var4; ++var5) {Class> interfaceClass = var3[var5];if (interfaceClass.isAssignableFrom(List.class)) {return true;}}return false;}private boolean isMap(Class> parameterObjectClass) {Class>[] interfaceClasses = parameterObjectClass.getInterfaces();Class[] var3 = interfaceClasses;int var4 = interfaceClasses.length;for(int var5 = 0; var5 < var4; ++var5) {Class> interfaceClass = var3[var5];if (interfaceClass.isAssignableFrom(Map.class)) {return true;}}return false;}public long getMaxTime() {return this.maxTime;}public void setMaxTime(long maxTime) {this.maxTime = maxTime;}}
【MyBatis插件-慢sql耗时监控插件】
推荐阅读
-
-
-
众鸟孤云|2000年朱时茂陈佩斯却状告央视,获赔33万真的赢了吗,11次上春晚
-
专家分析核酸检测“假阴性”问题:多原因造成要积极应对
-
女排▲女排这三人风格不同,最能体现郎平所说的互补,出征东京毫无悬念
-
-
『无线耳机』?注册制下该怎么玩,当下手中的股票该怎么办
-
2020年11月份轿车销量排行完整版,你的爱车排多少呢
-
警方|高考当天发现身份证过期 海淀警方开启绿色通道当天拿证
-
爱否科技|Nord 系列新机 N10 5G/N100 海外发布,一加
-
-
-
生活的颤音|凭《生活的颤音》大火的冷眉,为何突然息影?冷眉如今咋样了?
-
新华网|索尼最新全画幅微单Alpha 7S III即将上市
-
开黑新使者|赛季双排第一名,这一点不得不服不求人!,王小歪和不求人争一哥
-
ZAKER汽车|Jeep有牧马人,福特有“烈马”,越野爱好者可有福了,哈弗有大狗
-
不同产业、不同区域间发展不平衡——农业机械化瞄准三大领域补短板
-
Facebook Messenger收集的数据量有多吓人?可视化对比图告诉你
-
【诗妮娜】68岁泰王恣意妄为,对女儿闺蜜“下手”了,会是下一个诗妮娜吗?
-
通告,与公告 通知 通报区别对比 公告与通告的区别