小编Ond*_*žka的帖子

Java注释顺序是否持久?

Java注释顺序是否在运行时持久存在?我检查了OpenJDK 1.7.0_21 - 它保留了注释顺序.我可以期待所有Java VM上的持久性吗?

java reflection annotations

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

在javascript中解压缩字符串

有人知道实现UNZIP算法的简单JavaScript库吗?没有磁盘文件访问权限,只能压缩和解压缩一串值.

有一些ActiveX,使用WinZIP和其他客户端相关的ZIP软件,用JS编写.但是没有纯JavaScript算法实现.

我会用它来显示带有GMap对象(谷歌地图)的HTML页面中的KMZ文件.KMZ文件只是一个压缩的KML文件.我想解压缩KMZ文件并将KML提供给GMap.

javascript zip google-maps unzip kml

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

记录:Slf4j flush()?

我需要刷新所有slf4j记录器,是否可以在不使用特定于实现的代码的情况下这样(比如在如何刷新缓冲的log4j FileAppender??(我使用slf4j-log4j12 ver.1.5.11)

重新制定: 如何在slf4j API中刷新appender?

实际上我认为没办法,请参阅http://bugzilla.slf4j.org/show_bug.cgi?id=211上的我的RFE .而是要求案件我错过了一些东西.

如果我选择使用Log4j API,我可以从这里尝试两种解决方案中的任何一种:
如何刷新缓冲的log4j FileAppender?

谢谢,Ondra

java logging log4j flush slf4j

6
推荐指数
0
解决办法
3061
查看次数

Jetty:以编程方式停止导致"1个线程无法停止"

我有一个嵌入式Jetty 6.1.26实例.我希望通过发送的HTTP GET将其关闭/shutdown.所以我创建了一个JettyShutdownServlet:

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

 resp.setStatus(202, "Shutting down.");
 resp.setContentType("text/plain");
 ServletOutputStream os = resp.getOutputStream();
 os.println("Shutting down.");
 os.close();
 resp.flushBuffer();

 // Stop the server.
 try {
    log.info("Shutting down the server...");
    server.stop();
 } catch (Exception ex) {
    log.error("Error when stopping Jetty server: "+ex.getMessage(), ex);
 }
Run Code Online (Sandbox Code Playgroud)

但是,当我发送请求时,Jetty不会停止 - 一个线程一直挂org.mortbay.thread.QueuedThreadPool在线上this.wait():

   // We are idle
   // wait for a dispatched job
   synchronized (this)
   {
       if (_job==null)
          this.wait(getMaxIdleTimeMs());
       job=_job;
       _job=null;
   } …
Run Code Online (Sandbox Code Playgroud)

java shutdown jetty

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

我在哪里可以下载JBoss AS7文档?

我在哪里可以下载JBoss AS7文档?

我试图在任何地方(包括http://www.jboss.org/)找到下载JBoss文档的链接,但是失败了.

java java-ee jboss7.x

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

泽西岛多部分流式传输,而接收服务器上没有磁盘缓冲

我正在尝试通过HTTP将(大)文件流式传输到数据库中。我正在使用Tomcat和Jersey作为Webframework。我注意到,如果我将文件发布到资源中,则该文件首先在磁盘上(在temp \ MIME * .tmp}中进行缓冲,然后再通过doPOST方法进行处理。

这确实是不希望的行为,因为它会使磁盘I / O翻倍,并且还会导致UX出现问题,因为如果浏览器已经完成上传操作,则用户需要等待几分钟(当然取决于文件大小),直到他得到HTTP响应。

我知道这可能不是大型文件上传的最佳实现(因为您甚至没有任何恢复功能),但要求也是如此。:/

所以我的问题是,是否有任何方法可以禁用MULTIPART POST的(磁盘)缓冲。内存缓冲显然太昂贵了,但是我真的看不出是否需要磁盘缓冲吗?(请解释)像YouTube这样的大型网站如何处理这种情况?或者如果发送了文件,是否至少有机会立即向用户提供反馈?(应该很糟糕,因为可能仍然有类似SQLException的东西)

tomcat web-services multipartform-data stream jersey

6
推荐指数
2
解决办法
2777
查看次数

JBoss AS 7的部署内容在哪里

我是JBoss AS 7的新手.我试图在JBoss AS 7上部署我的war文件,这似乎工作正常.我的问题是我可以看到部署的内容.

我希望它就像Tomcat一样,它应该有一个探索过的war文件夹,在哪里可以保存已部署的内容.JBoss AS 7有这样的东西吗?

jboss

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

Maven:发布插件在<distributionManagement>中看不到我的<repository>

为了使Maven"部署"到目录,我使用这个:

<distributionManagement>
    <downloadUrl>http://code.google.com/p/junitdiff/downloads/list</downloadUrl>
    <repository>
        <id>local-hack-repo</id>
        <name>LocalDir</name>
        <url>file://${project.basedir}/dist-maven</url>
    </repository>
    <snapshotRepository>
        <id>jboss-snapshots-repository</id>
        <name>JBoss Snapshots Repository</name>
        <!--
        <url>https://repository.jboss.org/nexus/content/repositories/snapshots</url>
        -->
        <url>file://${project.basedir}/dist-maven</url>
    </snapshotRepository>
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)

这出现在有效的pom中.

...
<distributionManagement>
<repository>
  <id>local-hack-repo</id>
  <name>LocalDir</name>
  <url>file:///home/ondra/work/TOOLS/JUnitDiff/github/dist-maven</url>
</repository>
<snapshotRepository>
  <id>jboss-snapshots-repository</id>
  <name>JBoss Snapshots Repository</name>
  <url>file:///home/ondra/work/TOOLS/JUnitDiff/github/dist-maven</url>
</snapshotRepository>
<downloadUrl>http://code.google.com/p/junitdiff/downloads/list</downloadUrl>
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)

