gpt4 book ai didi

如果密码包含 % 符号,Java 无法连接到 MySQL

转载 作者:行者123 更新时间:2023-11-29 01:35:37 27 4
gpt4 key购买 nike

这是我的连接 URL:

jdbc:mysql://mydbhost:3306/mydatabase?user=username&password=%u16*!ypK@WrUQbr

当我打电话

DriverManager.getConnection()

使用当前 URL 我正在捕获异常:

ava.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: "u1"

如果连接 URL 不包含 % 一切正常。

我找到了一些关于这个问题的信息,并建议进行下一次转换:

replaceAll("%(?![0-9a-fA-F]{2})", "%25")

对于这个转换我有错误:

Access denied for user(incorrect password)

有人可以帮助正确转换 url 吗?

最佳答案

尝试使用以下字符串,其中密码中的所有保留字符都替换为适当的百分比编码值:

% : %25
* : %2A
! : %21
@ : %40

"jdbc:mysql://mydbhost:3306/mydatabase?user=username&password=%25u16%2A%21ypK%40WrUQbr"

有关百分比编码的更多信息 Wikipedia

关于如果密码包含 % 符号,Java 无法连接到 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47670078/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com