小编Ruc*_*era的帖子

如何在Tomcat 7中记录请求/响应的所有标头

我正在尝试在Tomcat 7中记录请求/响应的所有标头.我尝试使用access-log-valve.但正如链接中所提到的,我们只能逐个打印标题.我们必须指定我们需要的每个标头.

例如

pattern="%{User-Agent}i %{Content-Type}i %{Accept}i %{Accept-Encoding}i
%{Accept-Language}i %{Accept-Charset}i %r %h %q"
Run Code Online (Sandbox Code Playgroud)

有没有办法一次记录所有标题,可能使用通配符?

谢谢.

logging tomcat tomcat7

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

JVM在java.util.zip.ZipFile.getEntry中崩溃

以下日志文​​件导致JVM崩溃.

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f60ddce2058, pid=117268, tid=140052313204480
#
# JRE version: Java(TM) SE Runtime Environment (7.0_51-b13) (build 1.7.0_51-b13)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.51-b03 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libzip.so+0x5058]  ZIP_GetEntry+0x78
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again …
Run Code Online (Sandbox Code Playgroud)

java linux zip jboss jvm-crash

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

使JList值无法选择

我想知道如何修改一个,JList以便点击任何值都不会做任何事情.我看过其他问题,但没有人帮忙.

java swing jlist

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

Java中的Primitive vs Object类型

这个问题在我脑海中浮现,因为我在某处读过Java不是纯粹的面向对象语言,因为它使用的是原语(不是对象).我可以同意.现在我的问题是我们在使用primitives/wrappers相同类型的Object时使用的原因?

作为一个例子,如果我们考虑Integer,它具有与int对象行为不同的值限制.为什么Java仍然primitives在这些条件下使用?

正如我的观点,如果Java只使用对象类型Autoboxing和Unboxing不需要.顺便说一下,String也没有原语.

java primitive object

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

在html <a>上使用javascript变量

我有这个javascript代码:

<script ="text/javascript">
    var newUrl=window.location.href;
    var pathArray="";
    pathArray=newUrl.substr(newUrl.lastIndexOf("?")+1);
</script>
Run Code Online (Sandbox Code Playgroud)

我想使用pathArray变量作为标签上href的一部分

这是我的HTML代码

<a href="game.html?"+pathArray>
  <img src="img/RestartButton.png" style="position:absolute;
  left:80px; top:220px">
</a>
Run Code Online (Sandbox Code Playgroud)

但似乎它不读取变量的值,而是它的名称.

html javascript variables

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

包含空变量的Java对象是否为反模式?如果是这样的话?

如果我查询一个对象说一个动物,并且返回的对象不是null但是包含空变量是错误的吗?比如我可以打电话animal.getDeathDate(); 因为它还没死,但它返回null.因为Turtle getFlightSpeed()会返回null,因为它在添加了Turtle火箭包之前无法飞行.等等

我认为这是一种糟糕的做事方式,因为在调用对象的方法以验证它们包含非空值时,通常会导致需要大量的空检查.是否有任何关于此信息的链接可以进一步告知我和我的同事?

java anti-patterns

5
推荐指数
1
解决办法
1432
查看次数

具有不同签名的两种主要方法

我有下课.

public class Test {

    public static void main(Integer[] args) {
        System.out.println("This is not a main"); 
    }   

    public static void main(String[] args) {
        System.out.println("This is the main"); 
    }
}
Run Code Online (Sandbox Code Playgroud)

在这里有两种main方法是接受Integer[]String []输入参数.我的问题是如何JVM始终加载第二个方法作为此类的主要方法.为什么总是考虑输入参数作为arrayString

java program-entry-point

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

没有可用的服务器提供服务:在 Netflix 功能区中路由时

我在 Spring Boot 2.3.4 中有以下工作代码

public Route.AsyncBuilder apply(PredicateSpec route) {
    return route
            .path("/api/external/**")
            .filters(f -> f
                    .removeRequestHeader("Cookie")
                    .filter(loggingGatewayFilter)
                    .filter(oauth2GatewayFilter)
                    .filter(this::filter)
            )
            .uri("lb://external-url");
}
Run Code Online (Sandbox Code Playgroud)

配置:

external-url:
 ribbon:
  listOfServers: "http://external01.com,http://external02.com"
  NIWSServerListClassName: com.netflix.loadbalancer.ConfigurationBasedServerList
Run Code Online (Sandbox Code Playgroud)

当我将 Spring Boot 版本升级到 2.4.2 时,代码必须更改为以下内容。

public Buildable<Route> apply(PredicateSpec route) {
    return route
            .path("/api/external/**")
            .filters(f -> f
                    .removeRequestHeader("Cookie")
                    .filter(loggingGatewayFilter)
                    .filter(oauth2GatewayFilter)
                    .filter(this::filter)
            )
            .uri("lb://external-url");
}
Run Code Online (Sandbox Code Playgroud)

由于 netflix-ribbon 已在 Spring Boot 2.4.2 中删除,我必须添加这些依赖项。在路由中它给出以下警告。这意味着负载均衡器未初始化。

o.s.c.l.core.RoundRobinLoadBalancer : No servers available for service: external-url
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题我可以尝试将其迁移到弹簧负载平衡器中吗

升级后的依赖树:

[INFO] +- org.apache.commons:commons-lang3:jar:3.9:compile
[INFO] +- com.internetitem:logback-elasticsearch-appender:jar:1.6:compile …
Run Code Online (Sandbox Code Playgroud)

spring-boot spring-cloud spring-cloud-netflix spring-cloud-gateway spring-cloud-loadbalancer

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

从列表中返回特定元素

嗨我想从列表中只检索学生的名字,我使用过滤方法,但它返回boolean,所以有没有其他方法这样做?

public class Main {

    public static void main(String[] args) {
        Collection<Student> students=new LinkedList<>();
        students.add(new Student("Add","Nitkons",01));
        students.add(new Student("Nina","Adinson",02));
        students.add(new Student("Mick","McDonald",05));
        students.add(new Student("Anna","Lavrova",04));


        //doesnt work
        Stream<Student> x=students.stream().filter(s->{return s.getName()});

    }
}
Run Code Online (Sandbox Code Playgroud)

java

4
推荐指数
1
解决办法
63
查看次数

java中的枚举声明

我已经声明了枚举功能如下

public static enum SHAPE


{
    static
    {
      LINE = new SHAPE("LINE", 3);
      CIRCLE = new SHAPE("CIRCLE", 4);
      TEXT = new SHAPE("TEXT", 5);
      SHAPE[] arrayOfSHAPE = new SHAPE[6];
      arrayOfSHAPE[0] = DRAW;
      arrayOfSHAPE[1] = SQUARE;
      arrayOfSHAPE[2] = TRIANGLE;
      arrayOfSHAPE[3] = LINE;
      arrayOfSHAPE[4] = CIRCLE;
      arrayOfSHAPE[5] = TEXT;
    }
  }
Run Code Online (Sandbox Code Playgroud)

但我得到了

Syntax error, insert "}" to complete Block at line4 and getting Syntax error, insert "EnumBody" to complete EnumDeclaration at line1.
Run Code Online (Sandbox Code Playgroud)

所以请协助我宣布这个枚举.提前致谢.

java android

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