小编And*_*dna的帖子

将jar提取到指定目录

我想使用jar命令行实用程序将我的一个jar提取到指定的目录.

如果我理解这个正确的-C选项应该诀窍但是当我尝试

jar xvf myJar.jar -C ./directoryToExtractTo
Run Code Online (Sandbox Code Playgroud)

我从我的jar实用程序获取使用信息,所以我做错了.

是我想要实现的东西,jar或者我需要手动移动我的罐子并在那里调用

jar xvf myJar.jar
Run Code Online (Sandbox Code Playgroud)

java command jar

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

UML聚合与关联

我在这里,关于聚合和关联的另一个问题.我想学习一些UML的基础知识,所以我开始阅读Martin Fowler撰写的"UML精简版".我阅读了关于课程的两章,有一件事我想不到,那就是聚合与关联.在这本书中有这样的引用:

在UML之前的日子里,人们通常对聚合和关联是相当模糊的.无论是否含糊,它们总是与其他人不一致.因此,尽管出于不同的原因,许多建模者认为聚合很重要.因此UML包含聚合(图5.3),但几乎没有任何语义.正如Jim Rumbaugh所说,"把它想象成一个建模安慰剂" [Rumbaugh,UML Reference].

正如我从Stack Overflow上的这个引用和主题中所理解的那样,我使用这两个关系中的哪一个并不重要,它们的意思相同,或者是否有任何使用聚合而不是关联的情况是合理的和/或我不能改变一个到另一个而不改变类图的"含义"?

我问这个,因为这本书是从2003年开始的,有些事情可能会在这几年内发生变化.

uml associations aggregation

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

java字节码 - 小于int的类型的表示

在我大学的一个项目中,我直接使用Java字节码.

