草庐IT

java - 在 log4j2 中按类名过滤

我正在使用log4j2,但我不知道如何按类名进行过滤。我试过使用RegexFilter但它只过滤文本消息。在旧的log4j中,标签'filter'就足够了有人知道现在该怎么做吗?提前致谢!更新:好的,我做到了!我需要定义一个记录器并在属性“名称”中设置类名: 最佳答案 如果您遵循记录器的命名约定,这在Log4j中会自动工作。在您的代码中,使用类名声明记录器:Loggerlogger=LogManager.getLogger(MyClass.class);记录器自动分配名称fully.qualified.class.name.of.M

java - 如何在将 HTML 呈现为 PDF 时在 Flying-Saucer 中设置基本 url?

我正在尝试使用Flying-Saucer将HTML页面呈现为PDF。HTML在内存中创建并作为传递给渲染器renderer.setDocumentFromString(newString(htmlByteArray));问题是我有在HTML中,它不会在最终的HTML中呈现。图片位于resources包中的文件夹。我尝试使用以下设置基本url,但没有成功:ITextRendererrenderer=newITextRenderer();renderer.getSharedContext().setBaseURL("com/org/tools/designer/resources/");S

java - 我如何使用 log4j2 为不同的类使用不同的日志记录级别?

在log4j2文档中log4j2javaconfiguration默认配置是这样的:这将向控制台生成ERROR或FATAL级别的日志记录。我的默认日志记录以相同的方式工作。不过,我遇到的问题是当我这样做时:根据文档,log4j2javaconfiguration,这将eliminatealltheTRACEoutputfromeverythingexceptcom.foo.Bar.另一方面,我的实现就像甚至不在那里。它仍然只会打印出错误日志。问题还有其他人遇到过这个问题吗?任何人都可以复制它吗?有人知道如何解决吗?我几乎会给某人一美元。不过,我肯定会满足于将他们的答案标记为绿色。这是关

java - 如何刷新 Log4J2 中的异步记录器(使用中断器)

我通过设置使用Log4J2“使所有记录器异步”部分:-DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector.https://logging.apache.org/log4j/2.x/manual/async.html我处理了很多日志,然后在退出前停止了附加程序:org.apache.logging.log4j.core.LoggercoreLogger=(org.apache.logging.log4j.core.Logger)logger;org.apache.logg

java - 在 Java Swing 中从 HTML 复制 img

JTextPanetext;text.setText("somewordsotherwords");给我这个,这是预期的。但是当我突出显示它并复制粘贴它时,我得到“somewordsotherwords”。复制时在Firefox中完成的相同操作将粘贴“somewords[fire3]otherwords”(它用替代文本代替图像)。有什么方法可以在复制替代文本或复制图片的任何其他迹象时复制这种行为?我猜它不是内置功能,所以我可能需要知道应该重载什么来模仿这种行为。它用于输出/聊天窗口,所以当用户引用它时它包含图像(就像表情一样)很重要更新:成功覆盖了copyAction方法...现在怎么

performance - JPA+Hibernate(J2SE) @OneToMany - 数百万条记录减慢了添加新对象的速度

我在J2SE项目中使用JPA+Hibernate和PostGreSQL数据库。我有2个实体A和B。A与B具有@OneToMany关系。在我的域模型中,A可能引用数百万个B。当我将新对象添加到集合中时,需要几分钟才能完成。@OneToMany(cascade=CascadeType.PERSIST)Collectionfoo=newArrayList();//mightcontainmillionsofrecords//...//thistakesalotoftimefoo.add(newB());我认为JPA在插入新对象之前获取整个集合。是否可以配置关系,以便通过向集合添加新对象时不执

java - Log4j2:日志堆栈跟踪没有异常

我正在使用Log4j2,一些beta-10版本左右。发生异常时很容易记录堆栈跟踪:}catch(Exceptionex){log.error("Doingstuffwentwrong",ex);}假设虽然没有可用的Throwable对象-我只是意识到有问题并想记录错误:if(stuffIsWrong()){log.error("Stuffwentwrong");}我如何告诉Log4j2记录从当前方法开始的堆栈跟踪? 最佳答案 只需创建一个新的异常if(stuffIsWrong()){log.error("Stuffwentwrong

java - 使用 log4j2 将 System.out 写入文件

是否可以像“旧”log4j那样将System.out(OutputStream)直接写入日志文件?我只找到log4j的解决方案,没有找到log4j2感谢您的帮助! 最佳答案 使用log4j2-iostreams模块非常容易。假设我们要将所有消息从System.out发送到名称为system.out且日志级别为INFO的记录器:System.setOut(IoBuilder.forLogger(LogManager.getLogger("system.out")).setLevel(Level.INFO).buildPrintStre

java - 使用 Log4j2 2.10.0 运行 Java 9 模块

我正在尝试运行我创建的使用Log4j22.10.0的Java9模块。我遇到的问题是我得到了java.lang.NoClassDefFoundError:Couldnotinitializeclassorg.apache.logging.log4j.util.PropertiesUtil在执行LogManager.getLogger()时。它发现LogManager类很好,但是当它从StatusLogger内部调用newPropertiesUtil("log4j2.StatusLogger.properties")时,它会收到上述错误。如何修复/找到解决方法?添加信息:堆栈跟踪:Exce

java - 从 Controller 转发到静态 html 页面

我的springmvc应用程序有一个ContentNegotiatingViewResolver,它定义了JsonView以呈现json响应:整个应用程序位于根url“myapp”上。一切如我所愿。第一个问题是:如何在访问某个url时返回静态html页面?比如说,在访问Springuri/myapp/test时,我想呈现一个位于根webapp文件夹中的html页面/TestStuff.html。我继续写了一个简单的Controller:@Controller@RequestMapping("test")publicclassTestConnector{@Autowiredprivate