小编Thi*_*ais的帖子

断点被划掉,我怎样才能使它们有效?

我有一个棘手的问题:

看看断点,他们被划掉了!

我无法设置有效的断点.不在测试中,也不在我的Java类中.我搜索了Stackoverflow和谷歌,但我找不到任何有同样问题的人.

我正在使用STS(x86)和Maven.

编辑:这可能看起来令人困惑,但我自己解决了.我必须去Run-> Skip all Breakpoints(它被设置了,我想知道它是如何设置的,因为我没有这样做)

java eclipse breakpoints sts-springsourcetoolsuite

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

在Node.js中等待多个回调的惯用方法

假设您需要执行一些依赖于某些临时文件的操作.由于我们在这里谈论Node,这些操作显然是异步的.为了知道何时可以删除临时文件,等待所有操作完成的惯用方法是什么?

这是一些显示我想要做的代码:

do_something(tmp_file_name, function(err) {});
do_something_other(tmp_file_name, function(err) {});
fs.unlink(tmp_file_name);
Run Code Online (Sandbox Code Playgroud)

但是如果我这样写,第三次调用可以在前两次有机会使用该文件之前执行.我需要一些方法来保证前两个调用已经完成(调用它们的回调),然后继续运行而不嵌套调用(并使它们在实践中同步).

我想过在回调上使用事件发射器并将计数器注册为接收器.计数器将接收已完成的事件并计算仍有待处理的操作数.当最后一个完成时,它将删除该文件.但是存在竞争条件的风险,我不确定这通常是怎么做的.

Node人如何解决这类问题?

node.js

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

在JSF页面上显示当前日期

是否可以在不使用支持bean的情况下在JSF中显示当前日期(今天)?

我有以下代码片段,但它没有成功.

<div class="leftSide">Today's date #{currentDate}</div>
Run Code Online (Sandbox Code Playgroud)

要么

<f:facet name="header">  
<h:outputText value="Today's date" />  
</f:facet>
<h:outputText value="#currentDate">
    <f:convertDateTime pattern="MM/dd/yyyy" type="date" />
</h:outputText>
Run Code Online (Sandbox Code Playgroud)

jsf-2

42
推荐指数
3
解决办法
6万
查看次数

如何在PL/SQL块中捕获唯一约束错误?

假设我有一个Oracle PL/SQL块,它将记录插入表中,需要从唯一约束错误中恢复,如下所示:

begin
    insert into some_table ('some', 'values');
exception
    when ...
        update some_table set value = 'values' where key = 'some';
end;
Run Code Online (Sandbox Code Playgroud)

为了捕获唯一约束错误,是否可以替换省略号?

oracle plsql

38
推荐指数
3
解决办法
11万
查看次数

你如何在ruby中编写二进制文字?

大多数语言(包含Ruby)允许以至少三个基数编写数字文字:十进制,八进制和十六进制.十进制数字中的数字是常见的事情,写成(大多数)人自然写数字,96写成96.以零为前缀的数字通常被解释为基于八进制:96将被写为0140.基于十六进制的数字通常以前缀为前缀0x:96将被写为0x60.

问题是:我可以在Ruby中将数字写为二进制文字吗?怎么样?

ruby binary

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

通过Javascript进行客户端UI渲染是一个好主意吗?

Web开发的"经典"方法有一段时间以来一直是瘦客户端和厚服务器:服务器生成HTML并将其吐出以供浏览器仅呈现.但是对于当前的浏览器(以及由于良好的库和框​​架的可用性),Javascript现在可以工作了.Web开发人员现在几乎可以假设他们的Javascript代码可以工作并且不再烦恼.

这无疑为网络开发开辟了新的可能性.应用程序现在可以主要由从服务器返回并由浏览器呈现的HTML内容组成,其中一些UI操作在客户端完成.客户端甚至可以向服务器查询用于更新UI部分的新数据.但是我们可以继续下去吗?一个应用程序当然可以设计为一个服务器,只将最简约的JSON粘合到一个厚厚的Javascript客户端,负责构建和控制整个用户界面.是的,这种方法可以严重破坏URL到人们不能再发送指针的程度,但是当然可以设计你的方式(对于某些应用程序,如电子邮件和提要阅读器,这甚至都没有物).

你怎么看?你有没有试过这种方法?事情变得太慢了吗?现代浏览器是否能够处理大量的Javascript代码?浏览器实现之间是否存在任何显着差异,即使使用最新的库,仍会咬住未经修改的开发人员?您认为这种方法适用于哪种应用?它真的适合任何东西吗?

javascript

21
推荐指数
2
解决办法
5746
查看次数

如何从Ruby中的较大字符串中提取单个字符(作为字符串)?

从字符串中检索单个字符作为单字符字符串的Ruby惯用方法是什么?str[n]当然有方法,但是(从Ruby 1.8开始)它返回一个字符代码作为fixnum,而不是字符串.你如何得到一个单字符串?

ruby

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

是否有可以在Windows下使用的GTK终端组件?

我需要构建一个类似终端的应用程序,需要在我常用的Ubuntu安装下使用,但也需要在Windows下使用.我一直在寻找一个接受命令的终端组件,并能够显示某种命令历史记录和输出.

在gnome-terminal中有一个名为VTE的组件,但是我无法在Windows下编译它,因为它依赖于某些特定于Unix的功能(看起来像).你知道其他任何类似终端的GTK组件可以在Windows下构建还是以某种方式构建VTE?

windows gtk

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

打印XMLUnit中所有差异的惯用方法是什么?

我试图覆盖默认的XMLUnit行为,只报告两个输入之间的第一个差异,其中包含发现的所有差异的(文本)报告.

到目前为止我已经完成了这个:

private static void reportXhtmlDifferences(String expected, String actual) {
  Diff ds = DiffBuilder.compare(Input.fromString(expected))
    .withTest(Input.fromString(actual))
    .checkForSimilar()
    .normalizeWhitespace()
    .ignoreComments()
    .withDocumentBuilderFactory(dbf).build();

  DefaultComparisonFormatter formatter = new DefaultComparisonFormatter();
  if (ds.hasDifferences()) {
    StringBuffer expectedBuffer = new StringBuffer();
    StringBuffer actualBuffer = new StringBuffer();
    for (Difference d: ds.getDifferences()) {
      expectedBuffer.append(formatter.getDetails(d.getComparison().getControlDetails(), null, true));
      expectedBuffer.append("\n----------\n");

      actualBuffer.append(formatter.getDetails(d.getComparison().getTestDetails(), null, true));
      actualBuffer.append("\n----------\n");
    }
    throw new ComparisonFailure("There are HTML differences", expectedBuffer.toString(), actualBuffer.toString());
  }
}
Run Code Online (Sandbox Code Playgroud)

但我不喜欢:

  1. 必须遍历Differences客户端代码.
  2. 使用该ComparisonType 进入内部DefaultComparisonFormatter并调用.getDetailsnull
  3. 用线破折号来区分差异.

也许这只是来自一种不合理的坏直觉,但我想知道是否有人对这个用例有一些意见.

java xmlunit-2

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

如何将'this'与函数一起传递?

我想将一些函数调用从一个对象委托给另一个对象:

objA.feature = objA.component.feature;
Run Code Online (Sandbox Code Playgroud)

(假设feature在objA和其组件中都应该是一个函数)

但这显然不起作用,因为this从函数中剥离的引用在被调用时最终成为一个完全不同的对象(它实际上是objA代替objB.component).

你需要写这样的东西才能使它工作:

objA.feature = function() {
    objA.component.feature.apply(objA.component, arguments);
};
Run Code Online (Sandbox Code Playgroud)

是否有更短(惯用)的方式来做到这一点?

javascript

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

在SQL查询期间PL变量可以更改(为什么Oracle不优化我的简单查询)?

今天我偶然发现了一个案例,我很容易将其作为一个简单的优化.

假设您有一个名为my_table列的表,my_column并且您编写了一个存储过程,如下所示:

procedure my_proc(a_value my_table.my_column%type := null) is
begin
    for i in (
        select another_column from my_table
        where  a_value is null or my_column = a_value)
    loop
      -- do something
    end loop;
end;
Run Code Online (Sandbox Code Playgroud)

a_value is null为了select语句,我总是假设表达式是常量,或者纯粹由PL变量和其他常量组成的任何表达式.换句话说,可以在执行查询之前安全地评估它并替换常量.在此代码中,例如,当 a_value未传递时,查询将等效于

select another_column from my_table
Run Code Online (Sandbox Code Playgroud)

相反,当值传递时,查询将等效于

select another_column from my_table
where my_column = a_value
Run Code Online (Sandbox Code Playgroud)

令我惊讶的是,没有进行这种简单的优化.该a_value is null 表达似乎得到了在表中的每个记录,并具有足够大的表来执行,所不同的是引人注意无需任何特殊工具.我正在使用版本10,并将此优化视为很久以前就已经完成的2.0或3.0功能.

显然,必须有一些原因.也许我认为PL变量是SQL查询眼睛常数的假设是不正确的.也许PL变量可以在执行SQL查询期间发生变化.你知道这种情况吗?

oracle plsql

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