Уникальный материал, у которого преступно мало просмотров! Автору низкий поклон
@java-guru Жыл бұрын
Спасибо!))
@SleepyM1racle11 ай бұрын
Спасибо за такой детальный метериал! Давно хотел немного детальнее узнать о реализации Jpa.
@java-guru11 ай бұрын
Спасибо за отклик!! Приятно)
@ЭдуардВолков-к7л5 ай бұрын
Благодарю за материал, прошу подшить файлики с содержимым init.sql data.sql - init переписать можно , вы его быстро просматриваете , а data - нет .
@specific_visitor7 ай бұрын
крайне полезное видео, спасибо
@СеменРосляков-п3г Жыл бұрын
И правда, классный материал, но столкнулся с проблемой создания базы, а точнее заполнении её данными) Поскольку никаких ссылок на материал в видосе не прикреплено (либо я не нашел), то пришлось базу по схеме создавать - это ок и прям норм практика. Но вот заполнять рандомными данными так муторно и накладно конечно, хотелось бы ссылочку на data.sql. Но главная проблема в том, что когда я буду получать не такие результаты запросов, как у автора, я каждый раз буду тратить время на сопоставление своих данных с авторскими вместо прямого сравнения результатов :(
@malis-025 ай бұрын
💯💯💯💯💯💯
@inavto92711 ай бұрын
Зачем писать отдельный класс для Set и Get ID? Если можно использовать аннотации @Setter/Getter над классом?( я не докапываюсь, просто вопрос)
@Sour_producer6 ай бұрын
Автор чертовски крут, но можно пожалуйста ссылочку на репозиторий 🫠
@ЭдуардВолков-к7л5 ай бұрын
я заморочился и вытащил что смог , может кто дополнит ---------------------------------------------------------------------------- CREATE TABLE IF NOT EXISTS company ( id SERIAL PRIMARY KEY, name VARCHAR(64) NOT NULL UNIQUE ); CREATE TABLE IF NOT EXISTS company_locales ( company_id INT REFERENCES company (id), lang VARCHAR(2), description VARCHAR(255) NOT NULL , PRIMARY KEY (company_id, lang) ); CREATE TABLE IF NOT EXISTS users ( id BIGSERIAL PRIMARY KEY, username VARCHAR(64) NOT NULL UNIQUE , birth_date DATE, firstname VARCHAR(64), lastname VARCHAR(64), role VARCHAR(32), company_id INT REFERENCES company (id) ); CREATE TABLE IF NOT EXISTS payment ( id BIGSERIAL PRIMARY KEY, amount INT NOT NULL, receiver_id BIGINT NOT NULL REFERENCES users (id) ); CREATE TABLE IF NOT EXISTS chat ( id BIGSERIAL PRIMARY KEY, name VARCHAR(64) NOT NULL UNIQUE ); CREATE TABLE IF NOT EXISTS users_chat ( id BIGSERIAL PRIMARY KEY, user_id BIGINT NOT NULL REFERENCES users (id), chat_id BIGINT NOT NULL REFERENCES chat (id), UNIQUE (user_id, chat_id) );
@АлексейВлесенко-т3ф3 ай бұрын
если вдруг не захочется писать тестовые данные самому: INSERT INTO company (name) VALUES ('Company A'), ('Company B'), ('Company C'); INSERT INTO company_locales (company_id, lang, description) VALUES (1, 'en', 'English Description for Company A'), (1, 'ru', 'Русское описание для Company A'), (2, 'en', 'English Description for Company B'), (2, 'ru', 'Русское описание для Company B'), (3, 'en', 'English Description for Company C'), (3, 'ru', 'Русское описание для Company C'); INSERT INTO users (username, birth_date, firstname, lastname, role, company_id) VALUES ('userA', '1990-01-01', 'Alex', 'Smith', 'user', 1), ('userB', '1991-02-02', 'Bob', 'Johnson', 'admin', 2), ('userC', '1992-03-03', 'Charlie', 'Williams', 'moderator', 3); INSERT INTO payment (amount, receiver_id) VALUES (500, 1), (300, 2), (700, 3); INSERT INTO chat (name) VALUES ('Chat A'), ('Chat B'), ('Chat C'); INSERT INTO users_chat (user_id, chat_id) VALUES (1, 1), (2, 2), (3, 3), (1, 3), (2, 1), (3, 2);
@Sergey094012 ай бұрын
data INSERT INTO company (name) VALUES ('Google'), ('Meta'), ('Amazon'); INSERT INTO company_locales (company_id, lang, description) VALUES ((SELECT id FROM company WHERE name = 'Google'), 'en', 'Google description'), ((SELECT id FROM company WHERE name = 'Google'), 'ru', 'Google описание'), ((SELECT id FROM company WHERE name = 'Meta'), 'en', 'Meta description'), ((SELECT id FROM company WHERE name = 'Meta'), 'ru', 'Meta описание'), ((SELECT id FROM company WHERE name = 'Amazon'), 'en', 'Amazon description'), ((SELECT id FROM company WHERE name = 'Amazon'), 'ru', 'Amazon описание'); INSERT INTO users (birth_date, firstname, lastname, role, username, company_id) VALUES ('1990-01-10', 'Ivan', 'Ivanov', 'ADMIN', 'ivan@gmail.com', (SELECT id FROM company WHERE name = 'Google')), ('1995-10-19', 'Petr', 'Petrov', 'USER', 'petr@gmail.com', (SELECT id FROM company WHERE name = 'Google')), ('2001-12-23', 'Sveta', 'Svetikova', 'USER', 'sveta@gmail.com', (SELECT id FROM company WHERE name = 'Meta')), ('1984-03-14', 'Vlad', 'Vladikov', 'USER', 'vlad@gmail.com', (SELECT id FROM company WHERE name = 'Amazon')), ('1984-03-14', 'Kate', 'Smith', 'ADMIN', 'kate@gmail.com', (SELECT id FROM company WHERE name = 'Amazon')); INSERT INTO payment (amount, receiver_id) VALUES (100, (SELECT id FROM users WHERE username = 'ivan@gmail.com')), (300, (SELECT id FROM users WHERE username = 'ivan@gmail.com')), (500, (SELECT id FROM users WHERE username = 'ivan@gmail.com')), (250, (SELECT id FROM users WHERE username = 'petr@gmail.com')), (600, (SELECT id FROM users WHERE username = 'petr@gmail.com')), (500, (SELECT id FROM users WHERE username = 'petr@gmail.com')), (400, (SELECT id FROM users WHERE username = 'sveta@gmail.com')), (300, (SELECT id FROM users WHERE username = 'sveta@gmail.com')), (500, (SELECT id FROM users WHERE username = 'vlad@gmail.com')), (700, (SELECT id FROM users WHERE username = 'vlad@gmail.com')), (340, (SELECT id FROM users WHERE username = 'vlad@gmail.com')), (440, (SELECT id FROM users WHERE username = 'kate@gmail.com')), (510, (SELECT id FROM users WHERE username = 'kate@gmail.com')), (630, (SELECT id FROM users WHERE username = 'kate@gmail.com')); INSERT INTO chat (name) VALUES ('dmdev'), ('java'), ('database'); INSERT INTO users_chat(user_id, chat_id) VALUES ((SELECT id FROM users WHERE username = 'ivan@gmail.com'), (SELECT id FROM chat WHERE name = 'dmdev')), ((SELECT id FROM users WHERE username = 'petr@gmail.com'), (SELECT id FROM chat WHERE name = 'dmdev')), ((SELECT id FROM users WHERE username = 'sveta@gmail.com'), (SELECT id FROM chat WHERE name = 'dmdev')), ((SELECT id FROM users WHERE username = 'petr@gmail.com'), (SELECT id FROM chat WHERE name = 'java')), ((SELECT id FROM users WHERE username = 'sveta@gmail.com'), (SELECT id FROM chat WHERE name = 'java')), ((SELECT id FROM users WHERE username = 'vlad@gmail.com'), (SELECT id FROM chat WHERE name = 'java')), ((SELECT id FROM users WHERE username = 'kate@gmail.com'), (SELECT id FROM chat WHERE name = 'java')), ((SELECT id FROM users WHERE username = 'petr@gmail.com'), (SELECT id FROM chat WHERE name = 'database')), ((SELECT id FROM users WHERE username = 'kate@gmail.com'), (SELECT id FROM chat WHERE name = 'database')); init CREATE TABLE IF NOT EXISTS company ( id SERIAL PRIMARY KEY , name VARCHAR(64) NOT NULL UNIQUE ); CREATE TABLE IF NOT EXISTS company_locales ( company_id INT REFERENCES company (id), lang VARCHAR(2), description VARCHAR(255) NOT NULL , PRIMARY KEY (company_id, lang) ); CREATE TABLE IF NOT EXISTS users ( id BIGSERIAL PRIMARY KEY , username VARCHAR(64) NOT NULL UNIQUE , birth_date DATE, firstname VARCHAR(64), lastname VARCHAR(64), role VARCHAR(32), company_id INT REFERENCES company (id) ); CREATE TABLE IF NOT EXISTS payment ( id BIGSERIAL PRIMARY KEY , amount INT NOT NULL , receiver_id BIGINT NOT NULL REFERENCES users (id) ); CREATE TABLE IF NOT EXISTS chat ( id BIGSERIAL PRIMARY KEY , name VARCHAR(64) NOT NULL UNIQUE ); CREATE TABLE IF NOT EXISTS users_chat ( id BIGSERIAL PRIMARY KEY , user_id BIGINT NOT NULL REFERENCES users (id), chat_id BIGINT NOT NULL REFERENCES chat (id), UNIQUE (user_id, chat_id) );