java url参数连接符_url参数中有+、空格、=、%、&、#等特殊符号的问题解决

url出现了有+,空格,/,?,%,#,&,=等特殊符号的时候,可能在服务器端无法获得正确的参数值,如何是好?

解决办法

将这些字符转化成服务器可以识别的字符,对应关系如下:

URL字符转义

用其它字符替代吧,或用全角的。

+    URL 中+号表示空格                                 %2B

空格 URL中的空格可以用+号或者编码           %20

/   分隔目录和子目录                                     %2F

?    分隔实际的URL和参数                             %3F

%    指定特殊字符                                          %25

#    表示书签                                                  %23

&    URL 中指定的参数间的分隔符                  %26

=    URL 中指定参数的值                                %3D

原因:java.lang.reflect.InvocationTargetException 在 sun.reflect.GeneratedConstructorAccessor73.newInstance(未知来源) 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 在 java.lang.reflect.Constructor.newInstance(Constructor.java:423) 在 org.datanucleus.plugin.NonManagedPluginRegistry.createExecutableExtension(NonManagedPluginRegistry.java:606) 在 org.datanucleus.plugin.PluginManager.createExecutableExtension (PluginManager.java:330) 在 org.datanucleus.store.AbstractStoreManager.registerConnectionFactory (AbstractStoreManager.java:203) 在 org.datanucleus.store.AbstractStoreManager.<init>(AbstractStoreManager.java:162) 在 org.datanucleus.store.rdbms.RDBMSStoreManager.<init>(RDBMSStoreManager.java:285) 在 sun.reflect.GeneratedConstructorAccessor72.newInstance(未知来源) 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 在 java.lang.reflect.Constructor.newInstance(Constructor.java:423) 在 org.datanucleus.plugin.NonManagedPluginRegistry.createExecutableExtension(NonManagedPluginRegistry.java:606) 在 org.datanucleus.plugin.PluginManager.createExecutableExtension (PluginManager.java:301) 在 org.datanucleus.NucleusContextHelper.createStoreManagerForProperties (NucleusContextHelper.java:133) 在 org.datanucleus.PersistenceNucleusContextImpl.initialise(PersistenceNucleusContextImpl.java:422) 在 org.datanucleus.api.jdo.JDOPersistenceManager.freezeConfiguration(JDOPersistenceManagerFactory.java:817) …43 更多 原因:org.datanucleus.exceptions.NucleusException:尝试调用“HikariCP”插件来创建 ConnectionPool 时出现错误:无法初始化池:由于底层异常,无法加载连接类:com.mysql.cj.exceptions.WrongArgumentException:数据库 URL 格式错误,无法解析“\ist=true&useSSL=false&characterEncoding=UTF-8”附近的连接字符串。 在 org.datanucleus.store.rdbms.ConnectionFactoryImpl.generateDataSources(ConnectionFactoryImpl.java:232) 在 org.datanucleus.store.rdbms.ConnectionFactoryImpl.initialiseDataSources(ConnectionFactoryImpl.java:117) 在 org.datanucleus.store.rdbms.ConnectionFactoryImpl.<init>(ConnectionFactoryImpl.java:82) …59 更多 原因:com.zaxxer.hikari.pool.HikariPool$PoolInitializationException:无法初始化池:由于底层异常,无法加载连接类:com.mysql.cj.exceptions.WrongArgumentException:数据库 URL 格式错误,无法解析“\ist=true&useSSL=false&characterEncoding=UTF-8”附近的连接字符串。 在 com.zaxxer.hikari.pool.HikariPool.throwPoolInitializationException (HikariPool.java:544) 在 com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:536) 在 com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:112) 在 com.zaxxer.hikari.HikariDataSource.<init>(HikariDataSource.java:72) 在 org.datanucleus.store.rdbms.connectionpool.HikariCPConnectionPoolFactory.createConnectionPool(HikariCPConnectionPoolFactory.java:176) 在 org.datanucleus.store.rdbms.ConnectionFactoryImpl.generateDataSources(ConnectionFactoryImpl.java:213) …61 更多 原因:java.sql.SQLNonTransientConnectionException:由于底层异常,无法加载连接类:com.mysql.cj.exceptions.WrongArgumentException:数据库 URL 格式错误,无法解析“\ist=true&useSSL=false&characterEncoding=UTF-8”附近的连接字符串。 在 com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:102) 在 com.mysql 上。
03-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值