草庐IT

jdbc-pool

全部标签

mysql JDBC的三种查询(普通、流式、游标)

使用JDBC向mysql发送查询时,有三种方式:常规查询:JDBC驱动会阻塞的一次性读取全部查询的数据到JVM内存中,或者分页读取流式查询:每次执行rs.next时会判断数据是否需要从mysql服务器获取,如果需要触发读取一批数据(可能n行)加载到JVM内存进行业务处理游标查询:通过fetchSize参数,控制每次从mysql服务器一次读取多少行数据。1、常规查询publicstaticvoidnormalQuery()throwsSQLException{Connectionconnection=DriverManager.getConnection("jdbc:mysql://localh

Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: The server time zone va

这个错误表明在尝试获取JDBC连接时发生了SQLException,并且该异常表示服务器不识别或不包含一个以上的时区。以下是一些可能的解决方法:确认服务器时区设置:确保你的服务器时区设置正确。你可以在数据库中运行以下查询来检查当前时区设置:sqlSELECT@@全球化设置(‘TzSystem’);如果返回的结果不正确,你可以尝试手动设置时区。例如,如果你知道正确的时区是‘UTC’,你可以运行以下命令来设置时区:sqlSETGLOBALtime_zone=‘+00:00’;SETSESSIONtime_zone=‘+00:00’;确认JDBC驱动程序:确保你使用的JDBC驱动程序与数据库版本兼容

sql-server-2005 - 有没有办法强制 jdbc 连接使用 TCP?

在普通的SQLServer2005连接字符串中,可以按以下格式指定所需的协议(protocol):DataSource=tcp:myServerAddress;InitialCatalog=myDataBase;IntegratedSecurity=SSPI;有没有办法在SQLServer的JDBC连接字符串中做类似的事情?编辑:我的JDBC连接字符串如下所示:JdbcDrivers=com.microsoft.sqlserver.jdbc.SQLServerDriver;Provider=Mondrian;Jdbc='jdbc:sqlserver://myServerAddress;

java - 如何从 MySQL JDBC 驱动程序获取客户端本地套接字端口?

我有一个Java应用程序,我使用"com.mysql.jdbc.Driver"连接到mySQLServer。建立连接后,我需要Client本地端口。这意味着Java应用程序从MySQL服务器接收数据的端口。有没有办法在我建立连接后在我自己的源代码中接收它?我尝试了java.sql.DatabaseMetaData中的所有信息。 最佳答案 对于MySQLConnector/Jthere'ssourcesongithub.实际连接到MySQLServer的Socket在MysqlIO中定义为publicSocketmysqlConnec

sql-server - 谷歌搜索设备 : com. microsoft.sqlserver.jdbc.SQLServerException : The TCP/IP connection to the host "xyz" port 1433 has failed.

我正在为数据库(SQL)部署GoogleSearchAppliance连接器。当我运行“run.bat”时,我在日志中收到一条错误消息:java.io.IOException:com.microsoft.sqlserver.jdbc.SQLServerException:TheTCP/IPconnectiontothehost"xyz",port1433hasfailed.Error:"null.Verifytheconnectionproperties.MakesurethataninstanceofSQLServerisrunningonthehostandacceptingTCP

java - 使用 JDBC 连接 SQL Server 2012 和 Java

我正在使用sqljdbc4.jar通过Windows身份验证将SQLServer2008与java应用程序连接起来。在我尝试使用SQLServer2012运行相同的代码之前,一切都完美无缺。经过研究,我知道我需要启用TCP/IP。但我的问题是,我的应用程序将以.EXE的形式分发给用户,用户将自行安装应用程序。此外,所有用户都将预装SQLSERVER2012,我的应用程序不应该安装sqlserver。现在我的问题是,如何在不手动启用TCP/IP的情况下连接到SQLServer?我也听说过共享内存协议(protocol),但不确定它的连接字符串会是什么样子?我在SQLServer2008之

java - Spring 集成 : individual timeouts settings for connections in the same pool

我们有一个使用SpringIntegration的Java编写的应用程序。应用程序向3d方服务发送请求,每个请求都表示为字节数组并通过纯TCP发送。与3d方的连接存储在池中(使用CachingClientConnectionFactory)。我们可以向3d方发送几种类型的请求,现在需要为每种类型的请求设置不同的超时值。但是,就目前而言,这看起来有问题,因为为Gateway和ConnectionFactory组件设置了连接超时设置,并且无法为特定的单个请求设置连接超时。我们希望避免仅仅为了支持不同的连接超时而引入多个网关和连接工厂。channel和网关配置TcpGateway.javap

Android 连接到远程 mysql 数据库 JDBC 与 JSON

我知道JDBC最好与低延迟高带宽连接一起使用。并且最好使用php服务。我正在开发一个餐厅菜单应用程序,该应用程序应该从位于服务器上的数据库中检索数据。使用Samsunggalaxytab27inch作为目标设备并具有稳定的高带宽无线连接。我的第一次尝试是让java服务器在具有数据库的同一台机器上运行,并且有很多线程可以检索数据并发送它们通过tcp套接字连接到android设备。此实现导致主机和android设备上的cpu使用率很高,因为我有很多线程在后台工作。我想试试JDBC,因为环境使我能够使用这样的实现。但到目前为止连接到DB还没有成功。即使我对android应用程序list有互联

Java/安卓 : Socket closed when offloading work to a thread pool

我在Android上编写线程池TCP服务器时遇到了一个非常令人费解的错误。基本上,我的代码结构如下:标准服务器循环(在其自身线程内的循环中阻止调用socket.accept()),在传入连接时调用处理程序:socket=mServerSocket.accept();myHandler.onIncomingConnection(socket);处理程序将传入连接的所有进一步处理卸载到线程池:publicclassX{privatefinalExecutorServicereceiveThreadPool=Executors.newSingleThreadExecutor();[...]p

连接数据库报com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接

JDBC加载驱动,连接SQLServer2012报java.ext.dirs:C:\ProgramFiles\Java\jdk1.8.0_331\jre\lib\ext;C:\Windows\Sun\Java\lib\extcom.microsoft.sqlserver.jdbc.SQLServerException:驱动程序无法通过使用安全套接字层(SSL)加密与SQLServer建立安全连接。错误:“TheserverselectedprotocolversionTLS10isnotacceptedbyclientpreferences[TLS12]试了各种方法,如数据库连接上加各种参数: