小编xpl*_*raj的帖子

如何使用react-table对数据进行自动换行?

我使用https://react-table.js.org/#/story/readme来显示来自服务器响应的表.但对于长度较长的列数据,它显示省略号.我没有找到包装它的方法,因此显示完整的数据.

在文档中,他们提到style道具,但我无法弄明白.我试过下面,但它没有用.

<ReactTable
    data={respDataArr}
    columns={columns}
    style={{overflow:'wrap'}}
/>
Run Code Online (Sandbox Code Playgroud)

有人可以建议我应该做些什么改变?

reactjs react-table

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

如何使用Date对象使一个类不可变?

这只是从学术学习的角度来看.我所知道的是,每当我们想要使一些类不可变时 - 它必须由最终的原始字段组成 - 引用在构造对象期间不会转义 - 如果使用其他对象,那么这些对象也需要递归不可变或API不可变像java.lang.String这样的类,还有一些其他详细的了望台!

但是我最近遇到了一个问题,其中一位采访者要求候选人创建一个包含java.util.Date的不可变类.我的第一印象告诉我,尽管我们可以使用包含日期字符串的字符串而不是Date对象本身的变通办法来实现它.

请澄清一下.谢谢.

java date immutability

8
推荐指数
2
解决办法
2万
查看次数

如何在 React 的另一个组件中呈现搜索结果?

我是 React 的初学者,正在使用 Webpack 构建 bundle.js 并显示。

我需要提供一些搜索表单,并相应地在搜索表单下方显示结果。因此,为了模块化它,我创建了一个包含搜索和结果视图组件的父组件。

现在我已经设计了一个表单并编写了表单 onSubmit 事件处理程序,我应该如何继续在结果组件中呈现 API 结果(现在是虚拟 json)。我附上我的意图的简要图片供您参考。

在此处输入图片说明

javascript reactjs

8
推荐指数
1
解决办法
8799
查看次数

如何在图表中的同一行显示不同的笔画?

我正在使用rechartswith react,我需要关于如何在Linea 中使用不同笔划的建议LineChart。例如,它可以显示当前日期之前的实线,以及未来日期的虚线(视为某些数据的预测)。

reactjs recharts

8
推荐指数
2
解决办法
2万
查看次数

Java中类锁定和对象锁定的区别

人们讲述了两种类型的多线程锁定 - 对象和类.据我所知,锁定仅在对象上完成.

案例1:我们使用的工具new或工厂方法等.

void synchronized myMethod(Type param) {
  //will lock on the instance used to call this method
}
Run Code Online (Sandbox Code Playgroud)

要么

synchronized(this) {
 //will lock on current object
}
Run Code Online (Sandbox Code Playgroud)

要么

synchronized(obj1) {
 //will lock on specified obj1 object
}
Run Code Online (Sandbox Code Playgroud)

案例2:java.lang.Class对象

这称为类锁,可以与静态字段或方法或块一起使用,因为它们属于类并在所有对象和其他类属性之间共享.

static void synchronized method() {
  //will lock the Class object
}
Run Code Online (Sandbox Code Playgroud)

要么

static {
  synchronized(SomeClass.class){
    int a = 2;
  }
}
Run Code Online (Sandbox Code Playgroud)
  • 为什么我还将此视为对象锁定,因为类被加载到JVM中的方法区域中,并且类的所有静态属性都包装在java.lang.Class由JVM创建的对象中.因此抽象,它的对象锁定和图片中,我们看到类锁定.
  • 所以我还可以推断出一件事.正如一个线程锁定的对象不能被另一个线程获取,只要它不被第一个线程释放,类锁定(java.lang.Class实例)也以相同的方式工作.
  • 我想知道在同步静态方法的情况下,在以下两种情况下锁定线程获取哪个类:

    1. 从定义它的同一个类调用此方法.
    2. 从具有派生类名的派生类调用此方法.

到目前为止,这是我对这个问题的理解.请加上或纠正.

java multithreading locking thread-synchronization

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

WireMock 中的请求正文匹配(不是 JSON/XML)

我正在尝试使用独立的wiremock 创建一个API 模拟。响应正文取决于请求正文中的属性。

有了 JSON,我就能做到。这是示例映射:

