- Подключить
Hibernate
к проекту (5 мин.) - Добавить поле
version
в классыUser
,Authority
иActivity
(2 мин.) - Пометить поле
id
в классахUser
,Authority
иActivity
аннотацией@Generated
(40 мин.) - Написать маппинг для классов
User
,Authority
иActivity
и конфигурацию дляHibernate
(70 мин.) - Создать класс
HibernateProvider
(30 мин.)get()
возвращаетSessionFactory
- Создать классы
UserDao
,AuthorityDao
,ActivityDao
(20 мин.) - Заинжектить
HibernateProvider
вUserDao
,AuthorityDao
,ActivityDao
(10 мин.) - Перенести методы
DBWrapper
взаимодействующие с сущностямиUser
,Authority
иActivity
в соответствующиеDao
классы и переписать их на работу сHibernateProvider
(100 мин.) - В сервлеты
UserServlet
,AuthorityServlet
иActivityServlet
вместоDBWrapper
заинжектить соответствующиеDao
классы (15 мин.) - Подключить
c3p0
к проекту (10 мин.) - Настроить
Hibernate
на работу сc3p0
(40 мин.) - В
HibernateProvider
добавить замену параметров подключения к БД из конфига на параметры получаемые через переменные среды (30 мин.)- Если переменная
DATABASE_URL
существует, использовать параметры из переменных, иначе из конфига
- Если переменная
- Адаптировать миграции для работы с
PostgreSQL
(50 мин.) - Написать миграции для приведения схемы данных в вид совместимый с ORM (60 мин.)
Пункт плана | Оценка времени | Фактическое время |
---|---|---|
1. | 5 мин. | |
2. | 2 мин. | |
3. | 40 мин. | |
4. | 70 мин. | |
5. | 30 мин. | |
6. | 20 мин. | |
7. | 10 мин. | |
8. | 100 мин. | |
9. | 15 мин. | |
10. | 10 мин. | |
11. | 40 мин. | |
12. | 30 мин. | |
13. | 50 мин. | |
14. | 60 мин. |