小编Edd*_*e B的帖子

Java字符串对象是否是Chars数组?

我是java的新手,并试图理解该语言的基本要素和基础知识.

是否准确地说Java字符串对象本质上是一个定义为不可变的字符数组的类?

我问这个,因为与char数组和字符串类相比,我对规范感到有点困惑......

JLS 10.9

10.9字符数组不是字符串在Java编程语言中,与C不同,char数组不是String,字符串和char数组都不会被'\ u0000'(NUL字符)终止.String对象是不可变的,也就是说,它的内容永远不会改变,而char数组有可变元素.类String中的toCharArray方法返回一个包含与String相同字符序列的字符数组.StringBuffer类在可变字符数组上实现有用的方法.

JLS 4.3.3

4.3.3类String的类字符串实例表示Unicode代码点的序列.

java arrays string object chars

8
推荐指数
1
解决办法
4818
查看次数

Spring Boot SSL TCPClient~StompBrokerRelayMessageHandler~ActiveMQ~Undertow

我正在尝试构建一个基于运行ActiveMQSpring Websocket Demo作为带有Undertow的STOMP消息代理的websocket消息传递应用程序.应用程序在不安全的连接上运行良好.但是,我很难配置STOMP Broker Relay以转发SSL连接.

正如Spring WebSocket Docs中提到的......

上述配置中的"STOMP代理中继"是Spring MessageHandler,它通过将消息转发到外部消息代理来处理消息.为此,它建立到代理的TCP连接,将所有消息转发给它,然后通过其WebSocket会话将从代理接收的所有消息转发给客户端.从本质上讲,它充当"转发",可以在两个方向上转发消息.

此外,文档说明我对反应堆网的依赖...

请在org.projectreactor上添加依赖项:reactor-net用于TCP连接管理.

问题是我当前的实现没有通过SSL 初始化NettyTCPClient,因此ActiveMQ连接失败并出现SSLException.


[r.i.n.i.n.t.NettyTcpClient:307] » CONNECTED: 
[id: 0xcfef39e9, /127.0.0.1:17779 => localhost/127.0.0.1:8442]
...
[o.a.a.b.TransportConnection.Transport:245] » 
Transport Connection to: tcp://127.0.0.1:17779 failed:
javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
...
Run Code Online (Sandbox Code Playgroud)

因此,我试图研究Project Reactor Docs来为连接设置SSL选项,但我没有成功.

在这一点上我已经找到了StompBrokerRelayMessageHandler初始化NettyTCPClient默认情况下Reactor2TcpClient然而,这似乎并没有配置.

非常感谢协助.

SSCCE


app.props

spring.activemq.in-memory=true
spring.activemq.pooled=false
spring.activemq.broker-url=stomp+ssl://localhost:8442
server.port=8443
server.ssl.enabled=true
server.ssl.protocol=tls
server.ssl.key-alias=undertow
server.ssl.key-store=classpath:undertow.jks
server.ssl.key-store-password=xxx
server.ssl.trust-store=classpath:undertow_certs.jks
server.ssl.trust-store-password=xxx
Run Code Online (Sandbox Code Playgroud)

WebSocketConfig

//... 
@Configuration
@EnableWebSocketMessageBroker
public …
Run Code Online (Sandbox Code Playgroud)

java activemq-classic stomp spring-boot spring-websocket

8
推荐指数
1
解决办法
3055
查看次数

如何使用ExpressionEngine的Structure附加组件生成多级导航栏?

我正在使用ExpressionEngine和Structure附加组件的最新版本.

我正在寻找一些关于生成4项导航栏的帮助,其中两个项目处于不同的结构级别.

我的结构行看起来像这样:


服务(父母)

----- 翻译(儿童)

----- 视频(儿童)

工作室(家长)

关于我们(家长)


我的主导航栏应该是:

翻译 - 视频 - 工作室 - 关于我们

正如你所看到的,它们处于不同的层次.即使使用Structure Entries附加组件,我已经工作了几个小时,但我找不到生成此导航的方法.

我很感激你能给我的任何帮助.

structure expressionengine

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

Java逻辑"AND"与"OR"短路一致性

可能重复:
&和&&的差异

我已经阅读了几篇有关java中短路操作的教程和答案,我仍然不太了解java处理双垂直管道与双安培管道短路的区别.例如 ...

为什么逻辑AND短路评估失败?

引用JSL 15.23.条件和运算符&&

The conditional-and operator && is like & (§15.22.2), but evaluates its right-hand operand only if the value of its left-hand operand is true.

public static void main( String... args ) {


    int a = 1;

    int b = 2;

    // Okay. Prints
    if( a == 1 | b == 3 ) {

        System.out.println( "Comparison via |" + "\na is " + a + "\nb is " + b );

    }

    // Okay. Prints …
Run Code Online (Sandbox Code Playgroud)

java evaluation logical-operators

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