但是,Maven坚持认为它不存在:

[INFO] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project JUnitDiff: Deployment failed: repository element was not specified in the POM inside distributionManagement element or in -DaltDeploymentRepository=id::layout::url parameter -> [Help 1]
[INFO] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project JUnitDiff: Deployment …
Run Code Online (Sandbox Code Playgroud)

deployment repository maven maven-deploy-plugin

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

在两个顶点之间找到边的正确方法是什么?

使用tinkerpop blueprints API,找到两个顶点之间是否存在边缘的最佳方法是什么?我想避免vertex.getEdges()和迭代,直到找到正确的.

例如:检查是否v1是朋友v2

Vertex v1 = g.addVertex(null);
Vertex v2 = g.addVertex(null);
Edge edge = g.addEdge(null, v1, v2, "friends");
Edge edge = g.addEdge(null, v1, v2, "follows");

// Node with lots of edges - Supernode - problem?
List<Edge> edges = new ArrayList<Edge>();
for(Edge edge : g.getVertex(v1.getId()).getEdges(Direction.OUT, "friends")){
   if(edge.getVertex(Direction.IN).getId().equals(v2.getId()){
      edges.add(edge);
  }
}
Run Code Online (Sandbox Code Playgroud)

我应该使用顶点查询吗?


通过gremlin我能做到:

g.v(v1.getID()).outE("friends").inV.filter{it.id == v2.getID}
Run Code Online (Sandbox Code Playgroud)

Neo4j方式:

IndexHits<Relationship> relationships = relationshipIndex().get("type", edgeType, node1, node2);
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助!我还是新手.

graph neo4j graph-databases titan tinkerpop

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

如何在代码中获取Spring应用程序启动时间/持续时间

当我启动 Spring 应用程序时,我可以在控制台中看到启动时间(我使用的是 IntelliJ IDEA)。

例如,下面的日志显示应用程序的启动时间为 13.427 秒。

2016-12-29 13:58:05.491     : Starting Application on 8DSXD72 with PID 14120 
2016-12-29 13:58:05.518     : Running with Spring Boot v1.4.1.RELEASE, Spring v4.3.3.RELEASE
2016-12-29 13:58:05.519     : The following profiles are active: LOCAL
2016-12-29 13:58:15.537     : JMX is disabled
....
2016-12-29 13:58:17.392     : Started Application in 13.427 seconds (JVM running for 14.71)
Run Code Online (Sandbox Code Playgroud)

有没有办法在代码中获取这个启动时间?我想在 Spring 端点中打印出应用程序启动时间/info

spring spring-boot

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