Java Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° | Spring Boot Backend & Architecture. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΠΠΆΠ°Π²Π° Π΄Π»Ρ Developer. IT Π‘ΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ, ΠΠ»Π³ΠΎΡΠΈΡΠΌΡ ΠΈ Coding Π·Π°Π΄Π°ΡΠΈ. Π£ΡΠΎΠΊΠΈ ΠΈ ΠΊΡΡΡΡ Π΄Π»Ρ ΡΠΎΡΡΠ° Π² Tech.
ΠΠ°ΡΠΊΠ° Β· 18 ΠΈΡΠ½Ρ 2026 Π³.
π§ͺ ΠΠ°ΡΠ΅ΠΌ Java-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π² SQL?
π§ͺ ΠΠ°ΡΠ΅ΠΌ Java-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π² SQL? Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΏΠΎΠΊΠ°ΠΆΡ Π²Π°ΠΌ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΡΡΡΠΊ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ ΠΏΠΈΡΠ΅Ρ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ Π² PostgreSQL (ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΌ Π΄ΡΡΠ³ΠΎΠΌ SQL-Π΄Π²ΠΈΠΆΠΊΠ΅) ΠΈ Ρ ΠΎΡΠ΅Ρ ΠΈΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅ΡΡ Π΄ΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π² Java-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Ρ ΡΠ΅Π±Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΠ»ΠΎΠΆΠ½Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° Π² JOIN, CASE, ΠΎΠΊΠΎΠ½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡΡ ΠΈΠ»ΠΈ CTE β ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡΠΉ ΡΡΠΎ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ Π±Π°Π·Ρ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ. πΉ Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΡΠ½ΠΊΡΠΈΡ Π² PostgreSQL: CREATE OR REPLACE FUNCTION test_discount(user_id INT) RETURNS NUMERIC AS $$ BEGIN RETURN ( SELECT CASE WHEN u.vip = true THEN 0.2 ELSE 0.05 END FROM users u WHERE u.id = user_id ); END; $$ LANGUAGE plpgsql; πΉ ΠΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ ΠΏΡΡΠΌΠΎ Π² Π±Π°Π·Π΅: SELECT test_discount(101); -- Π²Π΅ΡΠ½ΡΡ 0.2 ΠΈΠ»ΠΈ 0.05 β ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠ³Π΄Π°: - Π’Ρ Ρ ΠΎΡΠ΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π΅ΡΠΊΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ Π±Π΅Π· Π·Π°ΠΏΡΡΠΊΠ° Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ; - Π£ ΡΠ΅Π±Ρ CI/CD Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ SQL-ΡΠ΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ (ΡΠ΅ΡΠ΅Π· pgTAP, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ); - Π’Ρ Ρ ΠΎΡΠ΅ΡΡ Π±ΡΡΡΡΠΎ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π·Π°ΠΏΡΠΎΡ Π°Π½Π°Π»ΠΈΡΠΈΠΊΡ ΠΈΠ»ΠΈ ΡΠΈΠΌΠ»ΠΈΠ΄Ρ Π±Π΅Π· Java-ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°. π‘ΠΠ°ΠΉΡΡ Π°ΠΊ: Π΅ΡΠ»ΠΈ ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡ Liquibase/Flyway β ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅ΡΠΆΠ°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΡΠΌΠΎ Π² changelog'Π°Ρ ΠΊΠ°ΠΊ test-only objects, Π½Π΅ Π²Π»ΠΈΡΡ Π½Π° runtime-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎΠΏΡΠΎΠ±ΡΠΉ β ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ ΠΌΠ°ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΡΠ΅Π²ΡΡ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠ΅ Π·Π°ΠΏΡΠΎΡΠΎΠ²! π @BookJava
ΠΠ°Π½Π°Π» Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΠ°ΠΊΡΠΈΠΌΠ΅ΡΠ΅ΡΠ°
1Β 607 ΠΏΠΎΠ΄ΠΏΠΈΡΡΠΈΠΊΠΎΠ² Β· ΠΠ°ΡΠΊΠ°