Это зависит от того, сколько данных у вас есть.
Если вы хотите сохранить партию пар ключ / значение, например, некоторые пользовательские настройки, вы можете использовать класс Preferences который реализован с использованием реестра Windows, конфигурационных файлов в Linux и любого другого предпочтительного способа хранения пользовательских настроек на других форматах.
Когда у вас есть фактические данные, которые слишком много для реестра, но недостаточно чтобы гарантировать базу данных (что-то в порядке нескольких МБ), использование одного или нескольких плоских файлов может быть решением. Когда данные являются сложными, может быть хорошей идеей использовать стандартизованный формат, например XML, вместо того, чтобы что-то запустили. Java имеет классы, которые позволяют легко разбирать и сериализовать XML. Альтернативным быстрым и грязным решением было бы использовать ObjectStreams для сохранения и восстановления целых объектов. Это очень легко реализовать, но может быть не очень эффективным, потому что в нем хранится много метаинформации, которая, вероятно, не нужна.
Но когда у вас много данных (больше, чем вам удобно читать и писать полностью), это может быть разумным шагом для использования базы данных. База данных позволяет вам легко получить доступ к огромным объемам данных (в заказах нескольких ГБ) и предлагает вам множество бесплатных функций, которые трудно реализовать самостоятельно (например, поиск записей с использованием индексов). Базы данных не являются волшебными. Однако они также используют файлы для хранения своих данных (файлы с очень умной структурой). Вы можете копировать каждую функцию базы данных самостоятельно. Но зачем вам изобретать колесо, когда вы можете просто использовать существующее решение?
Убедитесь, что вы явно отключили кеширование на своих страницах. Вот как это делается в верхней части JSP в скриптлете:
<%
response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
response.setHeader("Pragma","no-cache"); //HTTP 1.0
response.setDateHeader ("Expires", -1);
%>
Для дополнительной возможности очистки кеша IE вы можете добавить второй
ниже вашего
. Полный код, включая приведенный выше скрипт, выглядит следующим образом:
<%
response.setHeader("Cache-Control","no-cache");
response.setHeader("Pragma","no-cache");
response.setDateHeader ("Expires", -1);
%>
<html>
<head></head>
<body>
Your body content
</body>
<!--[if IE]>
<head>
<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="Expires" content="-1"/>
</head>
<![endif]-->
</html>
Обратите внимание, что вы указываете второй недопустимый
в условных комментариях, поэтому его получает только наш специальный друг IE.