JavaRush /Блоги Java /Random-TG /SpringBoot + Flyway - "Лоиҳаи Java аз A то Я"
Roman Beekeeper
Сатҳи

SpringBoot + Flyway - "Лоиҳаи Java аз A то Я"

Дар гурӯҳ нашр шудааст
Мақола аз як силсила дар бораи эҷоди лоиҳаи Java (пайвандҳо ба дигар маводҳо дар охир мебошанд). Ҳадафи он таҳлor технологияҳои калидӣ мебошад, ки натиҷааш навиштани боти телеграмма мебошад. Дар ин қисм мо кӯшиш мекунем, ки SpringBoot ва Flyway-ро оғоз кунем. Ҳадди ақали назария, тавре ки шумо мехоҳед))) Мо муқоисаи ниҳоии Flyway/Liquibase-ро барои муддати номуайян сарфи назар мекунем ва ба нукта мерасем. Ва ҳатто ин аллакай кашола карда шудааст. Барои он ки Flywayро ду маротиба тавсиф накунам, ман тасмим гирифтам, ки онро фавран ба лоиҳаи ояндаи JRTB илова кунам."Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 1

Мо бояд ҳамчун як қисми ин чӣ кор кунем?

  1. Замимаи SpringBoot-ро дар асоси Maven оғоз кунед.
  2. Он ҷо Flyway илова кунед: хушбахтона, онҳо ба осонӣ муттаҳид карда мешаванд.
  3. Барои ҷадвалҳое, ки мо дар базаи мисол дорем, схемаро илова кунед.
Бо ин роҳ мо чӣ гуна кор карданро бо Flyway меомӯзем. Чаро лоиҳаи алоҳида, на фавран ба JRTB мо? Зеро дертар, ҳар касе, ки мехоҳад ин корро бифаҳмад, дорои як лоиҳа бо мисол ва мақолае хоҳад буд, ки кор бо онро тавсиф мекунад. Хуб, биёед!

Роҳи парвоз чист

Барои истифодаи чизе, шумо аввал бояд фаҳмед, ки он чист ва чаро. Flyway воситаи идоракунии versionи пойгоҳи додаҳо мебошад. Суханҳо маълуманд, аммо гӯё фаҳмиш илова нашудааст, дуруст? Биёед кӯшиш кунем, ки мушкилотеро, ки парвози ҳавопаймо ҳал мекунад, тасвир кунем. Фарз мекунем, ки мо лоиҳа дорем. Мисли ҳама чиз дар ҷаҳони мо, он комил нест, бинобар ин нақша кардан ва тартиб додани варианти ниҳоии лоиҳа имкон надошт. Хар дафъае, ки нозукихои муайяни ба хисоб гирифтанашуда пайдо мешаванд. Лоиҳа дар кори худ базаи маълумотро истифода мебарад. Албатта, агар лоиҳа тағир ёбад, сохтори пойгоҳи додаҳо низ метавонад тағир ёбад. Фарз мекунем, ки мо барои яке аз субъектҳои лоиҳаи худ майдони нав илова мекунем. Чӣ тавр бояд кард?
  1. Ин майдонро ба an objectи мо илова кунед, ҳама чизро навсозӣ кунед, то мантиқи тиҷорат кор кунад.
  2. Навсозии базаи маълумот. Ягона роҳи имконпазир ин аст, ки онро дастӣ иҷро кунед. Барои ин, шумо бояд ворид шавед ва скрипти зарурии sql-ро сабт кунед.
Нуктаи дуюм саволҳои зиёдеро ба миён меорад:
  1. Аммо агар мо зиёда аз як ҷой дошта бошем, ки лоиҳаи худро ҷойгир кунем, пас оё ин бояд дар ҳар яки онҳо анҷом дода шавад?
  2. ва агар мо хоҳем, ки баргардем, мо аниқ медонем, ки сохтори пойгоҳи додаҳо ҳоло дар кадом ҳолат аст?
  3. Чӣ тавр мо боварӣ ҳосил карда метавонем, ки тағир додани пойгоҳи додаҳо муваффақ аст?
  4. Чӣ тавр ман метавонам имкони пайгирӣ кардани ҳама тағиротҳои пойгоҳи додаҳоро, ки дар лоиҳа ба амал омадаанд, пайдо кунам?
Агар шумо ин корро дастӣ кунед, ҷавобҳо беҳтарин нестанд... Барои пешгирӣ кардани ҳамаи ин мушкилот шумо метавонед аз абзори интиқоли пойгоҳи додаҳо истифода баред. Яке аз онҳо Flyway мебошад. Кори ӯ чист? Ҳамчун як қисми лоиҳа, мо файлҳои алоҳидаи sql-ро нигоҳ медорем (ба истилоҳ муҳоҷират), ки ҳама корҳоеро, ки мо бо пойгоҳи додаҳо анҷом медиҳем, дар як вақт нигоҳ медоранд. Ҳама муҳоҷиратҳо ба таври қатъӣ бо тартиби муайян сурат мегиранд, ки ба шумо имкон медиҳад, ки тағирот дар сохтор ва додаҳои пойгоҳи додаҳоро пайгирӣ кунед (аксар вақт, бо истифода аз муҳоҷират, маълумоти санҷишӣ ба лоиҳа илова карда мешавад, то вақте ки он дар ягон server ҷойгир карда мешавад, он аллакай баъзе арзишҳое, ки шумо метавонед лоиҳаро санҷед). Пас аз гузаштани санҷишҳо, ҳангоми сохтани лоиҳа муҳоҷират оғоз мешавад. Онҳо ба пойгоҳи додаҳо пайваст мешаванд ва муҳоҷиратро иҷро мекунанд. Агар муҳоҷират аллакай дар ин махзани маълумот анҷом дода шуда бошад, пас flyway онҳоро ба таври оддӣ гузаред (он маълумотро дар бораи муҳоҷират ва ҳолати онҳоро дар ҷадвали алоҳида дар базаи маълумот нигоҳ медорад, ки барои идора кардани онҳо кӯмак мекунад) ва агар баъзе муҳоҷират бемуваффақият бошад, пас лоиҳа сохтан ва насби он (ҷойгиркунӣ) ба server қатъ мешавад. Ман кӯшиш кардам, ки онро то ҳадди имкон муфассал тасвир кунам. Агар ҳама чиз то ҳол комилан равшан набошад, муҳим нест: бо амалия фаҳмиш меояд.

SpringBoot + Flyway -ро оғоз кунед

Boot Spring чист

Мо чӣ кор карда истодаем?... Барои фаҳмидани он ки мо чӣ кор карда истодаем, шумо бояд муайян кунед, ки SpringBoot чист. Аввалан, биёед зуд (хуб, хеле зуд) дар бораи Баҳор сӯҳбат кунем . Дар айни замон, ин стандарти саноатӣ дар таҳияи барномаҳои serverӣ дар Java мебошад. Стандарт аз чӣ? Чӣ тавр ман инро ба шумо фаҳмонам? Баҳор скелети барнома аст, ки мо ба он "гӯшт" - мантиқи тиҷоратии худро мепартоем. Бо кӯмаки Баҳор (минбаъд ман ин коғази пайгирӣро истифода хоҳам кард, то вақти иваз кардани забонҳоро беҳуда сарф накунам: D)) Баҳор ба мо оғоз мекунад, ки мо ҳама корро оғоз мекунем. Он бисёрҷанба, бисёр модулӣ аст:
  1. Оё шумо мехоҳед бо пойгоҳи додаҳо кор кунед? Оё шумо муносибатро мехоҳед? Оё шумо мехоҳед, ки муносибати ғайрирасмӣ дошта бошед? Дар ин ҷо мо бо маълумоти баҳорем.
  2. Оё шумо мехоҳед бо дархостҳои http кор кунед? Инак, шумо меравед, веби баҳорӣ (MVC Spring).
  3. Оё ба шумо барои ҳама ашёи худ дар як ҷо контейнер лозим аст? Дар ин ҷо Баҳор Core аст.
  4. Оё ба шумо лозим аст, ки амниятро дар лоиҳа насб кунед, то нақшҳо ва силсилаи фармонҳо гуногун бошанд? Амнияти баҳорӣ.
  5. Ҳангоме ки шумо фикр мекардед, ки доштани чунин чизе хуб аст, маълум мешавад, ки Баҳор аллакай он чизеро, ки ба шумо лозим аст, дорад ва зуд ва ба осонӣ муттаҳид мешавад.