{
   "request":{
      "method":"POST",
      "bodyPatterns":[
         {
            "matchesJsonPath":"$.somekey.subkey[?(@.attribute == 'VALUE_123')]"
         }
      ]
   },
   "response":{
      "status":200,
      "bodyFileName":"res.dat",
      "headers":{
         "Content-Type":"application/x-proto;charset=UTF-8"
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

然而,我的主要要求是处理 google protobuf,我尝试使用文本格式代替它,嘲笑者将用它来模拟 API 进行响应。因此,请求文件是文本格式,并且没有任何 JSON 验证,例如双引号或每行末尾的逗号等。

我发现使用 JSON 路径,wiremock 由于格式不正确而无法匹配请求正文。例如,这样的请求:

{
animal {
type {
key1: "value"
key2: value2
}
}
}
Run Code Online (Sandbox Code Playgroud)

代替

{  
   "animal":{  
      "type":{  
         "key1":"value",
         "key2":"value2"
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

可以说key1=value1应该匹配并且response1.json应该返回,或者当key1=时someOtherValueresponse2.json应该返回。是的,钥匙是类型的一部分,而类型是动物的一部分。我怎样才能实现这个请求正文匹配?

json mocking jsonpath wiremock

6
推荐指数
1
解决办法
4万
查看次数

如何使用动态键名生成对象类型的JSON模式?

说我有以下json:

{
    "empName": "rameshp",
    "designation": "SE1",
    "skills": [
        {
            "id": 2,
            "rating": 4,
            "skillName": "Node.js 7",
            "skillCategory": "Programming"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

现在可能有多个类似上面的对象,所以我想引用上面的模式,该模式可以从https://www.jsonschema.net生成,但是我想将empName作为对象键,并将上面的value作为值,因此它将具有多个唯一键(empName)的对象,并且该值将引用上面的架构。考虑下面的示例,当POJO通过序列化为JSON时Jackson,应如下所示:

{
    "rameshp": {
        "empName": "rameshp",
        "designation": "SE1",
        "skills": [
            {
                "id": 2,
                "rating": 4,
                "skillName": "Node.js 7",
                "skillCategory": "Programming"
            }
        ]
    },
    "john": {
        "empName": "john",
        "designation": "SE2",
        "skills": [
            {
                "id": 2,
                "rating": 4,
                "skillName": "Node.js 7",
                "skillCategory": "Programming"
            }
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

此方案的总体架构(JSON架构)应该是什么?最终,杰克逊将用于为该架构生成POJO,并在我创建的REST API中使用。

编辑:(试图澄清)

想象一个List<Map<k, v>>作为我的数据。我想要为此的json模式,其输出json将把键作为对象名称,就像上面的json示例一样。

解决方案:Mushif对这个问题的评论就是答案。对于值部分,可以使用jsonschema。Map<String, EmployeeDTO>

java jsonschema jackson

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

如何使用Jacoco和多个模块在Jenkins中进行代码覆盖?

我的代码结构如下:

事件
消息
其他代码
功能测试

在jacoco的构建脚本中,首先必须复制所有类并使用该类目录来运行该工具.你能否在这里描述目标目录的步骤.我的意思是如何提及运行代码覆盖的目录.

在构建时,每个文件夹都有自己的目标文件夹,其中包含类.

以下是步骤:

  1. 在Jenkins建立项目作为工作
  2. 将其部署到用户阶段
  3. 在Jenkins中运行jacoco报告作业

Jacoco报告工作说明:

  1. 构建步骤 - maven 3.3.3目标 - 清除测试和测试套件,用户阶段详细信息和其他信息通过.

  2. 发布步骤 - 执行shell

    无法在此格式化和粘贴,所以上传到这里:https://zerobin.net/?8a988cd05bf3d752#fbzMlW1b7uzD+HZnmwnd9WjQYBI3j95Q7DCIx6q+l0U=

  3. 调用顶级maven目标 - maven 3.3.3 -f jacoco_pom.xml jacoco:dump antrun:run @ report

clasDirshell粘贴中使用的变量应该有类.到目前为止,我已经在shell脚本的开头做了这个.

mkdir -p target/classes
cp -R messages/target/classes target/classes
Run Code Online (Sandbox Code Playgroud)

和设置clsDir = target/classes,

这样我得到了关于该模块的报告.我的测试套件只包含一个类.我想包括其他模块events,other-code并且还链接源.

我需要帮助我应该如何设置它.主要目的是生成功能测试的代码覆盖率报告.

编辑:

答:以下答案有所帮助,但是所有这些都是用shell命令完成的,而不是任何UI.因此,克隆存储库,执行mvn clean package -DskipTests和复制所有模块文件夹中的所有第一级子文件夹都有帮助,但随后它显示错误覆盖范围执行数据不匹配类文件.这意味着我们用于覆盖的类和我们用于覆盖的类是由不同的JVM(一个在Jenkins中,另一个在阶段中部署)单独构建的.

所以解决方案是不克隆并重新编译它们,而是从部署存储库下载清单并解压缩所有jar.这样我就拥有了相同版本的所有类.

code-coverage jenkins jacoco

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

在这种情况下,线程如何同时获取两个对象的锁?

public void method(Type1 inst1, Type2 inst2) {
  synchronized(inst1) {
    synchronized(inst2) {
      //do something now
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

从这段代码中我可以理解,一旦一个线程进入该方法,它会在inst1上获取锁,然后在inst2上获取锁,不会释放inst1锁。我假设这两个对象都没有被其他线程锁定。

  1. 如果一个线程一次只能获取一个对象的锁,并且当当前对象的锁被释放时只能拥有另一个锁,那么这段代码如何有效,或者更确切地说,它是我认为我见过的有效代码某处?
  2. 如果 Type1 和 Type2 相同呢?
  3. 如果我们使方法同步,考虑到它驻留在方法的参数类型以外的类中,会发生什么?

java multithreading synchronization thread-synchronization

3
推荐指数
1
解决办法
5159
查看次数

什么是 - > Java中的符号?

最近,我遇到了一个使用了 - >的代码.

例:

int a = 5;
while(a-->0){
    //do something 'a' times
}
Run Code Online (Sandbox Code Playgroud)

(a-->0)相当于(a-- > 0)或者简单地说,((a=a-1) > 0)

如果没有,我想知道那个运算符叫什么,还有其他类似的运算符.如果是的话,那么他们会在哪里提到?

谢谢

java operators

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

PMD和FindBugs冲突

我们有一个子类,不需要任何等号和哈希码比较。它在超级类中处理。

但是FindBugs给出了错误 -EQ_DOESNT_OVERRIDE_EQUALS:此类扩展了一个类,该类定义了equals方法并添加了字段,但未定义equals方法本身。因此,此类实例上的相等性将忽略子类和添加的字段的标识。确保这是预期的目的,并且您不必重写equals方法。即使您不需要重写equals方法,也应考虑将其重写以记录以下事实:子类的equals方法仅返回调用的结果super.equals(o)

当我们通过调用进行覆盖时super

@Override
public boolean equals(Object o) {
    return super.equals(o);
}

@Override
public int hashCode() {
    return super.hashCode();
}
Run Code Online (Sandbox Code Playgroud)

现在PMD给出了错误-UselessOverridingMethod:重写方法仅调用超类中定义的相同方法。

我该如何解决?

java findbugs pmd

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

为什么 Java 需要显式向下转换?

我看过类似问题的其他答案,但所有答案都依赖于语言被定义为这样的事实。以下是我寻求解释的内容:

在继承层次结构中,父类型可以隐式地保存子对象(为什么?),但是对于子引用来保存父对象,显式向下转换是必要的(为什么?)。

请举一些例子来解释为什么不这样做会失败,我的意思是使用动物、狗类型等。如果这个问题已经得到回答并且我错过了它,引用它也会有帮助。

例如:

class Animal{
    public void eat(){};
}

class Dog extends Animal{
    public void bark(){};
}

class App{
    Animal an = new Dog(); //1. why can animal store a dog but not a dog store an animal
    Dog dog = (Dog) new Animal(); //2. Dog has the behavior of an Animal so why explicit downcast
}
Run Code Online (Sandbox Code Playgroud)

我只想知道这些行是如何有意义的,而不仅仅是知道它们是语言语义。如果您的回答看起来像一位奶奶向她的孙子解释这一点,那就更好了。

编辑: 我只是想知道Dog继承Animal并拥有所有行为。因此,上面的数字 2 应该被允许而无需显式向下转换。

或者,当我要求 aDog存储 an时(我想我现在明白了)Animal有可能我实际上得到了 aCow或 a Horse,因为 …

java inheritance casting

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