Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Хранение объектов


Автор: evgovs1991 25.6.2015, 16:39
Подскажите где можно хранить объекты? У меня есть допустим класс с тремя полями...создаю объект...записываю данные в поля а потом нужно изменить данные в объекте и при этом сохранить старые . 

Автор: AntonSaburov 25.6.2015, 17:22
Сохранить старое состояние объекта надо где ?

Автор: evgovs1991 26.6.2015, 08:59
Цитата(AntonSaburov @ 25.6.2015,  17:22)
Сохранить старое состояние объекта надо где ?

в ArrayList например

Автор: AntonSaburov 26.6.2015, 09:35
Честно говря не понимаю зачем. Но вот вариант - хранить состояния в ArrayList с добавленим поля version. Все изменения полей делать через set/get в которых создавать копии и сохранять их в ArrayList. 
Ну и надо тогда учесть многопоточность - т.е. сделать все методы set/get синхронизированными.

Автор: LSD 26.6.2015, 17:07
Цитата(evgovs1991 @  25.6.2015,  17:39 Найти цитируемый пост)
У меня есть допустим класс с тремя полями...создаю объект...записываю данные в поля а потом нужно изменить данные в объекте и при этом сохранить старые .

Проще не менять старый, а просто создавать новый на базе старого.

Автор: Atum 1.7.2015, 18:02
В базе ... хранить надо в базе .

Это называется ,как вариант , Класс ассоциация ...

A--B--C

A--C -  связаны через класс ассоциацию B

можно выродить и хранить в одной таблице и менять версию объекта ... актуальный всегда имеет более старшую версию итд ...

Автор: AntonSaburov 2.7.2015, 13:01
Если один класс и мало полей, то можно просто через JDBC - пример тут: http://java-course.ru/student/book1/database/

Если много классов и сложные структуры, то удобнее через Hibernate - пример тут:http://java-course.ru/student/book2/hibernate-first/

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)