java
starzxf
2019重燃战火,找到另一片天地
展开
-
The type okio.ByteString cannot be resolved. It is indirectly referenced from required .class files
开发环境:eclipseBuild id: 20100218-1602jdk 1.6编译出错的关键代码 okhttp3.RequestBody body = okhttp3.RequestBody.create(contentType, param);提示:The type okio.ByteString cannot be resolved. It is indirectly referenced from required .class files解决...原创 2020-08-29 11:35:04 · 2124 阅读 · 0 评论 -
为了应对 Xss 跨站脚本攻击,新增 XssFilter 统一处理实践
问题背景:1、早期的软件产品,使用 spring mvc2、jsp form 表单中要传附件,同时有 input 字段要提交,因此表单 encType 必须是multipart/form-data, action="POST"问题:1、按照流转很广的方式 ,新建 XssFilterServletRequestWrapper extendsHttpServletRequestW...原创 2019-11-08 14:57:32 · 383 阅读 · 0 评论 -
spring boot restful api 方法参数 BindException 异常处理
客户端 post json 数据,api 方法 接收的参数绑定出现异常,抛出 BindException 异常,可以按照如下的方式处理1、方法参数中增加 BindingResult 参数,通过 bindingResult.hasErrors() 判断是否出错2、在 配置类中重写 addFormatters 方法@Configurationpublic class MyWe...原创 2018-07-23 17:14:16 · 6179 阅读 · 0 评论 -
java new interface 的处理
在 spring boot 中,需要重写 WebMvcConfigurerAdapter 抽像类,来定义自己的一些处理逻辑@Configurationpublic class MyWebAppConfigurer extends WebMvcConfigurerAdapter { @Bean public Converter<String, Date> string...原创 2018-07-21 12:01:33 · 2086 阅读 · 0 评论 -
java 整形相乘溢出
今天看日志发现有一段程序不应该执行的,经过检查发现,犯了一个错误,四个 int 相乘超出 int 最大值造成溢出,结果为负数3600 * 1000 * 24 * 29 = -1789367296处理:将乘法算式 直接改为 2505600000 或者将第一个数后面加上小写字母 l ,3600l * 1000 * 24 * 29 ...原创 2018-07-26 22:27:57 · 624 阅读 · 0 评论 -
java 9 class newinstance Deprecated
从 java 9 开始,不推荐直接 clazz.newInstance() 会编译警告推荐用 clazz.getDeclaredConstructor().newInstance()注:此方法传播由 nullary 构造函数引发的任何异常, 包括选中的异常。使用此方法可以有效地绕过编译时异常检查, 否则编译器将执行此操作。构造函数. newInstance 方法通过在 Invoc...原创 2018-08-22 10:00:13 · 5418 阅读 · 3 评论 -
java java.lang.reflect.Parameter .getName() 取method的参数变量名(Obtaining Names of Method Parameters)
根据 oracle 官方解释(https://docs.oracle.com/javase/tutorial/reflect/member/methodparameterreflection.html) , 编译器为了压缩 .class 大小,压缩了参数名,默认用 argN, N代表方法参数列表下标,通过 java.lang.reflect.Parameter .getName() ...原创 2018-10-17 10:07:55 · 1860 阅读 · 1 评论