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耗时监控插件】
推荐阅读
-
-
-
-
Lifehack|王嘉尔鲨鱼线火爆全网,小姐姐们不淡定了
-
央视新闻|?科威特新增702例新冠肺炎确诊病例 累计确诊85811例
-
半岛擎报|那么还有那个国家呢?,英国专家表示:中国基建实力还不是第一
-
阿里巴巴、顺联动力等多家企业共同发起“服务全国外贸企业转内销倡议”
-
大学|毕业生收入最高的美国大学top10名单出炉!半数都是冷门学校?
-
每经开盘 | 沪指涨0.13%,消费零售板块依旧火热,暴风集团天地板
-
-
短发|那些很会打扮自己的女人,都在剪“外翻短发”,活泼大方又灵动
-
【瑞幸咖啡】实地探访瑞幸咖啡北京办公区 有身着制服人员进入神州总部大楼
-
-
大学|高三男生很吃香的8大专业,毕业不愁就业,收入和发展前景都挺好
-
-
-
牧火狐说体育■曼联买断伊哈洛,事态如何发展?,申花失去大佬
-
-
IT 行业的女性从业者应该怎样规划职业尤其是考虑到大约三年后结婚生子的这些问题。
-