在PostgreSql数据库中插入和检查数据

时间:2012-02-10 07:41:14

标签: java database postgresql

我有以下问题。使用Java应用程序我需要每1秒从外部XML文件向数据库表插入数据。

此外,我必须在同一个表上执行选择/更新查询。

表每隔几天清洁一次。我的问题是:如何以最佳方式解决它?一切都必须有效live。我们不能允许存在时移的情况(记录不是每1秒检查一次)。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

根据您规划应用程序的复杂程度,您可能会考虑使用JPA / Hibernate来访问您的数据库。它使访问你的数据库变得更加简单(因为你操纵POJO来访问你的数据),但缺点是它在性能方面不是最佳的(操纵原始sql和原始数据总是比操纵对象更快)。

对于你的工作检查,我会设置石英,为你提供定期安排工作的可能性。

你的问题有点模糊,可以提供更多提示。它是一个Web应用程序吗?一个Java EE?一个沉重的客户?你需要高性能有多糟糕?你想创建一个小型的应用程序,没有未来的披萨餐巾,或者你打算在将来扩展应用程序。

答案 1 :(得分:0)

每秒10-20条记录不是很大。无论如何,如果您遇到任何性能问题,请务必使用JDBC batch inserts

PreparedStatement stmt = con.prepareStatement(
    "INSERT INTO table_name (field_name1, field_name2) VALUES (?, ?)");

stmt.setInt(1, 2000);
stmt.setString(2, "String value");
stmt.addBatch();

stmt.setInt(1, 3000);
stmt.setString(2, "Other String");
stmt.addBatch();

// submit the batch for execution
int[] insertCounts = stmt.executeBatch();