Tag: jdbc

JDBC无法加载数据源的工厂类

我已经有几天这个问题,并没有设法解决它。 我正在使用tomcat 7.0,我完全无法获得mysql数据库连接。 我正在编写的应用程序是一个使用eclipse IDE的jsp动态网站。 TomCat 7启动时出现此错误: WARNING: Failed to register in JMX: javax.naming.NamingException: Could not load resource factory class [Root exception is java.lang.ClassNotFoundException: org.apache.tomcat.jdbc.pool.DataSourceFactory] 我也得到这个错误: javax.naming.NamingException: Could not load resource factory class [Root exception is java.lang.ClassNotFoundException: org.apache.tomcat.jdbc.pool.DataSourceFactory] at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:84) at javax.naming.spi.NamingManager.getObjectInstance(Unknown Source) at org.apache.naming.NamingContext.lookup(NamingContext.java:826) at org.apache.naming.NamingContext.lookup(NamingContext.java:145) at org.apache.naming.NamingContext.lookup(NamingContext.java:814) at org.apache.naming.NamingContext.lookup(NamingContext.java:145) at org.apache.naming.NamingContext.lookup(NamingContext.java:814) at org.apache.naming.NamingContext.lookup(NamingContext.java:145) […]

使用PreparedStatement将日期插入MySQL数据库

我想使用预准备语句将字符串日期更新到MySQL数据库中。 我已经尝试了很多并且总是得到错误java.util.Date cannot parse into java.sql.Date或反之亦然。 我没有在这里import任何东西。 请根据您的回答导入。 public class Date1 { public static void main(String args[]) { String source=”2008/4/5″; SimpleDateFormat format = new SimpleDateFormat(“dd/MM/yyyy”); java.sql.Date d=(Date) format.parse(source); Class.forName(“com.mysql.jdbc.Driver”); Connection con=(Connection) DriverManager.getConnection(“jdbc:mysql://localhost:3306/employee”, “root”, “root”); PreparedStatement ps=con.prepareStatement(“insert into ankur1 values(?)”); ps.setDate(1,(java.sql.Date) d); ps.executUpdate(); } }

多个线程同时使用相同的JDBC连接

我试图更好地理解如果多个线程同时使用相同的JDBC连接尝试执行不同的sql查询将会发生什么。 结果是否在function上正确? 性能影响是什么? 线程A是否必须等待线程B完全使用其查询? 或者线程A能否在线程B发送其查询后立即发送其查询,之后数据库将并行执行两个查询? 我看到Apache DBCP使用同步协议来确保从池中删除的连接从池中删除,并且在它们关闭之前不可用。 这似乎比它需要的更不方便。 我正在考虑构建自己的“池”,只需创建一个静态的打开连接列表,并以循环方式分发它们。 我不介意偶尔的性能下降,并且每次使用后不必关闭连接的便利性似乎非常吸引人。 这样做有什么不好吗?

如何在Tomcat 7.0.47启动时注册oracle jdbc驱动程序?

我将ojdbc6.jar复制到tomcat安装文件夹中的lib文件夹。 当我部署在JDBC连接中使用Oracle驱动程序的Web App时,服务器说无法找到驱动程序类,并且我被迫手动执行DriverManager.registerDriver,然后它可以工作。 可以这样做,所以驱动程序在启动时注册,我不必手动创建连接池吗?

我如何做好准备好的陈述?

我怎样才能准备好这个呢? Statement stmt = con.createStatement(); long lastid = getLastId(stmt); // create a SQL query String strQuery = “INSERT INTO studenten ” + ” (id, naam, adres, postcode, plaats, geboren) ” + ” VALUES (” + (lastid+1) + “,” + “‘” + contact.getNaam() + “‘,” + “‘” + contact.getAdres() + “‘,” + “‘” + contact.getPostcode() + […]

模拟长时间运行的Oracle DB查询

什么是最简单的(最好没有任何新的表创建)运行数据库查询的方式,这需要在Oracle DB中花费很长时间(至少几分钟)?

准备好的声明不会逃避撇号

我正在使用从hibernate获取的JDBC连接对象来执行浴更新,我这样做是因为我需要使用MySql ON DUPLICATEfunction。 但是,当试图插入时,我无法插入说字符串有特殊字符, Session session = sessionFactory.openSession(); PreparedStatement pstm = null; Connection conn = session.connection(); try { IRKeyWordTweet record = null; conn.setAutoCommit(false); for (Iterator itrList = statusToInsert.iterator(); itrList.hasNext();) { try { record = (IRKeyWordTweet) itrList.next(); pstm = (PreparedStatement) conn.prepareStatement(“INSERT QUERY”); System.err.println(record.getTwtText()); //tweetId pstm.setLong(1, record.getTweetId()); Setters For Prepared statement…. pstm.addBatch(); int[] updateCounts = pstm.executeBatch(); } […]

Wildfly 10无法连接数据源:无效连接

问题 我正在尝试测试我的连接并且它一直给我同样的错误,而乍一看我看不出我做错了什么。 也许我忽略了一些东西…… 错误 nexpected HTTP response: 500 Request { “address” => [ (“subsystem” => “datasources”), (“data-source” => “ProjectenDS”) ], “operation” => “test-connection-in-pool” } Response Internal Server Error { “outcome” => “failed”, “failure-description” => “WFLYJCA0040: failed to invoke operation: WFLYJCA0047: Connection is not valid”, “rolled-back” => true } 独立-full.xml jdbc:mysql://localhost:3306/projecten3db com.mysql.jdbc.Driver mysql-connector-java-5.1.40-bin.jar_com.mysql.jdbc.Driver_5_1 10 11 100 […]

如何安装JDBC以及如何使用它连接到mysql?

我正在尝试安装JDBC,但我不知道如何,当你只有jar文件时,我将它复制到我的java ext文件夹但是它一直给我一个错误,有人能告诉我如何完成安装驱动程序并使用它吗? 下面是我使用的代码 import java.sql.*; public class Test1 { public static void main (String[] args) { String url = “jdbc:mysql://localhost:3306/sabayafr_sabmah”; String username = “root”; String password = “ma”; Connection connection = null; try { System.out.println(“Connecting database…”); connection = DriverManager.getConnection(url, username, password); System.out.println(“Database connected!”); } catch (SQLException e) { System.err.println(“Cannot connect the database!”); e.printStackTrace(); } finally […]

有没有办法用SQL Server JDBC驱动程序显示PRINT结果?

如果我的存储过程中有一个print语句: print ‘message’ 有没有办法获取通过JDBC连接到SQL Server 2008的java程序中的输出? 另外,从JDBC应用程序调用时,是否存在print消息进行调试会关闭连接的危险?