Аз ин рӯ, мо метавонем бигӯем, ки ин на танҳо чаҳорчӯба (чунин китобхонаи азим), балки як экосистемаест, ки бо суръати баланд инкишоф меёбад. Барои фаҳмидани он ки Spring Core чист, яъне заминаи ба он пайваст шудани модулҳо, ман ба шумо маслиҳат медиҳам, ки намоиши мустақимро оид ба сохтани чаҳорчӯбаи шахсии худ тамошо кунед. Онро Евгений Борисов, як бачаи хеле хушрӯ дар соҳаи Ява ва Баҳор баргузор мекунад. Ҳар коре, ки ӯ кард, кун, кори баҳор бароят равшантар мешавад. SpringBoot, дар навбати худ, қуллаи ҳама чизест, ки онҳо доранд. Сеҳри оби тоза. Танзимоти ҳадди аққал барои оғози аввалини барнома. Албатта, ин ба шумо дар бораи чӣ гуна истифода бурдани он ва чӣ кор кардан фаҳмо намедиҳад. Аммо пеш аз он ки ба умқи рушд шитофтед, шумо бояд ба ҳама чиз аз нигоҳи парранда назар кунед.

Оғози SpringBoot

Азбаски мо аллакай фаҳмидем, ки Maven чист, биёед барои эҳтиёҷоти худ як лоиҳаи нав эҷод кунем. Барои ин ба шумо лозим аст, ки ба вебсайте равед, ки махсус барои ин масъала сохта шудааст. Он Spring Initializr номида мешавад . "Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 2Дар ин ҷо шумо бояд чизеро, ки ба шумо лозим аст, пур кунед ва интихоб кунед:
  1. Воситаи сохтани лоиҳа gradle ё maven аст. Тавре ки шумо мебинед, Мӯрча дигар ҳатто зикр нашудааст. Ин як маслиҳати хуб дар бораи он аст, ки кадом асбобҳои сохтмонӣ вақти шумо арзиш доранд.
  2. Забоне, ки шумо метавонед бо он нависед, java, kotlin, groovy мебошад. Дар ин ҷо ҳама чиз оддӣ аст: ҳамаи онҳо ба JVM монанданд ва рамзи Java-ро ба осонӣ иҷро мекунанд. Ба ҳар ҳол, ба Котлин нигоҳ кардан лозим аст. Groovy ошкоро ҷолиб шуд (вақте буд, ки онҳо ба grooves гузаштанд, аммо он зуд гузашт).
  3. Версияи баҳорӣ... Дар ин ҷо шумо бояд фаҳмед, ки versionҳои қисми асосии Spring ва модулҳои он мувофиқанд.
  4. Маълумоти лоиҳа. Ман ин чизҳоро аллакай тавсиф кардаам.
  5. Мо интихоб мекунем, ки кадом архив ҷамъ карда мешавад - Љар ё Ҷанг.
  6. Хуб, versionи Java аз дӯстдоштаи мо. Ва вактхои охир ин versionхо зиёд шуданд... Солхо интизор шуданд, акнун дар як сол ду.
Дар ҳолати мо, мо ин лоиҳаро дар созмони ҷамъиятии JavaRush нашр хоҳем кард , бинобар ин маълумот дар бораи лоиҳа мувофиқ хоҳад буд:
  1. Мавен - Беҳуда нест, ки мо дар ин бора қаблан бо шумо сӯҳбат кардем.
  2. Java азизи мост: D
  3. Биёед versionи 2.2.11-ро гирем. Чаро навтарин нест? Азбаски он навтар бошад, ҳамон қадар эҳтимолияти пайдо шудани хатогиҳо дар он ҷо зиёдтар аст. Барои мо, муҳим нест, ки кадом version, аммо кӯҳнааш боэътимодтар хоҳад буд. Аз ин рӯ, мо 2.2.11-ро интихоб мекунем.
  4. Гурӯҳ: com.github.javarushcommunity
  5. Артефакт: springboot-flyway-demo
  6. Ном: SpringBoot + Flyway Demo
  7. Тавсифи: Лоиҳа ҳамгироиро байни SpringBoot ва Flyway нишон медиҳад . (Бале, қобorяти навиштани ҳуҷҷатҳо қисми муҳими рушд аст :))
  8. Номи баста: com.github.javarushcommunity.springbootflywaydemo . Дар ин ҷо онҳо фавран барои мо бастаи асосиро бо синфе эҷод мекунанд, ки замимаи моро оғоз мекунад.
  9. Бастабандӣ: кӯза
  10. Ёва: 8. Биёед, пеш аз тепловоз наравем ва ҳаштсолаи кӯҳнаро гирем. Чаро 11 не? Барои чӣ? Барои мисоли мо, ман нуктаро намебинам.
"Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 3Акнун биёед модулҳоро илова кунем. Мо бояд ҳамгироӣ бо Flyway пайдо кунем. Шумо инчунин метавонед чизи марбут ба MySQL ва Spring Data илова кунед. Биёед як ломбоки дигарро илова кунем (ин як чизи хеле зарурист, ҳоло ба ман бовар кунед :D)) Барои ин, ADD DEPENDENCIES ... -ро клик кунед ва ҳама чизеро, ки ба шумо лозим аст, интихоб кунед: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 4Ҳамин тавр мо Flyway -ро илова мекунем. "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 5Ломбок... Ва гайра. Дар натиҷа, мо ба даст меорем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 6Ҳа... мо ҳама чизро пур кардем)) Ҳоло ГЕНЕРАТ... -ро пахш кунед ва ҳамин тавр - бойгонӣ бо лоиҳаи тавлидшуда омода аст :) Инчунин як чизи олиҷаноб ба монанди PHARE вуҷуд дорад... , ки ба шумо истинод ба саҳифае, ки шумо наваHow пур кардаед, медиҳад. Яъне, ин аст он чизе, ки ман тавлид кардам . Ва ҳатто агар чизе хато кунад, шумо ҳамеша метавонед бо истифода аз истинод тафтиш кунед. Минбаъд, мо бояд лоиҳаи сохташударо ба анбори Git пайваст кунем, аз ин рӯ мо лоиҳаи эҷодшудаи springboot-flyway-demo- ро клон мекунем ва онро тавассути IDEA зеркашӣ мекунем. Барои ин, шумо бояд идеяро кушоед ва интихоб кунед Файл -> Нав -> Лоиҳа аз манбаъҳои мавҷуда... : "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 7Акнун URL-ро илова кунед ва Clone -ро клик кунед . Қадами навбатӣ интиқоли дохorи лоиҳаи тавлидшуда дар дохor лоиҳаест, ки мо клон кардаем. ошуфтааст? Ман ҳоло ба шумо нишон медиҳам. Ман онро кушодам ва маҷмӯи файлҳои зеринро гирифтам: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 8Инҳо бояд ба лоиҳаи клоншуда интиқол дода шаванд. Мисли мақолаи қаблӣ, биёед pom.xml-ро ҳамчун лоиҳаи maven илова кунем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 9Ҳоло мо таваҷҷӯҳ дорем, ки он чизеро, ки барои мо тавлид шудааст, бубинем. Агар шумо ҳамаи ҷузвдонҳоро дар src ва минбаъд кушоед, шумо иерархияи муқаррариро дар лоиҳаҳои Maven хоҳед дид, ки мо дар мақолаи қаблӣ муҳокима кардем . Барои онҳое, ки онро нахондаанд, хонед! "Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 10Дидан мумкин аст, ки мо синфи Application дорем ва барномаи SpringBoot мо бо истифода аз он оғоз мешавад. Бо шарофати плагини Maven барои SpringBoot, мо ҳоло вазифаеро дорем, ки барои Maven лозим аст, яъне spring-boot:run. Мо ин маълумотро аз куҷо ёфта метавонем? Дар тарафи рост, кушодани лавҳаи Maven ва лоиҳаи мо: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 11Хатогӣ мешавад ва мо онро хонда наметавонем, мо чизеро мебинем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 12Барои гирифтани маълумоти бештар, барои суръат мо метавонем усули асосии синфи Ариза: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 13Ва он гоҳ мо сабаби аслии онро мебинем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 14Дар ин ҷо аллакай маълумоти бештар вуҷуд дорад ва шумо метавонед бо он коре кунед. Чӣ чиз ғалат аст? Мо вобастагиҳое дорем, ки бо пойгоҳи додаҳо алоқаманданд ва аз ин рӯ мо бояд танзимотро барои пайвастшавӣ ба он таъмин кунем. Барои ин, мо Google-ро ҷустуҷӯ мекунем ва мефаҳмем, ки мо бояд ба application.properties конфигуратсияҳои зеринро илова кунем:
spring.datasource.url=jdbc:mysql://localhost:3306/flyway_demo_db
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
Мо боз усули асосиро иҷро мекунем ва мегирем: "Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 15Ҳоло мо бояд ҳадди аққал як муҳоҷиратро илова кунем. Барои дуруст сохтани муҳоҷират, шумо бояд қолаби зеринро гиред: V<VERSION>__<NAME>.sql Бо истифода аз ин қолаб, мо файли муҳоҷиратро бо номи V00001__Create_country_table.sql дар ҷузвдони мувофиқ эҷод мекунем: /src/main/resources/ db.migration/ . Биёед дар он ҷадвали кишвар эҷод кунем. Биёед скриптро аз мақолаи дуюм дар бораи базаи маълумот гирем . "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 16Пеш аз оғоз, биёед ворид шавем ва барои кор пойгоҳи додаҳо эҷод кунем: flyway_demo_db. Биёед инро тавассути MysqlWorkbench иҷро кунем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 17Акнун мо метавонем усули асосиро дубора иҷро кунем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 18Ҳама чиз кор кард, аммо азбаски мо то ҳол дар лоиҳа чизе надорем, он кор кард. Бо вуҷуди ин, аз гузоришҳо маълум аст ( хонед, ки гузоришҳо чистанд ), ки:
  1. Бомуваффақият ба базаи маълумот пайваст шуд.
  2. Муҳоҷират тасдиқ карда шуд ва ҳама чиз хуб аст.
  3. Flyway ҷадвалеро барои идоракунии муҳоҷират эҷод кардааст.
  4. Ва чӣ муҳоҷирати 00001 оғоз ёфт - бунёди кишвар муваффақ буд.
