使用Spring MVC HandlerInterceptorAdapter从HttpServletResponse记录响应主体(HTML)

我正在尝试记录(仅为了简单起见,现在是控制台写入)最终呈现的HTML将由HttpServletResponse返回。 (即正文)为此,我使用Spring MVC中的HandlerInterceptorAdapter,如下所示: public class VxmlResponseInterceptor extends HandlerInterceptorAdapter { @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { System.out.println(response.toString()); } } 这按预期工作,我在控制台中看到HTTP响应标头。 我的问题是,是否有一种相对简单的方法可以将整个响应体(即最终呈现的HTML)记录到控制台,而无需使用PrintWriters,OutputStream等进行跳跃。 提前致谢。

JScrollPane – 相对于鼠标位置进行缩放

我需要在放大图像时计算视口的新位置。 UI构建如下: ImagePanel绘制图像 ImagePanelWrapper是围绕imagePanel的JPanel JScrollPane包含ImagePanelWrapper 放大或缩小时,ImagePanel的缩放系数会发生变化,并且会重新计算ImagePanel的首选大小。 因此,即使ImagePanel停留在相同的视口点,此面板上的图像也会移动。 当用户按住CTRL并使用鼠标滚轮时,将调用以下方法。 给定的点是MouseWheelListener提供的光标位置。 通过这些方法的function,当放大或缩小时,图像已经停留在相同的左上角位置。 问题是我只是想弄清楚如何相对于鼠标移动,例如Paint.NET。 有任何想法吗? /** * */ public void zoomOut(Point point) { this.imagePanel.setZoom(this.imagePanel.getZoom() * 0.9f); Point pos = this.getViewport().getViewPosition(); int newX = (int) (pos.x * 0.9f); int newY = (int) (pos.y * 0.9f); this.getViewport().setViewPosition(new Point(newX, newY)); this.imagePanel.revalidate(); this.imagePanel.repaint(); } /** * */ public void zoomIn(Point point) { […]

在处理给定的数据集时,如何为zlib’setDictionary’找到一个好的/最佳的字典?

我有一组(巨大的)类似的数据文件。 该集合不断增长。 单个文件的大小约为10K。 每个文件都必须自己压缩。 压缩是使用zlib库完成的,该库由java.util.zip.Deflater类使用。 使用setDictionary将字典传递给Deflate算法时,我可以提高压缩率。 有没有办法(算法)找到’最佳’字典,即具有整体最佳压缩比的字典? 请参阅zlib手册

java Jersey 2.1客户端线程安全吗?

针对jersey 2.0的文档说 : 客户端实例是昂贵的资源。 建议重新使用已配置的实例来创建Web资源。 Web资源的创建,请求的构建和响应的接收都保证是线程安全的。 因此,可以在多个线程之间共享Client实例和WebResource实例 客户端在2.1版中仍然是线程安全的吗? 我在2.1的文档中找不到有关线程安全的信息。

最佳实践:Java静态非最终变量

在Java中,何时应该使用静态非最终变量? 例如 private static int MY_VAR = 0; 显然我们不是在谈论常数。 public static final int MY_CONSTANT = 1; 根据我的经验,我经常在使用单身时certificate他们是合理的,但后来我最终需要有多个实例并导致自己非常头痛和重新分解。 它们似乎很少应该在实践中使用。 你怎么看?

Java中实例和类(静态)变量之间有什么区别

这个问题的标题实际上是以前的考试问题,我正在寻找澄清/答案。 请注意,我正在学习Java并且正在熟悉它的语法。 我知道之前可能已经提出过这个问题,如果有的话,有人可以告诉我,如果可能的话,我可以在哪里提出问题吗? 如果是这种情况,请接受我的道歉。 为了表明我一直在研究这个领域,我自己的理解是实例变量属于某个类(模板)的对象/实例,并且可以在需要时在该实例/对象中进行更改(变异)。 类变量是一个只有一个副本且可以访问但不能修改(变异?)的变量,但是所有类都可以根据需要使用它? 我在这里走在正确的轨道上吗? 另外,’静态’到底是做什么的? 如果一个类的实例位于类的主实例中,那么它是否只是静态的? 非常感谢。

如何使用带有AES和PBE的Bouncy Castle轻量级API

我有一块使用JCE算法“PBEWithSHA256And256BitAES-CBC-BC”创建的密文。 提供者是BouncyCastle。 我想做的是使用BouncyCastle轻量级API解密这个密文。 我不想使用JCE,因为这需要安装Unlimited Strength Jurisdiction Policy Files。 在使用BC与PBE和AES时,文档似乎很薄。 这是我到目前为止所拥有的。 解密代码无例外地运行但返回垃圾。 加密代码, String password = “qwerty”; String plainText = “hello world”; byte[] salt = generateSalt(); byte[] cipherText = encrypt(plainText, password.toCharArray(), salt); private static byte[] generateSalt() throws NoSuchAlgorithmException { byte salt[] = new byte[8]; SecureRandom saltGen = SecureRandom.getInstance(“SHA1PRNG”); saltGen.nextBytes(salt); return salt; } private static byte[] encrypt(String […]

如何使用javax.mail读取邮件正文中的文本

我正在使用javax.mail开发客户端邮件来读取邮箱内的邮件: Properties properties = System.getProperties(); properties.setProperty(“mail.store.protocol”, “imap”); try { Session session = Session.getDefaultInstance(properties, null); Store store = session.getStore(“pop3”);//create store instance store.connect(“pop3.domain.it”, “mail.it”, “*****”); Folder inbox = store.getFolder(“inbox”); FlagTerm ft = new FlagTerm(new Flags(Flags.Flag.SEEN), false); inbox.open(Folder.READ_ONLY);//set access type of Inbox Message messages[] = inbox.search(ft); String mail,sub,bodyText=””; Object body; for(Message message:messages) { mail = message.getFrom()[0].toString(); sub = […]

在Java中选择文件夹目标?

我是Java的新手。 我正在尝试动态选择文件位置以保存项目的结果(在项目的最开始时启动)。 我使用了一些FileDialog示例,但是每个示例都允许我选择一个文件而不是文件夹。 任何人都可以帮我一个示例(或)链接到同一个?

解释eclipse .classpath文件。 什么’kind =“con”’和’exported =“true”’是什么意思?

这是我下载的eclipse插件程序的eclipse .classpath文件。 我认为kind=”src”和kind=”output”非常简单,因为它们意味着源java文件和编译类文件所在的位置。 kind=”lib”似乎表示插件引用的jar文件,但我有一些我不确定的东西。 kind=”con”是什么意思? 它对于exported=”true”什么? 我认为为了使用这个插件,应该导出插件引用的所有jar文件,但只导出其中的一些。