Постоянство без базы данных веб-идей - PullRequest
0 голосов
/ 13 сентября 2011

Я занимаюсь разработкой java веб-программного обеспечения с jsf в команде.Мы не хотим использовать базу данных, но хотим, чтобы постоянство выполнялось простыми файлами в файловой системе.Пожалуйста, не спрашивайте почему и говорите, что это глупо, потому что это в большинстве случаев.

Мы не можем сказать что-то вроде D:/data или /home/user/data, это место для размещения данных, потому чтоМожет быть, кто-то использует Windows, Mac или Linux.

Есть ли какой-то стандартный способ сохранения файлов через сервер приложений, который выдержит перезапуск и, возможно, даже повторное развертывание приложения, обновление сервера и т.настоящая настойчивость?Если нет, есть ли решение для кота?

Ответы [ 3 ]

4 голосов
/ 13 сентября 2011

Стандарт не предоставляет доступа к местоположению в файловой системе, где веб-приложение может иметь доступ для чтения / записи к произвольным файлам.

Однако вы можете назначить местоположение и передать его черезсистемное свойство или файл свойств.

Если вы просто хотите, чтобы пользовательская информация была доступна с областью действия сеанса, рассмотрите возможность включения в сеанс сериализуемых объектов и позвольте контейнеру управлять этим.

0 голосов
/ 13 сентября 2011

Несколько предложений:

  1. Если данные, которые вам нужно сохранить, достаточно малы, сделайте это в файле cookie.

  2. Запроспользователь для файла.Если вы не хотите каждый раз запрашивать новый / существующий файл, сохраните путь в файле cookie.

  3. Попробуйте получить доступ к домашнему каталогу в форматах Unix, Mac и Windows.и посмотрите, какой из них работает.

Я бы сказал, что если 1 не работает, вы должны использовать 2, потому что вы действительно не должны записывать на диск пользователя (особенно из апплета) безих знания.

0 голосов
/ 13 сентября 2011

Вы пытаетесь сохранить файлы на стороне сервера или на стороне клиента?

Если это серверная часть, тогда вы будете иметь контроль над ОС (если, конечно, вы не развертываете сервер приложений для каждого пользователя, а они будут запускать его локально ...), но я отвечу на ваш вопрос Я думаю, что вы предлагаете хранить данные на стороне клиента. В этом случае вы можете использовать куки, если вы не храните конфиденциальные данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...