Барои санҷидани ин, шумо метавонед рафта бубинед, ки дар база чӣ кор карда мешавад. Пас, биёед ба serverи MySQL-и худ равем ва бубинем, ки бо ҷадвалҳо дар базаи flyway_demo_db чӣ мегузарад: $ USE flyway_demo_db; $НАМОИШИ Љадвалњо; "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 19Тавре ки ман интизор будам, муҳоҷират сурат гирифт, ки дар ҷараёни он ҷадвали кишварҳо сохта шуд ва ҷадвали flyway_schema_history пайдо шуд, ки маълумотро дар бораи муҳоҷират нигоҳ медорад. Биёед минбаъд равем ва бубинем, ки кадом сабтҳо мавҷуданд (ва умуман вуҷуд доранд). $SELECT * АЗ flyway_schema_history; "Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 20Дар ин ҷо сабт, ягона аст. Он бисьёр маълумоти ҷолибро дар бар мегирад. Версия, тавсифи муҳоҷират, кадом навъи SQL (ва шояд XML низ), номи худи скрипт, маблағи чек ( ин чизе ба мисли хэшcode аст, ки барои тафтиш кардани тағирот ё набудани муҳоҷират истифода мешавад. Ин анҷом дода мешавад. агар мо дар базаи маълумот муҳоҷират анҷом дода бошем ва он ислоҳ карда шуд: ин корро кардан мумкин нест, ҳама тағиротҳо танҳо тавассути муҳоҷирати нав анҷом дода мешаванд ва барои пешгирӣ кардани ин, маблағи чек инро назорат мекунад ), номи корбар sql, коркарди муҳоҷират сана, вақти иҷро ва натиҷа (бомуваффақият ё ноком). Муҳоҷирати як бор навишташуда дар оянда набояд тағир дода шавад. Ҳатто агар дар он камбудие вуҷуд дошта бошад. Ҳама тағирот танҳо тавассути муҳоҷирати нав сурат мегиранд. Ин хеле муҳим аст. Барои нишон додани он ки чӣ мешавад, биёед скрипти худро каме тағир диҳем ва кӯшиш кунем, ки онро дубора иҷро кунем. Биёед як вурудро ба ҷадвали кишварҳо дар муҳоҷирати худ илова кунем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 21ва усули асосиро иҷро кунем ва он чизест, ки мо ба даст меорем: "Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 22Тавре ки ман интизор будам, flyway эътироф кард, ки скрипт тағир дода шудааст ва муҳоҷиратро иҷро накард. Дар баъзе мавридҳо, шояд воқеан иҷро кардани муҳоҷирати навсозӣ зарур бошад ва барои он ки flyway аз ин гузаред, шумо бояд сабтро дар ҷадвали flyway_schema_history нест кунед ва сипас муҳоҷирати навшударо иҷро кунед. Ин рафтори муқаррарӣ нест ва набояд чунин бошад, аммо шумо инчунин бояд дар бораи ин усули ҳалли мушкилот донед. Мо бо аввалин муҳоҷират сарукор доштем. Ҳоло ман мехоҳам як муҳоҷирати дигарро бо маълумот дар бораи кишварҳо илова кунам, чунон ки дар мақолаи махзани маълумот буд: file V00002__Add_test_data_to_country.sql"Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 23 Ва боз усули асосиро иҷро мекунем: "Лоиҳаи Java аз A то Я": SpringBoot + Flyway - 24Аз гузоришҳо маълум аст, ки пеш аз оғози муҳоҷират, базаи маълумот мавҷуд буд. дар versionи 00001, пас ҳама муҳоҷират пас аз ин version. Баъдан, versionи 00002 оғоз ёфт ва муваффақ шуд. Биёед тафтиш кунем, ё шумо аллакай ба ман бовар мекунед, ки се сабт дар кишвар аллакай дар базаи маълумотҳо хоҳад буд?)) Ман тафтиш мекардам, пас далел: "Лоиҳаи Java аз А то Я": SpringBoot + Flyway - 25Чизе монанди ин. Агар шумо лоиҳаро дубора иҷро кунед, flyway танҳо интиқоли интиқолро мегузаронад, зеро базаи маълумот ба versionи лозимӣ комилан мувофиқ аст.

