Адресная книга. Можно зайти и посмотреть свои контакты, поискать по ним, отредактировать, можно присвоить тэги "Друзья", "Семья" и т.д. для каждого контакта, можно так же оставлять заметки. Можно импортировать контакты из разных источников. Например, можно экспортировать контакты из mail.ru и перетащить их легко в наш сервис, перетащить так же легко контакты из вконтакте и нужные контакты по нашей задумке автоматически объединятся, то есть есть часть информации о человеке вконтакте, а часть в почте. При импорте всё это будет учтено и данные вставятся в нужный контакт.
- Установить Vagrant
- Получить содержимое этого репозитория
git clone https://bitbucket.org/char16t/address-book.git
- Перейти в директорию репозитория
cd address-book
- Поднять виртуальную машину
vagrant up
, всё необходимое установится на виртуальную машину в процессе первого запуска - Открыть в браузере http://localhost:8080
- После завершения работы выключить вирутальную машину
vagrant halt
1 способ:
- Выполнить
vagrant provision --provision-with shell
- Открыть в браузере http://localhost:8080 и проверить изменения
2 способ:
- Зайти внутрь виртуальной машины
vagrant ssh
- Перейти в
/vagrant/backend
(cd /vagrant/backend
) - Выполнить
mvn clean package
- Скопировать собранный EAR-файл в папку Wildfly для горячего деплоя (
sudo cp ear/target/addressbook-ear-1.0.ear /opt/wildfly/standalone/deployments
) - Открыть в браузере http://localhost:8080 и проверить изменения
Директория | Описание |
---|---|
cm |
(configuration managment) содержит файлы с конфигурацией и настройками среды работы приложения |
docs |
содержит документацию проекта |
database |
содержит SQL-скрипты схемы базы данных и тестовые данные |
database/schema.sql |
содержит схему базы данных |
database/initdata.sql |
содержит информацию, которой наполняем схему сразу после её создания |
database/demodata.sql |
содержит демонстрационные данные |
frontend |
содержит файлы клиентской части приложения |
backend |
содержит серверную часть приложения |
backend/core |
здесь в основном лежат entity-бины + "репозитории" |
backend/managers |
здесь обертки над API для разных сторонних систем (типа LDAP, NAT, RADIUS и т.д.) и разного рода API социальных сетей и интернет-сервисов. |
backend/managers-impl |
в папке выше лежат интерфейсы, здесь имплементация |
backend/services |
здесь stateless бины для работы с базой и тому подобное |
backend/web |
здесь классы, которые отвечают за rest-сервисы |
После запуска виртуальной машины и до её выключения становятся доступны некоторые сервисы через перечисленные порты. Нужно убедиться, что до старта виртуальной машины эти порты свободны.
8080
веб-интерфейс приложения через Nginx8081
обращение к API напрямую через Wildfly5433
порт Postgresql5006
порт для удаленной Java-отладки9990
порт для администрирования Wildfly
Доступные адреса:
- http://localhost:8080 -- Веб-интерфейс приложения
- http://localhost:9990 -- Панель администрирования Wildfly
- http://localhost:8081 -- Прямой доступ к Wildfly. По http://localhost:8080 доступ происходит через Nginx. А запросы на адреса вида
/addressbook/rest/*
перенаправляются к Wildfly. В случае возникновения неполадок можно попробовать поработать c API напрямую с Wildfly
Доступ к базе данных:
- Хост
localhost
- Порт
5433
- Пользователь
addressbook
- Пароль
passwd
- База данных
addressbook
Доступ к администрированию Wildfly:
- Логин:
admin
- Пароль:
passwd
Чтобы начать писать прямые запросы к базе данных, можно воспользоваться консолью PostgreSQL. Для этого нужно
- Зайти внутрь виртуальной машины:
vagrant ssh
- Зайти в консоль PostgreSQL
sudo -u postgres psql -d addressbook
Чтобы посмотреть все таблицы в базе данных, нужно ввести \d
, чтобы посмотреть поля таблицы \d <имятаблицы>
, чтобы выйти -- нужно ввести \q
.