我想创建一个没有任何依赖的Java库,但它需要使用嵌入式SQL数据库。将二进制数据库文件和驱动程序打包以在JAR文件中访问它是一种好的做法吗?有哪些优点和缺点?
答案 0 :(得分:4)
越来越多的Java应用程序拥有自己的“内存中”数据库,该数据库在应用程序启动时启动。查看hsqldb以获取示例。 最明显的优点是您可以控制数据库,而不必考虑不同的数据库服务器及其sql方言。
答案 1 :(得分:3)
继续,这是Hibernate使用的一种广泛采用的做法。
对于内存受限的设备:
然后根本不要使用嵌入式数据库。尝试使用ThoughtWorks库XStream将对象序列化/反序列化为XML / jSon,它们可以存储在文件中。内存占用量小的非常有效的解决方案。
答案 2 :(得分:0)
您的数据库将是只读的(因为您无法在运行时重新打包jar)。如果那样好,那就坚持下去:)。