рдЗрд╕ рдмрд╣реБрдд рджреЗрд░ рдХреЗ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рд╕рдордЭрд╛рдКрдВрдЧрд╛, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЬрдм рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдореЙрдбрд▓ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд╣рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред "рдЬрд╛рд╡рд╛ [рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рднрд╛рд╖рд╛] рдкрд╣рд▓реЗ" рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдмрдЬрд╛рдп, рдЬреЛ рдЖрдкрдХреЛ рджрд░реНрдж рдФрд░ рдкреАрдбрд╝рд╛ рд╕реЗ рднрд░реЗ рд▓рдВрдмреЗ рдЯреНрд░реИрдХ рдкрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдврд╝рдиреЗ рд▓рдЧрддреА рд╣реИред

рдПрд▓рди рдУ'рд░реЛрд░рдХреЗ / рдСрдбрд┐рдпрдВрд╕ рд╕реНрдЯреИрдХ рджреНрд╡рд╛рд░рд╛ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдЯреВ рд╕реАрд╕реА рдмреЗрд╣рддрд░ "рдЯреВ рдмрд┐рдЬреА рдмрд┐рдлреЛрд░ рдмреА"ред рдореВрд▓ рдЫрд╡рд┐
рдпрд╣ рд▓реЗрдЦ рдПрдХ рд╣рд╛рд▓рд┐рдпрд╛ StackOverflow рдкреНрд░рд╢реНрди рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рд╣реИ ред
рджрд┐рд▓рдЪрд╕реНрдк рд░реЗрдбрд┐рдЯ рдЪрд░реНрдЪрд╛ / рдЖрд░ / рдЬрд╛рд╡рд╛ рдФрд░ / рдЖрд░ / рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ ред
рдХреЛрдб рдЬрдирд░реЗрд╢рди
рдореЗрд░реЗ рдЖрд╢реНрдЪрд░реНрдп рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рд╕рдореВрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рдЪреМрдВрдХ рдЧрдпрд╛ рд╣реИ рдХрд┐ jOOQ рд╕реНрд░реЛрдд рдХреЛрдб рдкреАрдврд╝реА рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмрдВрдзрд╛ рд╣реБрдЖ рд╣реИред
рдЬрдм рдЖрдк рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ jOOQ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдкрд╕рдВрджреАрджрд╛ рддрд░реАрдХрд╛ (рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рдЕрдиреБрд╕рд╛рд░) рдореМрдЬреВрджрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ, рдлрд┐рд░ jOOQ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рд╢реНрдпрдХ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреНрд▓рд╛рд╕реЗрд╕ (рдЕрдкрдиреА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рдЕрдиреБрд░реВрдк) рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдЯрд╛рдЗрдк-рд╕реЗрдл рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЗрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢реНрди:
for (Record2<String, String> record : DSL.using(configuration)
рдХреЛрдб рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рдмрд╛рд╣рд░ рдпрд╛ рддреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд╕рд╛рде рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдРрд╕реА рдкреАрдврд╝реА рдлреНрд▓рд╛рдИрд╡реЗ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд╣реЛ рд╕рдХрддреА рд╣реИ , рдЬрд┐рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдпрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рднреА рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕реНрд░реЛрдд рдХреЛрдб рдкреАрдврд╝реА
рдХреЛрдб рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рдЗрди рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рджрд░реНрд╢рди, рдлрд╛рдпрджреЗ рдФрд░ рдиреБрдХрд╕рд╛рди рд╣реИрдВ, рдЬреЛ рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдЙрддреНрдкрдиреНрди рдХреЛрдб рдХрд╛ рдЕрд░реНрде рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЬрд╛рд╡рд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ "рдорд╛рдирдХ" рдорд╛рдирддреЗ рд╣реИрдВ (рд╣рдорд╛рд░реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЕрдВрджрд░ рдФрд░ рдмрд╛рд╣рд░ рджреЛрдиреЛрдВ)ред рдПрдХ рддрд░рд╣ рд╕реЗ, рдХрдВрдкрд╛рдЗрд▓рд░ рдПрдХ рд╣реА рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рд╡реЗ рд╕реНрд░реЛрдд рд╕реЗ рдмрд╛рдИрдЯреЗрдХреЛрдб, рдорд╢реАрди рдХреЛрдб рдпрд╛ рдХреБрдЫ рдЕрдиреНрдп рд╕реНрд░реЛрдд рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ - рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдПрдХ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрд╛рд╖рд╛ рдореЗрдВ рд╣рдорд╛рд░реЗ "рдорд╛рдирдХ" рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓рддрд╛ рд╣реИред
рдХрд╛рдлреА рдХреБрдЫ рдРрд╕реЗ рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, XJC XSD рдпрд╛ WSDL рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдЬрд╛рд╡рд╛ рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ ред рд╕рд┐рджреНрдзрд╛рдВрдд рд╣рдореЗрд╢рд╛ рд╕рдорд╛рди рд╣реИ:
- рдХреБрдЫ рдорд╛рдирдХ (рдмрд╛рд╣рд░реА рдпрд╛ рдЖрдВрддрд░рд┐рдХ) рд╣реИрдВ, рдЬреИрд╕реЗ рд╡рд┐рдирд┐рд░реНрджреЗрд╢, рдбреЗрдЯрд╛ рдореЙрдбрд▓, рдЖрджрд┐ред
- рд╣рдорд╛рд░реА рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ рдЗрд╕ рдорд╛рдирдХ рдХрд╛ рдЕрдкрдирд╛ рд╡рд┐рдЪрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдФрд░ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рдпрд╣ рдмреЗрдХрд╛рд░ рдХрд╛рдо рдФрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЧрд▓рддрд┐рдпреЛрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рджреГрд╢реНрдп рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдкреНрд░рджрд╛рддрд╛рдУрдВ рдФрд░ рдПрдиреЛрдЯреЗрд╢рди рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЯрд╛рдЗрдк рдХрд░реЗрдВ
рдпрд╣ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ рдХрд┐ jOOQ рдореЗрдВ рдХреЛрдб рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░, рдЕрдзрд┐рдХ рдЖрдзреБрдирд┐рдХ, рдЯрд╛рдЗрдк рдкреНрд░реЛрд╡рд╛рдЗрдбрд░реНрд╕ ( рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ F # рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ) рд╣реИ, рдЬрд╣рд╛рдВ рд╕рдВрдХрд▓рди рдкрд░ рдХрдВрдкрд╛рдЗрд▓рд░ рджреНрд╡рд╛рд░рд╛ рдХреЛрдб рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдореВрд▓ рд░реВрдк рдореЗрдВ рдХрднреА рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдЬрд╛рд╡рд╛ рдореЗрдВ рдПрдХ рд╕рдорд╛рди (рд▓реЗрдХрд┐рди рдХрдо рдкрд░рд┐рд╖реНрдХреГрдд) рдЙрдкрдХрд░рдг рд▓реЛрдореНрдмреЛрдХ рдЬреИрд╕реЗ рдПрдиреЛрдЯреЗрд╢рди рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИред
рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╕рд╛рдорд╛рдиреНрдп рдХреЛрдб рдкреАрдврд╝реА рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдм рдХреБрдЫ рдПрдХ рдЬреИрд╕рд╛ рд╣реИ:
- рдЖрдк рдЙрддреНрдкрдиреНрди рдХреЛрдб рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВ (рд╢рд╛рдпрдж рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рдкреНрд▓рд╕ рд╣реИ?)
- рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЖрдкрдХрд╛ "рд╕рдВрджрд░реНрдн" рд╣рд░ рд╕рдВрдХрд▓рди рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛред рдпрд╣ рд▓реЛрдореНрдмреЛрдХ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдкреИрджрд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╕реАрдзреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ "рдорд╛рдирдХ" рд╣реИред рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рдереЛрдбрд╝рд╛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЬреЛ рд╣рдореЗрд╢рд╛ рд▓рд╛рдЗрд╡ рдХрдиреЗрдХреНрд╢рди рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВред
рдХреЛрдб рдкреАрдврд╝реА рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ?
рдХреЛрдб рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдпрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬреЗрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдЯреНрд░рд┐рдХреА рдкреНрд░рд╢реНрди рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреБрдЫ рд▓реЛрдЧ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдХреЛрдб рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рд╕реБрдирдиреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдРрд╕реА рдкреАрдврд╝реА рдХреЛ CI / CD рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдФрд░ рд╣рд╛рдБ, рдпрд╣ рд╕рдЪ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрддрд┐рд░рд┐рдХреНрдд рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдмрдирд╛рдиреЗ рдФрд░ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдУрд╡рд░рд╣реЗрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рдирдП рд╣реИрдВ (jOOQ, JAXB, рд╣рд╛рдЗрдмрд░рдиреЗрдЯ, рдЖрджрд┐)ред
рдпрджрд┐ рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХрд╛ рдУрд╡рд░рд╣реЗрдб рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рдХрдо рд▓рд╛рдн рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХрдорд╛рддреНрд░ рддрд░реНрдХ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдпрд╣ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдХрд┐рд╕реА рдЪреАрдЬ рдХреЗ рдореЙрдбрд▓ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╣реИред
рдХрдИ рд▓реЛрдЧ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдордп рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрднреА рдЖрдкрдХреЛ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдПрдХ рдФрд░ рдПрдорд╡реАрдкреА рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рд╡реЗ рдХреБрдЫ рд╕рдордп рдмрд╛рдж рдЕрдкрдиреА рд╕реАрдЖрдИ / рд╕реАрдбреА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреЛ рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдХрд╣рддрд╛ рд╣реВрдВ, "рдЖрдк рдмреЗрд╣рддрд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╡реНрдпрд╕реНрдд рд╣реИрдВред"
"рд▓реЗрдХрд┐рди рд╣рд╛рдЗрдмрд░рдиреЗрдЯ / рдЬреЗрдкреАрдП рдЬрд╛рд╡рд╛ рдХреЗ рдкрд╣рд▓реЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред"
рд╣рд╛рдБ рдпрд╣ рд╕рдЪ рд╣реИред рдпрд╣ рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЦреБрд╢реА рдФрд░ рджрд░реНрдж рджреЛрдиреЛрдВ рд╣реИред рдЗрд╕рдХреЗ рд╕рд╛рде, рдЖрдк рдлреЙрд░реНрдо рдХреА рдХрдИ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
@Entity class Book { @Id int id; String title; }
рдФрд░ рд╡рд╣ рд▓рдЧрднрдЧ рдкреВрд░рд╛ рд╣реЛ рдЪреБрдХрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдбреАрдбреАрдПрд▓ рдФрд░ рд╡рд╛рдВрдЫрд┐рдд SQL рдмреЛрд▓реА рдореЗрдВ рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрд░реА рджрд┐рдирдЪрд░реНрдпрд╛ рдХреЛ рд▓реЗ рдЬрд╛рдПрдЧрд╛:
CREATE TABLE book ( id INTEGER PRIMARY KEY GENERATED ALWAYS AS IDENTITY, title VARCHAR(50), CONSTRAINT pk_book PRIMARY KEY (id) ); CREATE INDEX i_book_title ON book (title);
рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬрд▓реНрджреА рд╕реЗ рд╡рд┐рдХрд╛рд╕ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реИ - рдЖрдкрдХреЛ рдмрд╕ рдЖрд╡реЗрджрди рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИред
рд▓реЗрдХрд┐рди рд╕рдм рдХреБрдЫ рдЗрддрдирд╛ рд░рд╕рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред рдЕрднреА рднреА рдХрдИ рд╕рд╡рд╛рд▓ рд╣реИрдВ:
- рдХреНрдпрд╛ рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдЙрд╕ рдирд╛рдо рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?
- рдХреНрдпрд╛ рдореИрдВ TITLE рдлрд╝реАрд▓реНрдб рдкрд░ рдЕрдкрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдмрдирд╛рдКрдВрдЧрд╛?
- рдХреНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрдИрдбреА рдорд╛рди рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд╣реАрдВред рд▓реЗрдХрд┐рди рдЬрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдЪрд▓ рд░рд╣рд╛ рд╣реЛ, рддреЛ рдЖрдк рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рд╡рд░реНрддрдорд╛рди рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдлреЗрдВрдХ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореЙрдбрд▓ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдПрдиреЛрдЯреЗрд╢рди рдЬреЛрдбрд╝рдХрд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╕рдм рдХреБрдЫ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рддреЛ, рдкреБрд╕реНрддрдХ рд╡рд░реНрдЧ рдЕрдкрдиреЗ рдЕрдВрддрд┐рдо рд░реВрдк рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:
@Entity @Table(name = "book", indexes = { @Index(name = "i_book_title", columnList = "title") }) class Book { @Id @GeneratedValue(strategy = IDENTITY) int id; String title; }
рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕рдХреЗ рд▓рд┐рдП рднреБрдЧрддрд╛рди рдХрд░реЗрдВрдЧреЗ, рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж
рдЬрд▓реНрджреА рдпрд╛ рдмрд╛рдж рдореЗрдВ, рдЖрдкрдХрд╛ рдЖрд╡реЗрджрди рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╡рд░реНрдгрд┐рдд рдпреЛрдЬрдирд╛ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдЧреА:
рдПрдХ рдЬреАрд╡рд┐рдд рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ, рдЖрдк рдЕрдм рдЕрдкрдирд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдирд╣реАрдВ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдХрд╛рдлреА рдкреИрд╕рд╛ рдЦрд░реНрдЪ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдЕрдм рд╕реЗ, рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлреНрд▓рд╛рдИрд╡реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдкрдХреЗ рдЧреНрд░рд╛рд╣рдХ рд╡рд░реНрдЧреЛрдВ рдХрд╛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ? рдЖрдк рдпрд╛ рддреЛ рдЙрдиреНрд╣реЗрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рджреЛрд╣рд░рд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛) рдпрд╛ рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдХреЛ рдЙрдиреНрд╣реЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВ (рд▓реЗрдХрд┐рди рдЕрдкреЗрдХреНрд╖рд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕реА рдкреАрдврд╝реА рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХрд┐рддрдиреЗ рд╕рдВрднрд╛рд╡рд┐рдд рд╣реИрдВ?)ред рдирддреАрдЬрддрди, рдЖрдк рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЬреИрд╕реЗ рд╣реА рдХреЛрдб рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдЖрддрд╛ рд╣реИ, рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рддреБрд░рдВрдд рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдФрд░ рдЬрд┐рддрдиреА рдЬрд▓реНрджреА рд╣реЛ рд╕рдХреЗред
рдФрд░ рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреА рд╕реНрдерд╛рдкрдирд╛ рдЖрдкрдХреА рдЕрд╕реЗрдВрдмрд▓реА рд▓рд╛рдЗрди рдореЗрдВ рдирд╣реАрдВ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЬреЛрдЦрд┐рдо рдкрд░ рдРрд╕реЗ рдкреИрдЪ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдФрд░ рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдордп рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЕрдкрдиреА рд╕рднреА рдкрд░реЗрд╢рд╛рдирд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдХреЛ рджреЛрд╖реА рдард╣рд░рд╛рдирд╛ рд╣реА рдХрд╛рдлреА рд╣реИред
рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдЖрдк рд╢реБрд░реВ рд╕реЗ рд╣реА рдХрд╛рдлреА рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рдЕрднрд┐рдирдп рдХрд░ рд╕рдХрддреЗ рдереЗред рдЕрд░реНрдерд╛рддреН, рдЪреМрдХреЛрд░ рд╡рд╛рд▓реЗ рдХреЗ рдмрдЬрд╛рдп рдЧреЛрд▓ рдкрд╣рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдкрд╣рд▓реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЬрд╛рдПрдВ
рдбреЗрдЯрд╛ рд╕реНрдХреАрдорд╛ рд╕рдВрджрд░реНрдн рдФрд░ рдирд┐рдпрдВрддреНрд░рдг рдЖрдкрдХреЗ DBMS рдХреЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рд╣реИред рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдПрдХрдорд╛рддреНрд░ рд╕реНрдерд╛рди рд╣реИ рдЬрд╣рд╛рдВ рдПрдХ рд╕реНрдХреАрдорд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рдкрд╛рд╕ рдЙрд╕ рд╕реНрдХреАрдорд╛ рдХреА рдПрдХ рдкреНрд░рддрд┐ рд╣реИ , рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдирд╣реАрдВред рдбреЗрдЯрд╛ рдЖрдкрдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣реИ, рдФрд░ рдЖрдкрдХреЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдпреЛрдЬрдирд╛ рдФрд░ рдЙрд╕рдХреА рдЕрдЦрдВрдбрддрд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдХрд╣рд╛рдБ рд╣реИред
рдпрд╣ рдкреБрд░рд╛рдирд╛ рдЬреНрдЮрд╛рди рд╣реИ, рдХреЛрдИ рдирдИ рдмрд╛рдд рдирд╣реАрдВред рдкреНрд░рд╛рдердорд┐рдХ рдФрд░ рдЕрджреНрд╡рд┐рддреАрдп рдХреБрдВрдЬрд┐рдпрд╛рдБ рдЕрдЪреНрдЫреА рд╣реИрдВред рд╡рд┐рджреЗрд╢реА рдЪрд╛рдмрд┐рдпрд╛рдВ рд╕реБрдВрджрд░ рд╣реИрдВред рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдУрд░ рд╕реЗ рдмрд╛рдзрд╛рдУрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ рдЕрджреНрднреБрдд рд╣реИред рдЕрднрд┐рдХрдерди (рдЬрдм рд╡реЗ рдЕрдВрддрддрдГ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ) рдорд╣рд╛рди рд╣реЛрддреЗ рд╣реИрдВ ред
рдФрд░ рдпрд╣ рд╕рдм рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк Oracle рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
- рдЖрдкрдХреА рддрд╛рд▓рд┐рдХрд╛ рдХрд┐рд╕ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╣реИ?
- PCTFREE рдХрд╛ рдорддрд▓рдм рдХреНрдпрд╛ рд╣реИ
- рдЕрдиреБрдХреНрд░рдо рдХреИрд╢ рдХрд╛ рдЖрдХрд╛рд░ рдХреНрдпрд╛ рд╣реИ?
рд╢рд╛рдпрдж рдпрд╣ рд╕рдм рдЫреЛрдЯреА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдкрд░ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдмрдбрд╝реЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдЖрдкрдХреЛ "рдмрдбрд╝реЗ рдбреЗрдЯрд╛" рдХреЗ рдкрде рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рд╡рд░реНрддрдорд╛рди рднрдВрдбрд╛рд░рдг рд╕реЗ рд╕рднреА рд░рд╕реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдирд╣реАрдВ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВред рдПрдХ рднреА ORM рдЬреЛ рдореИрдВрдиреЗ рдХрднреА рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ (jOOQ рд╕рд╣рд┐рдд), рдЖрдкрдХреЛ рдЖрдкрдХреЗ DDL рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдкреВрд░реНрдг рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рдЬреЛ рдЖрдкрдХреЗ DBX рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред ORM рдЖрдкрдХреЛ DDL рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдХреБрдЫ рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рдЕрдВрддрддрдГ, рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рд╕реНрдХреАрдорд╛ рдХреЛ рдХреЗрд╡рд▓ рдбреАрдмреАрдПрдордПрд╕-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреАрдбреАрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рднреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди DDLs рдЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдиреНрдирд┐рдХрдЯрди рд╣реИрдВред
рдХреНрд▓рд╛рдЗрдВрдЯ рдореЙрдбрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?
рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЖрдкрдХреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрдХреНрд╖ рдкрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдХрд╣рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдпрд╣ рджреГрд╢реНрдп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ? рдмреЗрд╢рдХ рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ред
рд╕рднреА рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдЪреНрдЫреЗ рдкреБрд░рд╛рдиреЗ SQL рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреА рдореЗрдЯрд╛-рдЬрд╛рдирдХрд╛рд░реА рддрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рд╕рднреА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
рдпрд╣ рдРрд╕реА рдХреНрд╡реЗрд░реАрдЬрд╝ (рд╕рд╛рде рд╣реА рд╡рд┐рдЪрд╛рд░реЛрдВ, рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдХреНрд╡реЗрд░реА) рд╣реИрдВ, рдЬреЛ рддрдм рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВ рдЬрдм рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ JDBC рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ MetaData.getTables () рд╡рд┐рдзрд┐ рдХреЛ, рдпрд╛ jOOQ- рдореЗрдЯрд╛ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдХреЗ рдХрд┐рд╕реА рднреА рдЧреНрд░рд╛рд╣рдХ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЖрд╕рд╛рди рд╣реИ, рдЗрд╕рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐ рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рдпрджрд┐ рдЖрдк JDBC рдпрд╛ рд╕реНрдкреНрд░рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ
- рдпрджрд┐ JPA рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЕрдкрдиреЗ рдЖрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ
- рдпрджрд┐ jOOQ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк jOOQ рдореЗрдЯрд╛рдореЙрдбрд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ
рдЖрдкрдХреЗ рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдПрдкреАрдЖрдИ рдСрдлрд╝рд░ (jOOQ, JPA, рдпрд╛ рдХреБрдЫ рдФрд░) рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЙрддреНрдкрдиреНрди рдореЗрдЯрд╛рдореЙрдбрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдореГрджреНрдз рдФрд░ рдкреВрд░реНрдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдирд┐рд╣рд┐рддрд╛рд░реНрде jOOQ 3.11 рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдЗрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рдмреАрдЪ рд╡рд┐рджреЗрд╢реА рдХреБрдВрдЬреА рдХреЗ рд╕рдВрдмрдВрдзреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрдЯрд╛-рдЬрд╛рдирдХрд╛рд░реА рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ ред
рдЕрдм рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдореЗрдВ рдХреЛрдИ рднреА рдкрд░рд┐рд╡рд░реНрддрди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛрдб рдХреЗ рдЕрдкрдбреЗрдЯ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ред
рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЖрдкрдХреЛ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдПрдХ рд╕реНрддрдВрдн рдХрд╛ рдирд╛рдо рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
ALTER TABLE book RENAME COLUMN title TO book_title;
рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдпрд╣ рдХрд╛рдо рджреЛ рдмрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВред рдмрд╕ рдЗрд╕ DDL рдХреЛ рдХрдорд┐рдЯ рдХрд░реЗрдВ, рдмрд┐рд▓реНрдб рдХреЛ рд░рди рдХрд░реЗрдВ рдФрд░ рдЕрдкрдбреЗрдЯ рдХреА рдЧрдИ рд╡рд╕реНрддреБ рдХрд╛ рдЖрдирдВрдж рд▓реЗрдВ:
@Entity @Table(name = "book", indexes = {
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рд╛рдкреНрдд рдЧреНрд░рд╛рд╣рдХ рдХреЛ рд╣рд░ рдмрд╛рд░ (рдХрдо рд╕реЗ рдХрдо рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдореЗрдВ рдЕрдЧрд▓реЗ рдкрд░рд┐рд╡рд░реНрддрди рддрдХ) рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдмрдбрд╝рд╛ рдкреНрд▓рд╕ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ!
рдЕрдзрд┐рдХрд╛рдВрд╢ рдбреАрдбреАрдПрд▓ рдкрд░рд┐рд╡рд░реНрддрди рд╕рд┐рдореЗрдВрдЯрд┐рдХ рдкрд░рд┐рд╡рд░реНрддрди рд╣реИрдВ, рди рдХрд┐ рд╕рд┐рдВрдЯреИрдХреНрдЯрд┐рдХ рд╡рд╛рд▓реЗред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЙрддреНрдкрдиреНрди рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛрдб рдореЗрдВ рдпрд╣ рджреЗрдЦрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдирд╡реАрдирддрдо рдкрд░рд┐рд╡рд░реНрддрди рдХреНрдпрд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рд╕рдЪ рд╣рдореЗрд╢рд╛ рдЕрдХреЗрд▓рд╛ рд╣реЛрддрд╛ рд╣реИ
рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдЖрдк рдХрд┐рд╕ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд╣рдореЗрд╢рд╛ рдПрдХ рд╣реА рдореЙрдбрд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рд╣реИред рдпрд╛, рдХрдо рд╕реЗ рдХрдо, рд╣рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╡реНрдпрд╛рдкрд╛рд░ рдореЗрдВ рднреНрд░рдо рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд╣рд╛рдВ "рдорд╛рдирдХ" рд╣рд░ рдЬрдЧрд╣ рд╣реИ рдФрд░ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрд╣реАрдВ рднреА рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛ рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк XML рдлрд╛рдЗрд▓ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╢рд╛рдпрдж XSD рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред XML рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рдореЗрдЯрд╛рдореЙрдбрд▓ INFORMATION_SCHEMA jOOQ рдХреЗ рд░реВрдк рдореЗрдВ: https://www.jooq.org/xsd/jooq-meta-3.10.0.xsd
- XSD рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИ
- XSD рдкреВрд░реА рддрд░рд╣ рд╕реЗ XML рд╕рд╛рдордЧреНрд░реА рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рднреА рдХреНрд▓рд╛рдЗрдВрдЯ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕рддреНрдпрд╛рдкрди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
- XSD рдЖрд╕рд╛рди рдФрд░ рдкреАрдЫреЗ рд╕рдВрдЧрдд рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рддрд╛ рд╣реИ
- XJC рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ XSD рдХреЛ рдЬрд╛рд╡рд╛ рдХреЛрдб рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рд╣рдо рдЕрдВрддрд┐рдо рдмрд┐рдВрджреБ рдкрд░ рд╡рд┐рд╢реЗрд╖ рдзреНрдпрд╛рди рджреЗрддреЗ рд╣реИрдВред рдПрдХреНрд╕рдПрдордПрд▓ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдмрд╛рд╣рд░реА рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рддреЗ рд╕рдордп, рд╣рдореЗрдВ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╡реИрдзрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ JAXB, XJC, рдФрд░ XSD рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрд╛рд╡рд╛-рдкреНрд░рдердо рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдЙрдкрдпреБрдХреНрддрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдирд╛ рдкрд╛рдЧрд▓ рд╣реЛрдЧрд╛ред рдПрдХреНрд╕рдПрдордПрд▓ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХреНрд╕рдПрдордПрд▓ рдЙрддреНрдкрдиреНрди рдЦрд░рд╛рдм рдЧреБрдгрд╡рддреНрддрд╛ рдХрд╛ рд╣реЛрдЧрд╛, рдЦрд░рд╛рдм рд░реВрдк рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ред рдФрд░ рдЕрдЧрд░ рдЗрд╕ рддрд░рд╣ рдХреА рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рдПрд╕рдПрд▓рдП рд╣реИ, рддреЛ рдЖрдк рдирд┐рд░рд╛рд╢ рд╣реЛрдВрдЧреЗред
рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдпрд╣ рдЕрдм JSON APIs рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдХрд╣рд╛рдиреА рд╣реИ ...
рдХреНрдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдЦрд░рд╛рдм рдХрд░рддрд╛ рд╣реИ?
рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп, рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рдорд╛рди рд╣реИред рдбреЗрдЯрд╛рдмреЗрд╕ рдбреЗрдЯрд╛ рдХрд╛ рдорд╛рд▓рд┐рдХ рд╣реИ, рдФрд░ рдпрд╣ рдбреЗрдЯрд╛ рд╕реНрдХреАрдорд╛ рдХрд╛ рдорд╛рд╕реНрдЯрд░ рднреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдВрджрд░реНрдн рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╕реНрдХреАрдорд╛ рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЛ рд╕реАрдзреЗ DDL рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╕рдВрджрд░реНрдн рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдореЙрдбрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреБрдЫ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдЬрд╛рд╡рд╛ рдореЗрдВ jOOQ рдФрд░ / рдпрд╛ рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдпрд╛ JDBC рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдиреНрдп рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдкрд░реНрд▓ (рдЙрдирдХреЗ рд▓рд┐рдП рд╢реБрднрдХрд╛рдордирд╛рдПрдВ) рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕реА # рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ред рдореБрдЦреНрдп рдореЙрдбрд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣реИред рдЬрдмрдХрд┐ ORM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдП рдЧрдП рдореЙрдбрд▓ рдЦрд░рд╛рдм рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рд╣реИрдВ, рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдордд рдХрд░реЛ, рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд CI / CD рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдмрдирд╛рдПрдВред рдкреНрд░рддреНрдпреЗрдХ рдмрд┐рд▓реНрдб рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдореЗрдВ рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдФрд░ рдЪрд┐рдВрддрд╛ рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЛ, рд╕рдм рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╕рдм рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдБрдЪрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░рдпрд╛рд╕ рд╣реЛ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЖрдкрдХреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рдХреА рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд▓рд╛рдн рдорд┐рд▓реЗрдЧрд╛ред
рдХреЛрдИ рдзрдиреНрдпрд╡рд╛рдж рдирд╣реАрдВред
рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг
рд╕рдореЗрдХрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: рдпрд╣ рд▓реЗрдЦ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рджрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдЖрдкрдХреЗ рдкреВрд░реЗ рд╕рд┐рд╕реНрдЯрдо (рд╡рд┐рд╖рдп рдХреНрд╖реЗрддреНрд░, рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ, рдЖрджрд┐) рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореЗрд░реЗ рдХрдерди рдХреЗрд╡рд▓ рдЗрд╕ рддрдереНрдп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛрдб рдХреЗрд╡рд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рджреЛ-рд╕реНрддрд░реАрдп рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдореЗрдВ рдЬреЛ рдЕрднреА рднреА рдПрдХ рдЬрдЧрд╣ рд╣реИ, рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдЖрдкрдХреЗ рд╕рд┐рд╕реНрдЯрдо рдореЙрдбрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдПрдХрдорд╛рддреНрд░ рд╕реНрд░реЛрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдкрд░, рдореИрдВ рдПрдХ "рд╕рдмрд╕рд┐рд╕реНрдЯрдо" рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдХреЗ рд╕реНрддрд░ рдХреЛ рджреЗрдЦрддрд╛ рд╣реВрдВ рдЬреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдХреЛ рдПрдирдХреИрдкреНрд╕реБрд▓реЗрдЯ рдХрд░рддрд╛ рд╣реИред рдХреБрдЫ рдЗрд╕ рддрд░рд╣ред
рдЕрдкрд╡рд╛рдж
рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдЕрдЪреНрдЫреЗ рдирд┐рдпрдо рдХреА рддрд░рд╣, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рднреА рдЗрд╕рдХреЗ рдЕрдкрд╡рд╛рдж рд╣реИрдВ (рдФрд░ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдЪреЗрддрд╛рд╡рдиреА рджреА рдереА рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд╣рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдФрд░ рдХреЛрдб рдкреАрдврд╝реА рд╣рдореЗрд╢рд╛ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ)ред рдпреЗ рдЕрдкрд╡рд╛рдж (рд╢рд╛рдпрдж рд╕реВрдЪреА рдкреВрд░реА рдирд╣реАрдВ рд╣реИ):
- рдЬрдм рд╕рд░реНрдХрд┐рдЯ рдкрд╣рд▓реЗ рд╕реЗ рдЬреНрдЮрд╛рдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХрд┐рд╕реА рднреА рдпреЛрдЬрдирд╛ рдХреЛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рдХреЗ рдкреНрд░рджрд╛рддрд╛ рд╣реИрдВред рдмреЗрд╢рдХ, рдХреЛрдИ рдХреЛрдб рдкреАрдврд╝реА рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреАред рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдФрд░ рдЗрд╕рдХреЗ рд╕реНрдХреАрдорд╛ рд╕реЗ рдирд┐рдкрдЯрдирд╛ рд╣реЛрдЧрд╛ред
- рдЬрдм рдХреБрдЫ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдордХреНрдЦреА рдкрд░ рдПрдХ рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╣ рдПрдВрдЯрд┐рдЯреА-рд╡рд┐рд╢реЗрд╖рддрд╛-рдореВрд▓реНрдп рдкреИрдЯрд░реНрди рдХреА рд╡рд┐рд╡рд┐рдзрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╕рдорд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдкреИрдЯрд░реНрди рдирд╣реАрдВ рд╣реИред рд╕рд╛рде рд╣реА рд╕рд╛рде рдЗрд╕ рдмрд╛рдд рдореЗрдВ рдХреЛрдИ рдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЖрд░рдбреАрдмреАрдПрдордПрд╕ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рд╣реИред
рдЗрди рдЕрдкрд╡рд╛рджреЛрдВ рдХреА рдЦрд╝рд╛рд╕рд┐рдпрдд рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рд╡рдиреНрдпрдЬреАрд╡реЛрдВ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдорд┐рд▓рддреЗ рд╣реИрдВред рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдпреЛрдЬрдирд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдиреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдореЙрдбрд▓ рдХрд╛ "рдорд╛рдирдХ" рд╣реИ, рдФрд░ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрддреНрдкрдиреНрди рдЗрд╕ рдореЙрдбрд▓ рдХреА рдПрдХ рдкреНрд░рддрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред