我正在尝试将各种PostgreSQL JDBC驱动程序属性设置到我的HikariCP池中,但出于某种原因,它声明这些属性不存在。为什么会这样?我是否使用了错误的参数名称?
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource
import java.sql.Connection;
import java.sql.SQLException;
public class HikariTest {
public static void main(String[] args) throws SQLException {
HikariConfig config = new HikariConfig();
config.setDataSourceClassName("org.postgresql.ds.PGSimpleDataSource");
config.setUsername("[REDACTED]");
config.setPassword("[REDACTED]");
config.addDataSourceProperty("host", "[REDACTED");
config.addDataSourceProperty("database", "[REDACTED]");
config.addDataSourceProperty("ssl", true);
config.addDataSourceProperty("sslcert", "[REDACTED]");
HikariDataSource ds = new HikariDataSource(config);
Connection conn = ds.getConnection();
}
}
输出:
Exception in thread "main" java.lang.RuntimeException: Property database does not exist on target class org.postgresql.ds.PGSimpleDataSource
at com.zaxxer.hikari.util.PropertyElf.setProperty(PropertyElf.java:127)
at com.zaxxer.hikari.util.PropertyElf.lambda$setTargetFromProperties$0(PropertyElf.java:51)
at java.base/java.util.concurrent.ConcurrentHashMap.forEach(ConcurrentHashMap.java:1603)
at java.base/java.util.Properties.forEach(Properties.java:1422)
at com.zaxxer.hikari.util.PropertyElf.setTargetFromProperties(PropertyElf.java:46)
at com.zaxxer.hikari.pool.PoolBase.initializeDataSource(PoolBase.java:323)
at com.zaxxer.hikari.pool.PoolBase.<init>(PoolBase.java:112)
at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:93)
at com.zaxxer.hikari.HikariDataSource.<init>(HikariDataSource.java:81)
at HikariTest.main(HikariTest.java:21)
它给出该错误是因为<code>PGSimpleDataSource(即,它没有<code>setDatabase(String)方法)。它确实有一个属性databaseName
(BaseDataSource
中定义的setDatabaseName
)。该属性在JDBC 4.3规范的第9.6.1节<code>数据源
阅读注释时,您似乎将JDBC URL格式的留档(和连接属性)与驱动程序提供的数据源实现上可用的属性混淆了。需要明确的是,该留档并未指定有属性Database
,它仅使用Database
作为JDBC URL语法中的占位符(如jdbc: postgresql://host/data中的占位符)。
我能够通过一个PHP脚本用这些完全相同的凭证连接到< code>protomolecule数据库。如图所示,试图在PhpStorm中设置它失败了。 如果我将数据库更改为默认的数据库,它在PhpStom中连接得很好。我不明白为什么用户只能连接到而不是其他任何东西。 我尝试设置新用户和新数据库无济于事。 编辑:根据要求添加了下面的工作PHP脚本设置。
我的表单已提交,但未存储在表中。如果我对请求执行dd(),则数据在中,但当我执行save()时,它不会按预期工作。我想在backoffice表单上添加用户,仅包含姓名、电子邮件、用户类型和密码。 编辑:我将问题图像更改为代码,以便您更容易理解,很抱歉第一次尝试。编辑2:现在出现了更多的两件事,密码验证确认总是错误的,如果我跳过验证,则会出现以下错误: 对未定义方法App\User::forget(
问题内容: 即时通讯试图将我的用户使用网络表单输入的长文本(约2500个字符)保存到我的数据库中,并使用php传递给服务器。 当我在phpmyadmin中查看时,文本会变大。如何配置表格以获得完整的文本?这是我的表配置: 看一看具有3000个字符限制的字段 内容 ,但是文本总是以 690个字符为准 。谢谢你的帮助! 编辑 :我发现了问题,但我不知道如何解决。查询总是以相同的char形式获取农作物,
我正在创建一个Android应用程序,将数据保存在SQLite数据库中,然后从同一个数据库读取数据。这样一来,我就不需要每次将数据联机到MySQL服务器。我将其连接到一个外部数据库,提取数据,并尝试查看数据是否正在保存,但当我尝试使用函数从SQLite数据库获取数据时,它似乎是空的 对于获取数据的类,数据会保存下来,当我试图检查它时,它会告诉我它是空的 所以我为测试添加了这个函数,并将其命名为On
本文向大家介绍MySQL ENUM数据类型的不同属性是什么?,包括了MySQL ENUM数据类型的不同属性是什么?的使用技巧和注意事项,需要的朋友参考一下 可以使用以下影响允许值的属性来定义MySQL ENUM类型- NOT NULL- 在ENUM类型中,默认情况下允许NULL值。要禁止NULL值,我们需要在描述ENUM列时使用NOT NULL属性。 NULL -NULL属性是DEFAULT
我使用gem在配置项中运行我的Rails6应用程序测试。在日志中,我看到正在创建具有的所有9个数据库,但它只是失败了,说这些数据库不存在。 我运行的命令是: 日志如下: