最近在做一个项目, 用一个查询返回很多数据, 几十万条记录, 60多字段, 每个字段都是String, 如果都放在内存里 会占用很大空间。先不说数据库设计的优劣,也不说查询语句的对错(当然这语句由于需求也改不了),还是记录一下我是怎么解决这个问题的。
1. 增大VM的内存设置
2. 用String.intern() 让相同值的对象引用同一个字符串常量,以节省空间.
还有就是自己维护一个hashmap去存储这些重用的String.
最近在做一个项目, 用一个查询返回很多数据, 几十万条记录, 60多字段, 每个字段都是String, 如果都放在内存里 会占用很大空间。先不说数据库设计的优劣,也不说查询语句的对错(当然这语句由于需求也改不了),还是记录一下我是怎么解决这个问题的。
1. 增大VM的内存设置
2. 用String.intern() 让相同值的对象引用同一个字符串常量,以节省空间.
还有就是自己维护一个hashmap去存储这些重用的String.