GordinMaxim / ProductCatalog

test task for Improve Group

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Product Catalog

Необходимые интсрументы

Убедитесь, что у вас установлены:

  • Tomcat 8
  • MySQL или MariaDB полседних версий
  • maven 3.3.9
  • Java 1.8

Также перед запуском сервлета требуется создать базу данных testdb с пользователем root и паролем test и таблицы category и product (вы можете поменять настройки БД в файле src/main/resources/META-INF/persistence.xml) :

CREATE TABLE category
( id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
ALTER TABLE category ADD CONSTRAINT uq_category_name UNIQUE (name);

CREATE TABLE product
( id INT(11) NOT NULL AUTO_INCREMENT,
cat_id INT(11) NOT NULL,
name VARCHAR(255) NOT NULL,
price DECIMAL(16,2) NOT NULL,
PRIMARY KEY (id),
INDEX cat_id (cat_id),
FOREIGN KEY (cat_id) REFERENCES category(id) ON DELETE CASCADE
); 

Заполните таблицы некоторыми значениями:

insert into category (name) values ("category 1");
insert into category (name) values ("category 2");
insert into category (name) values ("category 3");
insert into category (name) values ("category 4");

insert into product (cat_id, name, price) values (1, "cat1_pname1", 11.11);
insert into product (cat_id, name, price) values (1, "cat1_pname2", 121.322);
insert into product (cat_id, name, price) values (2, "cat2_pname1", 2211.1222);
insert into product (cat_id, name, price) values (2, "cat2_pname2", 324256);
insert into product (cat_id, name, price) values (3, "cat3_pname1", 0.567);
insert into product (cat_id, name, price) values (3, "cat3_pname2", 54.21);
insert into product (cat_id, name, price) values (4, "cat4_pname1", 99999.1);
insert into product (cat_id, name, price) values (4, "cat4_pname2", 222.22);

Примечание:

  • Наполнить таблицу product можно после запуска сервлета из веб-интерфейса
  • При нажатии на кнопку поиска с пустыми формами, в таблице отобразятся все записи из БД

Установка

  1. Клонируйте репозиторий https://github.com/GordinMaxim/ProductCatalog.git или скачайте исходный код архивом и распакуйте
  2. В корневом каталоге ProductCatalog выполните команду mvn clean install
  3. Полученный .war-файл в каталоге ProductCatalog/target разверните в контейнере сервлетов Tomcat
  4. Перейдите по ссылке http://localhost:8080/Catalog/

Вместо сборки сервлета в консоли, можно импортировать проект в какую-либо IDE (Eclipse или Intellij IDEA) и развернуть сервлет в интегрированном в IDE контейнере сервлетов

About

test task for Improve Group


Languages

Language:Java 100.0%