在浏览了可用于JVM的指令列表(http://en.wikipedia.org/wiki/Java_bytecode_instruction_listings)之后,我发现不存在[b|c|s]store,istore用于在局部变量中存储整数的事情.这是否意味着如果在我的程序中我写:

short a;
int b;
Run Code Online (Sandbox Code Playgroud)

我没有保存任何内存,因为每个局部变量条目占用4个字节?

我一直认为使用shortbyte类型将在运行时节省一些内存.

java jvm bytecode

18
推荐指数
1
解决办法
1932
查看次数

UML关联多样性

我有一个关于关联的问题,确切地说我想知道多重性,我理解这些,但是例如,如果我有:

 ---------            ---------
|         |1      *  |         |
|CLASS    |----------| STUDENT |
|         |          |         |
 ---------            ---------
Run Code Online (Sandbox Code Playgroud)

剂量意味着在系统存在期间的任何一点,必须至少有一名学生被分配到该班级,或者如果系统正常运行,那么这些多项应该是真的.

我在问这个问题,因为我想知道创造一个物体的那一刻.首先,我们创建一个空类,然后与学生一起填充.有一段时间这个课程是空的,但只有在创作和填充期间,它至少有一个学生.因为如果我将1更改为0..1它会建议可以有空类,它不是假的(这个填充的时刻)但后来我不想允许没有学生的课程.

编辑:改变0 ..*到0..1,它应该像现在一样,抱歉混淆.

uml associations

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

当Kafka从Python脚本开始时,kafka-server-stop.sh无法正常工作

在远程节点上部署一些Apache Kafka实例后,我观察到了kafka-server-stop.sh作为Kafka存档一部分的脚本问题.

默认情况下,它包含:

#!/bin/sh
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
# 
#    http://www.apache.org/licenses/LICENSE-2.0
# …
Run Code Online (Sandbox Code Playgroud)

python linux apache-kafka

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

Gnu时间和格式输出

我想用gnu时间测量一些小.c程序的运行时间.在这个人写的是:

-f FORMAT, --format FORMAT
Use FORMAT as the format string that controls the output of time.  See the below more information.
Run Code Online (Sandbox Code Playgroud)

然后在示例中我们有:

To run the command `ls -Fs' and show just the user, system, and total time:
time -f "%E real,%U user,%S sys" ls -Fs
Run Code Online (Sandbox Code Playgroud)

但是当我尝试从示例中发出此命令时,我得到:

time -f '%E real,%U user,%S sys' ls -Fs
-f: command not found

real    0m0.134s
user    0m0.084s
sys     0m0.044s
Run Code Online (Sandbox Code Playgroud)

我想知道问题出在哪里,我在哪里弄错了?我只是想显示用户时间,这就是为什么我玩弄时间输出格式.

linux gnu

13
推荐指数
1
解决办法
5226
查看次数

Tomcat和JDBC连接池

我正在尝试使用tomcat建立与mysql数据库的连接池.我的简单应用程序叫做Projekt,在我的Apache/conf/Catalina/localhost的Projekt.xml中

<Context docBase="Projekt.war" path="/Projekt">
  <Resource name="jdbc/mysqldb"
      auth="Container"
  factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
      type="javax.sql.DataSource"
      driverClassName="com.mysql.jdbc.Driver"
      url="jdbc:mysql://localhost:3306/Music"
      username="andrzej"
      password="qazxsw"
      maxActive="20"
      maxIdle="30"
      maxWait="5"
  />
</Context> 
Run Code Online (Sandbox Code Playgroud)

我的应用程序的web.xml

<servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>org.jtp.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/Hai</url-pattern>
</servlet-mapping>

<resource-ref>     
        <description>DB Connection</description>     
       <res-ref-name>jdbc/mysqldb</res-ref-name>     
       <res-type>javax.sql.DataSource</res-type>     
       <res-auth>Container</res-auth>     
 </resource-ref>
Run Code Online (Sandbox Code Playgroud)

在我的Apache/lib文件夹中

mysql-connector-java-5.1.18-bin.jar
Run Code Online (Sandbox Code Playgroud)

但是当我执行这段代码时:

Context initContext  = new InitialContext();
dataSource = (DataSource)initContext.lookup("java:comp/env/jdbc/mysqldb");
System.out.println(dataSource.getConnection().createStatement().
            execute("select * from Users"));
Run Code Online (Sandbox Code Playgroud)

我得到例外

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
Run Code Online (Sandbox Code Playgroud)

我现在很困惑,在某些地方我读到它可能是由于没有将驱动程序放在tomcat/lib中引起的,但我有它并且它有效,因为当我用手动连接测试驱动程序时它起作用了.

对于我的设置,我试图关注 http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html

编辑:最后让它工作,似乎我在其中一个文件中有一些左上下文标记,所以在解析时它覆盖了其他属性,所以这是我最后的错.

java mysql tomcat servlets jdbc

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

转发不会更改浏览器地址栏中的URL

我刚开始使用Servlets/JSP/JSTL,我有类似这样的东西:

<html>
<body>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<jsp:directive.page contentType="text/html; charset=UTF-8" />

<c:choose>
  <c:when test='${!empty login}'>
    zalogowany
  </c:when>
<c:otherwise>
   <c:if test='${showWarning == "yes"}'>
        <b>Wrong user/password</b>
    </c:if>
    <form action="Hai" method="post">
    login<br/>
     <input type="text" name="login"/><br/>
     password<br/>
     <input type="password" name="password"/>
     <input type="submit"/>
     </form>
  </c:otherwise>
</c:choose>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

并在我的doPost方法

protected void doPost(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException 
{
    HttpSession session=request.getSession();
    try
    {
        logUser(request);
    }
    catch(EmptyFieldException e)
    {
        session.setAttribute("showWarning", "yes");
    } catch (WrongUserException e) 
    {
        session.setAttribute("showWarning", "yes");
    }
    RequestDispatcher d=request.getRequestDispatcher("/index.jsp");
    System.out.println("z");
    d.forward(request, response);
}
Run Code Online (Sandbox Code Playgroud)

但有些东西不起作用,因为我想要这样的东西:

  1. 如果用户有活动会话并且已登录到系统"zalogowany"应该显示 …

java jsp servlets jstl

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

Pthread线程和信号

我在Linux下使用pthread库来创建线程,我在这些应用程序中有两个关于信号处理的问题.

我知道信号处理程序是进程范围的,这意味着如果我在进程中设置处理程序,每个线程都将有这个信号处理程序,我也知道有pthread_kill向特定线程发送信号的功能.

我有一个关于使用例如shell kill命令发送信号的问题,据我所知,如果我键入例如kill -INT PID我将发送SIGINT到此进程PID,如果这是多线程程序,信号将被传递到此进程中的一个线程.

第一个问题,我不能保证这个信号将被传送到哪个线程,我只能确定它会在没有信号掩码信号的情况下被传送到一个线程吗?

如果是这样,那么传递给特定线程的信号很少,比如'SIGFPE','SIGSEGV',如果我将使用killshell命令发送它们,它们将被传递到随机线程,还是会被传递给创建其他线程的线程?

linux signals pthreads

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

Angular.js和ng-switch-when - 模拟枚举

我想为我的控制器逻辑引入一些enum用于某些类型的安全性,所以例如我创建了这样的东西:

var app = angular.module('myApp', []);
var StateEnum = Object.freeze({"login":1, "logout":2})
function LoginCheckCtrl($scope) {
    $scope.stateEnum = StateEnum
    $scope.loginData = StateEnum.login
    $scope.login = function() {
        console.log($scope.loginData  ? 'logged in' : 'not logged in');
        $scope.loginData = StateEnum.logout;
    };
    $scope.logout = function() {
        console.log($scope.loginData ? 'logged in' : 'not logged in');
        $scope.loginData = StateEnum.login;
    };
}
Run Code Online (Sandbox Code Playgroud)

在我的示例页面中,我会有这样的事情:

<div ng-controller="LoginCheckCtrl">
   <div ng-switch on="loginData"> 
      <div ng-switch-when="stateEnum.login" ng-include="'login'"></div>
      <div ng-switch-when="stateEnum.logout" ng-include="'logout'"></div>
   </div>
</div>

<script type="text/ng-template" id="login">
    <button ng-click="login()">Login</button>
</script>

<script type="text/ng-template" id="logout">
    <button ng-click="logout()">Logout</button>
</script>
Run Code Online (Sandbox Code Playgroud)

但 …

javascript enums angularjs

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