Хулоса

Ин дафъа мо фаҳмидем, ки чӣ гуна абзори муҳоҷирати пойгоҳи додаҳоро дар якҷоягӣ бо SpringBoot фаҳмем ва истифода барем. Ин маълумот барои фаҳмидани он, ки воситаи идоракунии versionи пойгоҳи додаҳо бо истифода аз Flyway ҳамчун намуна зарур аст. Дӯстон, рамзи сарчашмаи лоиҳае, ки ман нишон додам, дар ташкилоти мо дар Github нашр шудааст . Агар ба шумо мисол маъқул бошад, ба он ситора диҳед , ва ман мефаҳмам, ки кори ман муфид аст ва воқеан арзандаи идома додан аст. Одатан, ман пешниҳод мекунам, ки ба ҳисоби Github-и худ обуна шавам . Тавассути ӯ ман тамоми кори худро дар манбаи кушода ва ҳамаи он лоиҳаҳои намоишӣ, ки ҳамеша мақолаҳои маро ҳамроҳӣ мекунанд, иҷро мекунам. Ташаккур ба ҳама барои хондан. Дафъаи дигар мо аризаи худро менависем. Дар оянда дар Docker як назарияи зарурӣ вуҷуд хоҳад дошт, аммо мо онро бо амалия ба таври ҷиддӣ ҳал мекунем.

истинодҳои муфид

Имрӯз истинодҳои муфид чандон зиёд нестанд. Ба видеои Евгений диққат диҳед, ин воқеан арзанда аст!
  1. Вебсайт барои эҷоди лоиҳаҳо дар фасли баҳор
  2. Евгений Борисов — бинокори бахор
  3. Ҳуҷҷатҳо дар фасли баҳор барои Flyway

Рӯйхати ҳамаи маводҳои силсила дар аввали ин мақола аст.

Шарҳҳо
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION