小编Pra*_*eek的帖子

显示多行文本的每行日志

说我有一个多行文字"a \nb \nc"; 当我记录它时,例如使用"debug"方法,我只得到一个日志;

这是预期的行为,但是输出中左侧也会显示排除第一行的行:

1234 [1] [DEBUG] Test - a
b
c
1235 [1] [DEBUG] Test - ...
Run Code Online (Sandbox Code Playgroud)

一个简单的解决方法是每行生成一个日志以获取:

1234 [1] [DEBUG] Test - a
1235 [1] [DEBUG] Test - b
1236 [1] [DEBUG] Test - c
1237 [1] [DEBUG] Test - ...
Run Code Online (Sandbox Code Playgroud)

_

有没有办法自动进行这种处理,还是应该编写一个简单的包装来管理这个设置?

_

提前致谢.

logging log4net log4j

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

Application.ThreadException与AppDomain.UnhandledException

首先是一些背景:我有一个多线程WinForms应用程序正在与本机dll互操作.这个应用程序有时会因未处理的异常而崩溃,我们正试图调查它为什么会发生.为了方便它,我正在创建一个全局异常处理程序,我计划从中生成进程转储文件.

现在提出疑问:截至目前,这个应用程序有处理程序,Application.ThreadException但它仍然与未处理的异常崩溃.我正在考虑添加一个处理程序,AppDomain.UnhandledException虽然我不确定它是否会有所帮助.在这种情况下是否存在任何可能未被处理的未处理异常Application.ThreadException

c# exception-handling crash-dumps winforms

12
推荐指数
2
解决办法
5903
查看次数

是.net系统范围内的垃圾收集器还是应用程序范围内的垃圾收集器?

在与我的同事讨论期间,我怀疑.net中的垃圾收集器是在系统范围内还是在应用程序范围内工作.

意味着每个具有自己的GC的应用程序是否会影响系统性能?

我对此有点困惑.

.net c# garbage-collection

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

扔VS重新抛出:同样的结果?

在网上引用了很多文档,尤其是关于SO的文档,例如:在C#中重新抛出异常的正确方法是什么? "扔e"之间应该有区别 和"扔".

但是,来自:http://bartdesmet.net/blogs/bart/archive/2006/03/12/3815.aspx,

这段代码:

using System;

class Ex
{
   public static void Main()
  {
  //
  // First test rethrowing the caught exception variable.
  //
  Console.WriteLine("First test");
  try
  {
     ThrowWithVariable();
  }
  catch (Exception ex)
  {
     Console.WriteLine(ex.StackTrace);
  }

  //
  // Second test performing a blind rethrow.
  //
  Console.WriteLine("Second test");
  try
  {
     ThrowWithoutVariable();
  }
  catch (Exception ex)
  {
     Console.WriteLine(ex.StackTrace);
  }
}

 private static void BadGuy()
 {
   //
   // Some nasty behavior.
  //
   throw new Exception();
 }

   private …
Run Code Online (Sandbox Code Playgroud)

c# exception-handling throw rethrow

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

为什么GC将对象放在终结队列中?

据我所知,一旦我实现了类的析构函数,c#中的垃圾收集器就会将类的所有对象放入终结队列中.当我阅读GC.Suppresfinalize的文档时,它提到对象头已经设置了一个用于调用finalize的位.

我想知道为什么GC的实现者必须将所有对象放入队列中,并将内存释放延迟1-2个周期.他们不能只是在释放内存时查看位标志,然后调用对象的finalize然后释放内存?

毫无疑问,我是一个白痴,我无法理解GC的工作.我提出这个问题只是为了增进我的理解或填补我所知的缺失空白

编辑:如果位标志用于suppressfinalize,GC实现者可能为此目的在对象头中添加了另一个标志,不是吗?

.net c# garbage-collection

10
推荐指数
2
解决办法
6281
查看次数

在Swing应用程序中显示HTML表单并与之交互

应用程序生成一些应该在应用程序本身中显示的HTML页面.

这些HTML页面包含一些用户可用于输入某些值的表单.

到目前为止,我已经使用了一个完美呈现HTMLJTextPane,但我不知道如何与表单进行交互以检索用户输入的值.

_

是否可以使用JTextPane/JEditorPane执行此操作?

如果不是,您现在是否有其他方式与HTML表单进行交互?

_

编辑:以下tulskiy说明结果如下:

package tests;

import javax.swing.*;
import javax.swing.event.*;
import javax.swing.text.html.*;

import org.junit.Test;


public class JTextPaneTests
{
    @Test
    public void testForms() throws Exception
    {
        javax.swing.SwingUtilities.invokeLater(
            new Runnable()
            {
                public void run()
                {
                    javax.swing.JFrame jf = new javax.swing.JFrame();
                    jf.setSize(300,300);
                    jf.setVisible(true);
                    jf.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);

                    JTextPane textPane = new JTextPane();
                    textPane.setContentType("text/html");
                    textPane.setEditable(false);
                    textPane.setText(
                            "<html>" +
                                "<body>" +
                                    "<form action=\"#\">" +
                                        "<input name=\"input1\" type=\"text\" />" +
                                        "<input name=\"input2\" …
Run Code Online (Sandbox Code Playgroud)

html java forms swing jeditorpane

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

如何强制MS Access保留其SQL格式?

我在MS-Access中有很多SQL工作,我需要格式化,以便它是人类可读的.问题是当我在视图之间进行切换时,最终会将SQL压缩成我无法读取的内容.

当我转到其他视图时,如何强制SQL保留其"形状"?

sql ms-access code-formatting

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

重载Math.sqrt:重载方法似乎隐藏了原始方法

试图重载类型的java.lang.Math.sqrt静态方法int:

import static java.lang.Math.sqrt;

class Test
{
    private static double sqrt(int n)
    {
        return sqrt(1.0 * n);
    }

    public static void main(String[] args)
    {
        System.out.println(sqrt(1));
    }
}
Run Code Online (Sandbox Code Playgroud)

出现奇怪的错误:

Test.java:7: sqrt(int) in Test cannot be applied to (double)
                return sqrt(1.0 * n);
                       ^
1 error
Run Code Online (Sandbox Code Playgroud)

但是当明确引用该java.lang.Math.sqrt方法时,一切正常:

class Test
{
    private static double sqrt(int n)
    {
        return Math.sqrt(1.0 * n);
    }

    public static void main(String[] args)
    {
        System.out.println(sqrt(1));
    }
}
Run Code Online (Sandbox Code Playgroud)

使用的编译器是标准的javac,版本1.6.0_16.

所以问题是: …

java methods static overloading

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

WPF按钮需要两次点击才能触发Click事件

我有一个TabItem,其中包含一个日历控件和一个按钮.问题是,当日历的选定日期与先前选择的日期相同时,该按钮需要两次单击才能触发其Click事件.

我已经实现了日历的selectedDatesChanged事件,以便在当前所选日期与上一个选择不同时解决此问题.代码如下:

selectedDatesChanged(object sender, SelectionChangedEventArgs e)
{
    this.CaptureMouse();
    this.ReleaseMouseCapture();
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找的是当日历的selectedDate与先前选择的日期没有不同时,在上述函数中显示相同效果的方法.我尝试处理GotFocus和MouseUp事件,但它没有解决问题.

有没有人对如何解决这个问题有任何想法?

谢谢,Naveen

wpf controls calendar focus

9
推荐指数
2
解决办法
5701
查看次数

将聚合结果插入索引

目标是构建一个Elasticsearch索引,其中只包含相关文档组中的最新文档,以跟踪某些监视计数器和状态的当前状态.

我制作了一个简单的Elasticsearch聚合查询:

{
  "size": 0,
  "aggs": {
    "group_by_monitor": {
      "terms": {
        "field": "monitor_name"
      },
      "aggs": {
        "get_latest": {
          "top_hits": {
            "size": 1,
            "sort": [
              {
                "timestamp": {
                  "order": "desc"
                }
              }
            ]
          }
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

它将相关文档分组到存储桶中,并为每个存储桶选择最新文档.

以下是我完成工作所需的不同想法:

  1. 直接使用聚合查询将结果推送到索引中,但似乎不可能:是否可以将ElasticSearch聚合的结果放回索引中?
  2. 使用Logstash Elasticsearch输入插件执行聚合查询和Elasticsearch输出插件以推入索引,但似乎输入插件只查看hits字段并且无法处理聚合结果:聚合查询可能的输入ES插件!
  3. 使用Logstash http_poller插件获取JSON文档,但似乎不允许为HTTP请求指定正文!
  4. 使用Logstash exec插件执行cURL命令来获取JSON,但这似乎非常麻烦,我的最后一.
  5. 使用NEST API构建一个基本应用程序,它将进行轮询,提取结果,清理它们并将结果文档注入目标索引,但我想避免添加一个新工具来维护.

是否有一种相当复杂的方法来实现这一目标?

elasticsearch logstash nest kibana elasticsearch-aggregation

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