我的java应用程序从Xml文件中获取用户列表,并且每个用户都需要进行一些I / O操作。 这些操作是:
当xml只包含50个用户时,它完全有效,但如果xml文件中的用户数量增加,则应用程序将失败。
使用此代码访问数据库时
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:DbName.db");
我有
java.lang.NullPointerException
at org.sqlite.NestedDB$CausedSQLException.fillInStackTrace(NestedDB.java:442)
at java.lang.Throwable.<init>(Throwable.java:250)
at java.lang.Exception.<init>(Unknown Source)
at java.sql.SQLException.<init>(Unknown Source)
at org.sqlite.NestedDB$CausedSQLException.<init>(NestedDB.java:435)
at org.sqlite.NestedDB._open(NestedDB.java:63)
at org.sqlite.DB.open(DB.java:77)
at org.sqlite.Conn.<init>(Conn.java:88)
at org.sqlite.JDBC.connect(JDBC.java:64)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
现在我有300个用户,我通过打破5个部分的xml文件解决了这个问题,但我想了解为什么会发生这种情况。 有人能帮助我吗?
答案 0 :(得分:2)
该解决方案听起来非常具有可扩展性。令我印象深刻的是,它可以处理的用户不多。
我不会将XML用作数据库,而且我只使用一个副本,这样会让更多用户对资源使用没有任何影响。
答案 1 :(得分:0)
可能是因为内存不足问题。尝试使用带-Xmx512m选项的java