Tag: mysql

在eclipse中使用servlet和jsp将数据插入数据库

我试图使用servlet和jsp以及MySQL Workbench作为数据库在数据库表中添加或插入值。 这些是以下细节: 1.> Register.java package register.com; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.sql.*; import javax.servlet.*; /** * Servlet implementation class Register */ @WebServlet(“/register”) public class Register extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public Register() […]

如何使SQL连接语句通用

我必须在同一个类的不同方法中执行几个SQL查询。 有没有办法使这些语句通用,我可以在所有方法中使用相同的con,语句变量来执行查询。 Class.forName(“com.mysql.jdbc.Driver”).newInstance(); Connection con = DriverManager.getConnection (“jdbc:mysql://localhost:3306/kamal”,”root”,”root”); Statement statement=con.createStatement();

使用带有MySQL DB的Java Desktop Application完成后如何创建安装程序?

我已经用mySQL数据库编写了一个Java Desktop应用程序。 我想让应用程序在netbeans外运行,并让它安装在其他计算机上。 我知道构建项目和创建可运行的jar文件,但是这需要我将数据库本身导出到我希望运行应用程序的其他计算机上。 我的问题是两部分: 1)有没有办法可以创建一个安装文件,同时将数据库和应用程序安装在一起? 2)我的数据库路径也是硬编码的,这是否意味着我每次为某人安装应用程序时都必须更改代码,这样做的更好方法是什么? 谢谢

JDBC PreparedStatement批量继续插入错误

大家好我在java中创建一个带有PreparedStatement的批处理 for(Item item: list){ ps.setString(1, item.getSome()); ps.setString(2, item.getFoo()); ps.setString(3, item.getBatman()); statement.addBatch(); if (++count % batchSize == 0) { results = ps.executeBatch(); //execute parcial batch if (results != null) System.out.println(results.length); } } results= ps.executeBatch(); //execute rest of batch 数据库服务器是一个MySQL,在表中插入我有几个限制 当我插入时通过这些限制生成错误 我想运行批处理并省略错误 ,此时抛出一个exception结束批处理 在我创建批处理之前,我有一个大的保存逐个像 //seudocode level For item Try{ insert item }catch(E){nothing happens} 但它很慢,在某些情况下,批处理产生4000项,插入1500并省略其余部分 我该如何处理批次? 编辑 我使用weblogic与这个驱动程序mysql-connector-java-commercial-5.0.3-bin […]

处理大量具有分页的数据库条目随着时间的推移而减慢

我正在尝试从我的表中处理数百万条记录(大小约为30 GB),我目前正在使用分页(mysql 5.1.36)。 我在for循环中使用的查询是 select blobCol from large_table where name= ‘someKey’ and city= ‘otherKey’ order by name LIMIT , 这适用于大约500K记录。 我使用的页面大小为5000,在第100页之后,查询开始显着减慢。 第一个~80页是在2-3秒内提取的,但在第130页后,每个页面大约需要30秒才能检索,至少要到第200页。我的一个查询大约有900页,这需要很长时间。 The table structure is (type is MyISAM) name char(11) id int // col1 & col2 is a composite key city varchar(80) // indexed blobCol longblob 我该怎么做才能加快速度? 查询的解释显示了这一点 select_type: SIMPLE possible_keys: city key : […]

“com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链接失败”到远程数据库

我试图连接到我的远程MySQL数据库,但我失败了并得到了这个错误。 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 令人困惑的是,当我使用MySQL-Front工具连接远程数据库时,它是有效的,我可以成功ping到IP地址。 但是当我使用我的代码时,它会在大约十秒后显示错误。 此外,当我在我的代码中使用了错误的用户名或密码时,它会立即显示错误的validation。 这是否certificate设置连接是没有问题的? 这是我的代码(它可以在我的localhost数据库上工作): public static void main(String[] args) { String url = “jdbc:mysql://(IP address):3306/”; String dbName = “talk”; String driver = “com.mysql.jdbc.Driver”; String userName = “talkroot”; String password = “123456”; try { Class.forName(driver).newInstance(); Connection conn = DriverManager.getConnection(url + dbName, userName, password); System.out.println(“connect”); conn.close(); } catch (Exception e) { […]

MySQL / Hibernate – 如何调试不断丢弃的MySQL池连接?

几个月来,我的Web应用程序运行顺利,但在过去一两周内,它一直在断开与MySQL服务器的连接。 我不是DBA的人,也不知道如何调试它。 这就是我所知道的: 连接似乎每隔几个小时就会消失。 有时在白天,但总是在夜间。 我的实验室有一个MySQL服务器,可托管多个应用程序的数据库 目前,我们有47个与MySQL服务器的连接。 据我所知,没有其他应用程序遇到此问题。 我的应用程序使用相同的堆栈,配置甚至代码连接到数据库作为另一个应用程序 – 这个其他应用程序每天支持大约200个用户,并且自2013年以来一直运行顺利。 两个应用程序都使用Hibernate ORM; 这是我所知道的唯一配置: org.hibernate.connection.TomcatJDBCConnectionProvider org.hibernate.dialect.MySQLDialect com.mysql.jdbc.Driver 5 thread SELECT 1 true true 该问题与有人试图使用应用程序的RESTful API下载数据的时间大致相同。 这个用户 – 实际上是一个协作者 – 有一个小脚本迭代特定表中的每一行并请求所有元数据。 这个问题也开始于我的实验室开始提供Coursera Massive Open Online课程的同时。 我不知道这些数字是什么,但网站上的实际使用量必须已经增加。 我知道这是一个广泛的问题,但我真的不知道如何进行调试。 任何建议表示赞赏。 编辑: 挖掘其他应用程序的ServletContextListener ,我发现我的contextDestroyed函数没有的这段代码: // TODO: Find memory leak that requires server to be restarted after hot deploying several […]

这究竟做了什么Class.forName(“com.mysql.jdbc.Driver”)。newInstance();

连接到MySQL数据库时,我执行以下步骤 Connection con = null; Resultset rs = null; Statement st = null; Class.forName(“com.mysql.jdbc.Driver”).newInstance(); con = DriverManager.getConnection(“jdbc:mysql://localhost:3306/database”,”root”,”passwp”); 其实我想知道Class.forName(“com.mysql.jdbc.Driver”).newInstance(); 声明做。 Althogh这个类不在mysql.jar中。 它在哪里?

BigDecimal的JPA @Size注释

如何在MySQL DECIMAL(x,y)列中使用@Size注释? 我正在使用BigDecimal ,但是当我尝试包含@Size max它不起作用。 这是我的代码: @Size(max = 7,2) @Column(name = “weight”) private BigDecimal weight;

java.net.SocketException:管道损坏

我每天都会收到此错误或我的jsp页面: java.net.SocketException 消息:管道破裂 堆栈跟踪: java.net.SocketException: Broken pipe at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123) at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2637) …. 重新启动tomcat服务后,它工作正常。 (我使用hibernate连接到mysql数据库)