小编jit*_*ney的帖子

如何使用java打开默认的webbrowser

有人可以指出我正确的方向如何打开默认的Web浏览器并将页面设置为"www.example.com"谢谢

java

96
推荐指数
7
解决办法
13万
查看次数

Java 中的 JSON 注入强化修复

我正在使用以下代码来清理 JSON,但仍然在从 Fortify 扫描时收到 JSON 注入,请您帮我看看是什么问题,或者这不是问题,也许可以抑制。我也寻找了同样的问题,但那些并不能解决我的问题。我的问题是我在将 JSON 转换为 java 对象之前对其进行了消毒,但在 fortify 中仍然出现 JSON 注入错误

public String handleEventMessage(String jsonRequest) {
    MonerisPaymentDetailsObject paymentObject = null;
        if(null!=jsonRequest && jsonRequest.length()>0){
            try{
                paymentObject = mapper.readValue(JsonSanitizer.sanitize(jsonRequest), MonerisPaymentDetailsObject.class);
            }catch(Exception ex){
                logger.error("Error occured while converting MonerisPaymentDetailsObject json to Object :" , ex);
          }
            
      return "abc";
   } 
Run Code Online (Sandbox Code Playgroud)

Fortify 对此错误给出以下描述

 1. Data enters a program from an untrusted source.
    
    In this case the data enters at readLine() in EPWFPaymentServicesServlet.java at line 49.
    
    
    2. The data is written to a JSON …
Run Code Online (Sandbox Code Playgroud)

java json fortify

5
推荐指数
1
解决办法
532
查看次数

使用Java 8和格式->'uuuu-MM-dd'将String转换为日期

我想使用Java 8从字符串转换为日期。

我可以轻松地使用SimpleDateFormat和进行yyyy-MM-dd格式转换

   String startDate2="2017-03-24";
   SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
   System.out.println(new java.sql.Date(sdf1.parse(startDate2).getTime()));
Run Code Online (Sandbox Code Playgroud)

输出: 2017-03-24

   String startDate2="2017-03-24";
   SimpleDateFormat sdf1 = new SimpleDateFormat("uuuu-MM-dd");
   System.out.println(new java.sql.Date(sdf1.parse(startDate2).getTime()));
Run Code Online (Sandbox Code Playgroud)

但是当我用'uuuu-MM-dd'代替'yyyy-MM-dd'

输出:( 1970-03-24错误)

现在在Java 8中

   String startDate1="2017-03-23";
   DateTimeFormatter formatter = DateTimeFormatter.ofPattern("uuuu-MM-dd");
Run Code Online (Sandbox Code Playgroud)

但是我不知道如何获取与上述正确输出相同的sql date类型的日期。

java java-8

2
推荐指数
1
解决办法
3976
查看次数

标签 统计

java ×3

fortify ×1

java-8 ×1

json ×1