小编Age*_*ntX的帖子

了解JMH输出

所以我通过几种方法运行了JMH基准测试并得到了这样的响应:

在此输入图像描述

我无法理解这些Score and Error值的确切含义.

是否有一些参考文献可供使用?

java jmh

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

slf4j 是如何成为外观的?

我试图了解 slf4j 的细节。我仍然不清楚如何将 slf4j 视为 Logging 门面?

门面的目的通常是 -

为子系统中的一组接口提供统一的接口。Facade 定义了一个更高级别的接口,使子系统更易于使用。

在 slf4j 的情况下,它提供了一个通用Logger接口,但每个绑定项目(如log4j, logback等)都需要提供它们的具体实现。

所以我理解如何adapter pattern适应,但我仍然无法理解如何Facade Pattern使用。

logging facade slf4j

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

Java 8-惰性评估?

当我发现自己对Streams API如何对强制性for循环方法进行惰性评估感到困惑时,我正在观看Streams视频。

这是典型的for循环代码,该代码检查第一个大于3的数字,甚至是偶数,然后简单地将其打印并返回。

List<Integer> arr = Arrays.asList(1, 2, 3, 5, 4, 6, 7, 8, 9);

    for (int i : arr) {
        System.out.println(" Checking if is Greater: " + i);
        if (i > 3) {
            System.out.println("checking if is Even " + i);
            if (i % 2 == 0) {
                System.out.println(i * 2);
                break;
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

这里是预期的输出:

Checking if is Greater: 1
Checking if is Greater: 2
Checking if is Greater: 3
Checking if is Greater: 5
Checking if is Even …
Run Code Online (Sandbox Code Playgroud)

java java-8

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

@Autowired 在内部类中不起作用

我在内部类中有一个被@Autowired 的类。但是在执行它时会抛出一个空指针异常,而在外部类中自动装配时它可以正常工作

class outer {
   ...
   class inner {
       @Autowired
       private var somevar;
       private process () {
           somevar.someMethod();
   }
}
Run Code Online (Sandbox Code Playgroud)

知道为什么这不起作用吗?somevar.someMethod();线正在生成 NPE。

java spring dependency-injection inner-classes

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

Java 8 - 外部迭代的性能优于内部迭代?

所以我正在阅读一本关于Java 8的书,当我看到他们在外部和内部迭代之间进行比较并考虑比较两者时,性能明智.

我有一个方法,只是总结了一系列整数n.

迭代的:

private static long iterativeSum(long n) {

    long startTime = System.nanoTime();
    long sum = 0;

    for(long i=1; i<=n; i++) {
        sum+=i;
    }


    long endTime = System.nanoTime();
    System.out.println("Iterative Sum Duration: " + (endTime-startTime)/1000000);

    return sum;
}
Run Code Online (Sandbox Code Playgroud)

顺序一个 - 使用内部迭代

private static long sequentialSum(long n) {

    long startTime = System.nanoTime();

    //long sum = LongStream.rangeClosed(1L, n)
    long sum = Stream.iterate(1L, i -> i+1)
            .limit(n)
            .reduce(0L, (i,j) -> i+j);

    long endTime = System.nanoTime();
    System.out.println("Sequential Sum Duration: " + (endTime-startTime)/1000000); …
Run Code Online (Sandbox Code Playgroud)

java iterator java-8 java-stream

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

Tabula-py - 导入错误:没有名为 tabula 的模块

我正在尝试使用 Tabula-py 来阅读 pdf。我通过安装 tabula-pypip install tabula-py

我还安装了所需的依赖项

requests
pandas
pytest
flake8
Run Code Online (Sandbox Code Playgroud)

我的代码目前如下:

import tabula
import pandas as pd

df = tabula.read_pdf("report.pdf", pages=2)
print(df)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Traceback (most recent call last):
File "tabula_pdf_reader.py", line 1, in <module>
  import tabula
ImportError: No module named tabula
Run Code Online (Sandbox Code Playgroud)

我在这里缺少什么输入?

python tabula

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

Java - 内部类为父类打开后门

当我浏览一些 JVM 字节码文章时,我看到了这个视频,该视频展示了内部类如何打开进入父作用域的后门,该后门可以被利用吗?(不确定,也许可以?)

这是我的测试代码。

public class Outer {

    private String name = "You got me!";

    public class Inner {
        public void printName() {
            System.out.println(name);
        }
    }

    public static void main(String[] args) {

        Outer o = new Outer();
        Inner i =  o.new Inner();
        i.printName();
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,为了查看是否backdoor创建了这样的方法,我常常javap查看类文件。

这是结果,请参阅printName method

printName 方法的字节码

查看该行7:,您将看到invokestatic对 a 的调用Outer.access$0

查看Outer.class我们可以看到该方法的定义。

后门方法定义

这是一个安全漏洞吗?它可以被利用吗?我只是好奇想了解更多这方面的信息。

java bytecode inner-classes

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

支持向量机:什么是 C 和 Gamma?

我是机器学习的新手 7 我已经开始关注 Udacity 的机器学习简介

当这个概念C and Gamma出现时,我正在关注简单向量机。我做了一些挖掘,发现了以下内容:

C - 高 C 尝试将训练数据的错误分类最小化,而低值尝试保持平滑分类。这对我来说很有意义。

Gamma - 我无法理解这个。

有人可以用外行的术语向我解释这一点吗?

machine-learning svm

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

Dynamo DB Local - 拒绝连接

我正在尝试使用AWS Java SDK连接到Local Dynamo DB.所以我安装了Local Dynamo DB并启动了javascript shell.一切正常,shell从通常的地址开始http://localhost:8000/shell/

现在,当我尝试通过AWS SDK访问Dynamo数据库实例时,事情开始破裂.

这是我的代码:

public class MyDynamoDB {
    private AmazonDynamoDBClient client;

    public MyDynamoDB() {
        client = new AmazonDynamoDBClient();
        client.setEndpoint("http://localhost:8000");
    }

    public void saveAndLoad() {
        DynamoDBMapperConfig config = new DynamoDBMapperConfig(new TableNameOverride("xyz"));
        DynamoDBMapper mapper = new DynamoDBMapper(client, config);
        Data data = new Data();
        ...
        mapper.save(data);


        //check if persisted
        Data d = mapper.load(Data.class, "Key");
        if (d != null) {
            System.out.println(" Found data: " + d.getStuff());
        } else {
            System.out.println("Data not found");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在运行这个时,我得到以下堆栈跟踪 …

amazon-dynamodb aws-sdk

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

Tensorflow-损失增加到NaN

我正在通过Udacity的深度学习课程。我观察到的有趣的事情是,对于相同的数据集,我的1层神经网络工作得很好,但是当我添加更多层时,NaN的损失会增加。

我使用以下博客文章作为参考:我使用以下博客文章作为参考:http : //www.ritchieng.com/machine-learning/deep-learning/tensorflow/regularization/

这是我的代码:

batch_size = 128
beta = 1e-3

# Network Parameters
n_hidden_1 = 1024 # 1st layer number of neurons
n_hidden_2 = 512 # 2nd layer number of neurons

graph = tf.Graph()
with graph.as_default():
    # Input data. For the training data, we use a placeholder that will be fed
    # at run time with a training minibatch.
    tf_train_dataset = tf.placeholder(tf.float32,
                                  shape=(batch_size, image_size * image_size))
    tf_train_labels = tf.placeholder(tf.float32, shape=(batch_size, num_labels))
    tf_valid_dataset = tf.constant(valid_dataset)
    tf_test_dataset = tf.constant(test_dataset)


    # …
Run Code Online (Sandbox Code Playgroud)

python neural-network deep-learning tensorflow

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

具有相同id的按钮的jquery click事件

我有这样的表结构

<table>
  <c forEach var="item" items="${manyItems}">
    <tr>
       <td id="item1"> ${item.data1} </td>
       <td id="item2"> ${item.data2} </td>
       <td> <button id="deleteButton"/> </td>
    </tr>
  </c:forEach>
</table>
Run Code Online (Sandbox Code Playgroud)

现在我想在deleteButton中添加一个click事件

在我的jquery是这样的:

$(function() {
  $('#deleteButton').click(function() {
    var ele = $(this).parent();
    /* fetch the other <td> siblings of the #deleteButton */
    /* delete code goes here having an ajax query*/
  });
});
Run Code Online (Sandbox Code Playgroud)

此代码仅删除表的第一行,但不适用于任何其他行.

我相信这是因为我们需要有不同的身份证?

请指导我一个好的解决方案.

javascript jquery onclicklistener

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

Guice - 没有绑定任何实现(对于List <String>)

当我使用特定注释注释List时,我正在尝试绑定List的实例.

我尝试使用Instance Binding和Provider方法,但我一直收到错误.

这是我的@Provides方法和configure()

@Provides @Named("Regions")
public List<String> getRegions() {
    return AppConfig.findVector("Regions"); //this would return a Vector<String>
}

@Override
protected void configure() {
    bind(List.class).annotatedWith(Names.named("Regions")).to(Vector.class);
}
Run Code Online (Sandbox Code Playgroud)

以下是我尝试获取实例的方法 -

List<String> regions = injector.getInstance(Key.get(List.class, Names.named("Regions")));
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误

com.google.inject.ConfigurationException: Guice configuration errors:

1) No implementation for java.util.List annotated with @com.google.inject.name.Named(value=Regions) was bound.
while locating java.util.List annotated with @com.google.inject.name.Named(value=Regions)
Run Code Online (Sandbox Code Playgroud)

java guice

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