Я пошел бы с подходом файловой системы, прежде всего, из-за его лучшей гибкости. Полагайте, что, если количество изображений становится огромным, одна база данных не может быть в состоянии обработать его. С файловой системой Вы можете простой добавлять больше файловых серверов, предполагая использование NFS или вида.
Другое преимущество, которое имеет подход файловой системы, должно быть в состоянии сделать некоторые необычные материалы, такие как, можно использовать Amazon S3 в качестве основной памяти (сохраните URL в базе данных вместо пути к файлу). В случае отключений электричества происходят с S3, Вы отступаете к своему файловому серверу (может быть другая запись базы данных, содержащая путь к файлу). Некоторый вуду для применения к Apache или безотносительно веб-сервера Вы используете.
Это подробно описано в руководстве пользователя . Загрузка JAXB с http://jaxb.java.net/ включает пример того, как анализировать по одному фрагменту за раз.
Когда документ большой, он обычно потому, что есть повторяющиеся части в нем. Возможно это покупка заказ с большим списком позиций, или, возможно, это файл журнала XML с большое количество записей журнала.
Этот вид XML подходит для chunk-обработка; основная идея состоит в том, чтобы использовать StAX API, запустить цикл и демаршалировать отдельные куски раздельно. Ваша программа действует на один кусок, а затем выбрасывает его. Таким образом, вы будете только придерживаться большая часть памяти, что позволяет вы можете обрабатывать большие документы.
См. потоковое демаршалинг пример и частичный демаршаллинг пример в дистрибутиве JAXB RI чтобы узнать больше о том, как это сделать. В пример потокового демаршаллинга имеет преимущество в том, что он может обрабатывать куски на произвольный уровень вложенности, но он требует разобраться с моделью push --- Unmarshaller JAXB будет "проталкивать" новые кусок вам, и вам нужно обрабатывать их прямо здесь.
Напротив, частичная демаршаллинг пример работает в модели вытягивания (которая обычно упрощает обработку), но у этого подхода есть некоторые ограничения в частях привязки данных, кроме повторяющаяся часть.