Spring Framework. Урок 25: JDBC API. Базы данных.

Поділитися
Вставка
  • Опубліковано 2 гру 2020
  • Скачать PVS-Studio бесплатно:
    www.viva64.com/spring_pvs
    ПОЛНЫЙ КУРС ПО SPRING (Hibernate, REST, Boot, Security): swiftbook.org/courses/438
    Продвинутая Java - swiftbook.org/courses/415
    Мои уроки по Java EE - • Java EE для начинающих
    Репозиторий стартового проекта - github.com/NeilAlishev/Spring...
    Репозиторий урока - github.com/NeilAlishev/Spring...
    Telegram: t.me/alishev_g
    Реклама и сотрудничество: alishev.neil@gmail.com

КОМЕНТАРІ • 173

  • @alishevN
    @alishevN  3 роки тому +23

    ПОЛНЫЙ КУРС ПО SPRING (Hibernate, REST, Boot): swiftbook.org/courses/438
    Telegram: t.me/alishev_g
    Плейлист этого курса: ua-cam.com/play/PLAma_mKffTOR5o0WNHnY0mTjKxnCgSXrZ.html

    • @andrei-pastushenko
      @andrei-pastushenko 3 роки тому

      Оказалось, что я уже в сообществе 👍

    • @alishevN
      @alishevN  3 роки тому +1

      @@AndreyDeveloper хаха) все записываю. Как только будет готово выпущу :)

  • @napeHEK1
    @napeHEK1 3 роки тому +98

    Ох и повезет же когда-нибудь человеку, который придет на все готовенькое, и просмотрит разом все ПОНЯТНЫЕ видосы про spring. Продолжай снимать эти ролики, ты сделал мое обучение короче в разы! Спасибо огромнейшее

    • @antonstezhkin5991
      @antonstezhkin5991 3 роки тому +13

      Я - этот человек. Спасибо огромное за уроки!

    • @dreamer_vi905
      @dreamer_vi905 2 роки тому +4

      С другой стороны когда он только придёт постигать науку, вы уже возможно будете работающими спецами)

    • @DevPlayGame
      @DevPlayGame 2 роки тому

      Я тоже тот самый человек, который очень благодарен автору))

    • @user-uf8tw2zq3t
      @user-uf8tw2zq3t 2 роки тому

      Да, самый понятный курс, который ответил на многие вопросы)

  • @damirmv1993
    @damirmv1993 3 роки тому +23

    Дай Бог здоровья тебе и всех благ за труды твои, добрый человек!

    • @alexandrkomar4741
      @alexandrkomar4741 2 роки тому

      можешьподсказать, что за пороль он вводит на 17:04? когда запустил установщик

    • @damirmv1993
      @damirmv1993 2 роки тому +1

      @@alexandrkomar4741 вероятно postgres

    • @alexandrkomar4741
      @alexandrkomar4741 2 роки тому

      @@damirmv1993затупил

  • @natalyprokofieva8301
    @natalyprokofieva8301 Місяць тому

    Спасибо огромное за такие понятные и нужные уроки!! Вы - мой спаситель))

  • @dmitrylubyanov7277
    @dmitrylubyanov7277 3 роки тому +46

    Кто делает используя СУБД MySQL:
    1) зависимость называется - MySQL Connector/J
    2) нужно прописать строку Class.forName("com.mysql.cj.jdbc.Driver"); вместо той что в уроке

    • @rikki2338
      @rikki2338 3 роки тому +1

      Спасибо, добрый человек

    • @dmitrylubyanov7277
      @dmitrylubyanov7277 3 роки тому +2

      @@rikki2338 рад был помочь :)

    • @user-jd6ty4hj9u
      @user-jd6ty4hj9u 3 роки тому +3

      указал такой путь com.mysql.jdbc.Driver и заработало с вашим не пошло.

    • @CyxapbBLR
      @CyxapbBLR 3 роки тому

      со строкой Class.forName("com.mysql.cj.jdbc.Driver") вместо 500 ошибки начало выдавать 404, а вот с Class.forName("com.mysql.jdbc.Driver") все запустилось. Всем спасибо

    • @sskauto
      @sskauto Рік тому +1

      Спасибо добрый, умный человек )

  • @roosul48
    @roosul48 Рік тому +2

    Спасибо большое за видео!!!Вы не представляете как вы своими видео помогаете,если до этого я ни разу не писал комментарий,всегда говорил себе очень хорошо учит но не так уж сложно было.Но этот видос все таки пробудил поделится комментарием!Единственное и самое лучшее видео по обьяснению этой темы.Вы очень хорошо преподаете,так просто и гениально как говорится)).Спасибо,продолжайте нас радовать своими видеороликами!Огромная благодарность за вашу работу!

  • @olehbilonizhka9226
    @olehbilonizhka9226 3 роки тому +7

    Просмотрел весь курс, спасибо за то что уделяете на это время. Поставил колокольчик в ожидании следующих выпусков 🤗

  • @kengerfil
    @kengerfil 3 роки тому +13

    Огромная Вам благодарность за такие качественные уроки по спрингу!!!
    P.S. ResultSet и Connection в конце надо закрывать :)

  • @user-ve4ko4pi7i
    @user-ve4ko4pi7i 3 роки тому +1

    Спасибо огромное за ваши труды! Лучшее, что есть в рунете по этой теме.

  • @Andrzej3935
    @Andrzej3935 2 роки тому +2

    40 минут урок, и никакой воды - это космос. Лучший преподаватель рунета!

  • @nikolay7658
    @nikolay7658 3 роки тому +12

    Долгожданное видео про БД) Ещё хотелось бы про сервисы в вашем исполнение послушать

  • @Skykvi
    @Skykvi 2 роки тому

    Большое человеческое спасибо за серию по Spring. Ты просто супер!

  • @user-bs4py5ev7q
    @user-bs4py5ev7q 3 роки тому +36

    Скоро уже близится новый год, и в связи с этим хотелось бы попросить Дедушку Мороза(alishev) сделать всем взрослым детишкам подарок от которого они будут радоваться как малые дети. А потом с веселым настроем счастливо лопать мандарины и кидая шкурки в монитор говорить "А че так можно было" :) смотреть новые выпуски сериала Spring Framework.

    • @alishevN
      @alishevN  3 роки тому +9

      постараюсь)

  • @sulemoshow8414
    @sulemoshow8414 3 роки тому +12

    Хочу сказать вам огромное спасибо за ваши видео, по сути благодаря им я устроился джуном, дали тестовое задание, и как раз удачно попал на ваши видео, жаль что про бд на тот момент не было видоса и пришлось искать инфу самому, в тот момент я еще больше убедился в том что ваши видосы очень крутые, вот просто огромное спасибо!

    • @alishevN
      @alishevN  3 роки тому +2

      Поздравляю!

  • @alsrdn
    @alsrdn 3 роки тому +1

    Чувствую, что совсем обленилась😅 слишком легко и просто с вами, все разжевано так как надо)

  • @fangstraish7623
    @fangstraish7623 3 роки тому +17

    Ура, новое видео по спрингу. Спасибо большое, как раз сейчас активно изучаю Spring Data и ваше видео как нельза к стати! =)

  • @marinamironova9089
    @marinamironova9089 3 роки тому +1

    Вау!!! Как раз эта тема на курсах!!! Спасибище!

  • @user-uq9fe6pt9m
    @user-uq9fe6pt9m 3 роки тому +1

    Ура! Новое видео и так в тему. Большое спасибо! Четко и понятно👍

  • @Nievinor
    @Nievinor 3 роки тому +2

    спасибо, всегда жду видео из этой тематики

  • @sulemoshow8414
    @sulemoshow8414 3 роки тому +4

    Как долго я ждал этот видос, урааааа

  • @user-kg4zj1gb3s
    @user-kg4zj1gb3s 3 роки тому +4

    Красавчик. Круто очень. Пожалуйста делай видосики. Очень жду!!!!

  • @nurzatbekdunganov863
    @nurzatbekdunganov863 3 роки тому +26

    Ауф ауф ауф. Круто, классно, легко доходчиво. Спасибо за ваш труд!

  • @dnbk9734
    @dnbk9734 3 роки тому +1

    Еще не смотрел, но уверен что все супер!!!

  • @user-ro4ec2zu8f
    @user-ro4ec2zu8f 3 роки тому +2

    Да! Еще одно видео! Отлично!

  • @iorgankrat1118
    @iorgankrat1118 3 роки тому +2

    Спасибо, мы ждали)

  • @tomozi1
    @tomozi1 3 роки тому +1

    Превосходные уроки

  • @vladvlad3637
    @vladvlad3637 3 роки тому +20

    Эх, жаль нельзя несколько лайков сразу бахнуть, спасибо за уроки, чувак!!))

  • @andrei-pastushenko
    @andrei-pastushenko 3 роки тому +11

    Ты сделаешь из меня хорошего Java разработчика, если не прекратишь снимать уроки! 😁
    Благодарю!

  • @mojodont
    @mojodont 3 роки тому +4

    Спасибо большое! Как всегда на высоте!)
    Когда планируется следующий урок ?

  • @user-je7yq9vt6d
    @user-je7yq9vt6d 3 роки тому

    Спасибо за твой труд)

  • @Static9893
    @Static9893 3 роки тому +4

    Наиль, огромное спасибо тебе! У тебя талант преподавать. С первой зарплаты выкуплю все твои курсы на юдеми.
    А насчет PostgreSQL хочу поделиться своим опытом запуска. После установки не хотел запускаться pgadmin. Долго грузился, потом выдавал Fatal Error "The pgadmin 4 server could not be contacted". Перелопатил много форумов, испробовал много вариантов (установка других версий, чистка фолдеров и т.д.). Как оказалось проблема была в том, что имя компьютера содержало русские буквы. Достаточно изменить имя компьютера, перезагрузить комп и все заработает.

    • @user-wp6qz3le2v
      @user-wp6qz3le2v 3 роки тому +2

      у меня не сработало)
      не запускает pgAdmin долго очень грузит

    • @suleimen
      @suleimen 3 роки тому

      @@user-wp6qz3le2v решили проблему?

    • @user-wp6qz3le2v
      @user-wp6qz3le2v 3 роки тому

      @@suleimen да) скачал другую версию

    • @user-jd6ty4hj9u
      @user-jd6ty4hj9u 3 роки тому

      @@user-wp6qz3le2v а я качал и 13 и 9 ничего не помогло. Скачал mysql )

  • @dariadandria4112
    @dariadandria4112 3 роки тому +3

    Вот спасибо тебе!!!)

  • @at0m1x191919
    @at0m1x191919 3 роки тому

    Круто! Спасибо

  • @ilnur2736
    @ilnur2736 2 роки тому +2

    Если возникнет проблема, что программа видит базу данных, но при этом не видит ни одной таблицы внутри неё (при условии правильного написания названия таблицы) - можно сделать следующее: File -> Settings -> Languages & Frameworks -> SQL Dialects, в появившемся окне, в первой строке выбираем PostgreSql, вторую можно оставить none, далее жмём на плюсик и выбираем папку с проектом (её по сути не надо искать, сразу должна появиться при нажатии на +) - мне помогло.
    P.S Наилю большое спасибо за уроки, ничего лучше на UA-cam на настоящий момент нету)

    • @ilnur2736
      @ilnur2736 2 роки тому

      Это как оказалось вызывает ошибку http erorr 500, выкидывая nullpointerexception, как мне кажется программа всё ещё не могла использовать таблицы с базы данных, хотя красным цветом "person" не выделяла..
      Способ 2: Скачиваете MySql и запускаете тот же код, всё сразу начинает работать без никаких проблем, а как наберетесь сил можно снова бросаться в бой с PostgreSql и пытаться его приручить, ибо во многих вакансиях требуют именно его..

  • @KirillMvS
    @KirillMvS 6 місяців тому

    Спасибо за видео

  • @user-alex33333
    @user-alex33333 2 роки тому

    Крутоооо!

  • @gagn81
    @gagn81 Рік тому

    Очередное Спасиибо за материал :)
    пара комментов
    1. У постгреса есть отличный serial для автоинкрементных полей.
    2. После подключения постгреса в моей конфигурации видимо что-то скрутило, и сервер стал как будто игнорировать контроллеры, на всё подряд кидая 404. Битый час провозился, создал тестовый контроллер с простейшей хелло, с перезагрузкой IDE и всего ПК, пока в итоге не остановил веб-сервер и не сделал clean/build. Ошибка была в WebModule[/...] ServletContext.log():No Spring WebApplicationInitializer types detected on classpath
    Вдруг кому тоже пригодится.

  • @jollyroger2757
    @jollyroger2757 3 роки тому

    Благодарю за курс. Как я понял, тут не учитываются, что необходимо использовать интерфейсы, для реализации GRASP паттернов (low coupling...). Будет ли Вами поднята тема GOF -GRASP patterns?

  • @VladimirPivovar
    @VladimirPivovar 3 роки тому +8

    Я так предполагаю, дальше будет Hibernate, Spring Data JPA?)

  • @user-pt2lq1ik7i
    @user-pt2lq1ik7i 3 роки тому +2

    копирование строки Ctrl + D гораздо удобнее, чем выделять строку)

  • @bygan1byganovich454
    @bygan1byganovich454 3 роки тому +1

    ты лучший

  • @benjaminBTN
    @benjaminBTN Рік тому +3

    Кто делает в бесплатной Идее:
    1) чтобы работать с БД - установите плагин Database Navigator (интерфейс очень похож)
    2) этот плагин предполагает осуществление периодических коммитов, поэтому перед тем, как стартануть Томкат - обязательно коммитимся

    • @Tework-kc4zz
      @Tework-kc4zz 7 місяців тому

      после создания таблички или добавления данных через консоль ide нужно делать коммит, зеленая кнопочка там же, без этого данные не добавятся в базу

  • @rustem6079
    @rustem6079 Рік тому +1

    Интересно было, особенно завис на теме инжекций...Подскажите, почему когда апдейтим (в т.ч. в этом видео) ранее добавленные люди опускаются в конец списка ? просто хочется понять, id'шник же тот же самый остаётся

  • @user-uy3cl7bm9q
    @user-uy3cl7bm9q 3 роки тому +1

    Меня на учебном проекте сразу кинули на hibernate, spring Boot и swagger. Теперь понимаю, насколько это удобнее оказалось

    • @Das.Kleine.Krokodil
      @Das.Kleine.Krokodil Рік тому +1

      в конце списка ожидал "и на деньги"

  • @user-hu8uw3fr6m
    @user-hu8uw3fr6m 2 роки тому +1

    Чтобы увидеть схему надо нажать на квадратик рядом с названием БД, на нем циферки, указывающие на то, сколько галочек там можно поставить, чтобы выбрать чего-то. Вот туда заглядываем и ставим галочку на дефолтной схеме, после чего на квадратике будет написано 1 из 3, например как у меня. И тогда можно дальше видео смотреть.

  • @usertyfoon
    @usertyfoon Рік тому

    Круто!!!!

  • @marchuk27
    @marchuk27 2 роки тому +1

    Вообще, довольно наглядно можно было бы продемонстрировать мощь абстракции
    создать interface DatabaseService, который будут реализовывать три класса -
    FakeDbService (static list);
    PureJdbcService (текущий пример),
    и JdbcTemplateService (Spring JDBC).
    В класс PersonDAO внедрить DatabaseService c аннотацией @Qualifier.
    Для замены статичного листа на jdbc достаточно заменить value у Qualifiera-a c "fakeDbService" на "pureJdbcService"
    Таким образом, замена сервиса-источника данных прошла бы "более безболезненно" и без масштабного рефакторинга.

  • @HolyDio1
    @HolyDio1 Рік тому

    получилось) внимательно проверяйте имя и пароль)

  • @irinasuponeva4748
    @irinasuponeva4748 3 роки тому +1

    Тот самый момент, когда пришлось разобраться досконально в теории, научиться пользоваться дебаггером в Спринге методом тыка и наконец отловить ошибку, вместо age ade, одна буква.

  • @blackmulthumor
    @blackmulthumor 3 роки тому

    Спасибо

  • @user-zn3md8mc1s
    @user-zn3md8mc1s 3 роки тому

    Добрый день, в базе данных много таблиц и для работы с ними нужно для каждой создавать свой PersonDAO (Tabl1DAO, Tabl2DAO,..)
    и также как и Person (Tabl1, Tabl2,..) ?

  • @rudolfsikorsky7900
    @rudolfsikorsky7900 3 роки тому +1

    1. Разве надо обрабатывать исключения в DAO? Не лучше ли пробросить их в модель и там формировать соответствующий view если, например, отвалилась БД?
    2. Метод executeUpdate() таки возвращает значение - кол-во добавленных строк и это тоже можно передавать в модель.

  • @user-jd6ty4hj9u
    @user-jd6ty4hj9u 3 роки тому

    когда создаю таблицу в консоли, нельзя надо после varchar(100) писать количество символов, иначе кидает ошибку.

  • @aksokuma6723
    @aksokuma6723 Рік тому +4

    Урок, конечно, хороший. Но стоит сказать, что вкладка database в IDE доступна только в платной UltimateEdition. Для начинающего пользователя лучше показать вариант как всё работает без этой вкладки, т.к. без неё джуны не понимают, как прикрутить PostgreSQL к проекту в IDE.

    • @Tsukinosutsu
      @Tsukinosutsu Рік тому

      Ну так ультимейт версией можнопользоватся месяц бесплатно

    • @benjaminBTN
      @benjaminBTN Рік тому

      @@Tsukinosutsu а можно просто плагин из магазина установить в Идее

  • @phil2964
    @phil2964 3 роки тому +1

    👍👍👍

  • @user-xu2br2uf9z
    @user-xu2br2uf9z 3 роки тому +3

    Наиль, а есть в планах создать платный курс по спрингу. На данный момент мал мала системно на русском курс сделал только трегулов, ниша вроде свободна.

    • @alishevN
      @alishevN  3 роки тому +6

      да, есть такой план

  • @FoxChpoks
    @FoxChpoks 3 роки тому +1

    ЛАЙК НЕ ГЛЯДЯ

  • @videosound7884
    @videosound7884 3 роки тому

    Есть ли разница в методах подключения драйвера jdbc? Например если не писать в pom.xml connector, а скачать файл .jar?

    • @alishevN
      @alishevN  3 роки тому +1

      нет. без разницы как подключать зависимость, но с maven удобней.

  • @antonstezhkin5991
    @antonstezhkin5991 3 роки тому

    Очень хорошо разбита информация на уроки. В каждый урок вложено не слишком много нового, но достаточно чтобы сделать следующий шаг по улучшению приложения.

  • @namitsyki
    @namitsyki 3 роки тому +1

    красаучек

  • @silentadvisor
    @silentadvisor 3 роки тому +5

    Строка
    ResultSet resultSet = statement.executeQuery(SQL);
    при обновлении страницы выдаёт ошибку:
    org.postgresql.util.PSQLException: ОШИБКА: отношение "person" не существует
    Подключение к базе данных есть, отношение создано, вручную командой select * from person выдаёт полный список внесённых значений. Работаю в комьюнити версии через плагин Database Navigator.
    РЕШЕНИЕ ПРОБЛЕМЫ: в консоли базы данных нужно нажать "commit changes" и всё заработает. Надеюсь кому-нибудь поможет.

    • @mehaletz
      @mehaletz 3 роки тому

      Спасибо что не поленился расписать ! помогло

  • @user-rp7ue4se1t
    @user-rp7ue4se1t 3 роки тому

    Спасибо! Крутые видео, когда будет цикл видео по hibernate?

    • @alishevN
      @alishevN  3 роки тому

      через месяц-два примерно. следите за каналом)

    • @user-rp7ue4se1t
      @user-rp7ue4se1t 3 роки тому

      @@alishevN слежу, хотелось бы чаще видеть новый материал на канале. По security планируете, что-то готовить?

    • @alishevN
      @alishevN  3 роки тому

      @@user-rp7ue4se1t да, будет конечно

  • @THEINVEST
    @THEINVEST Рік тому

    НА удивление что все запустилось!

  • @mikefpv0
    @mikefpv0 2 роки тому

    у меня PostgreSQL JDBC Driver » 42.3.1 (актуальный на данный момент) не заработал с кодом, когда вставил версию с репозитория автора - заработало.

  • @stanislavshilo6022
    @stanislavshilo6022 3 роки тому +1

    после 13 постгрис поставил 9, и всё заработало, так что имейте ввиду кто будете ставить, идея 2018 с последними postgres не работает

  • @abba_bog1864
    @abba_bog1864 3 роки тому

    а почему бы не подключиться к базе данных через application.properties ?

  • @alexandernikolaev676
    @alexandernikolaev676 2 роки тому +1

    Привет. Кто-нибудь сталкивался с проблемой запуска postgresql: Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432?
    На этом порту никто не висит, делал команду netstat -aon | find "5432" ничего не выдаёт. Но сейчас у меня запущен сервер Tomcat локальный - localhost с портом 8080. Правильно ли я понимаю, что несмотря на один адрес у БД и веб сервера (localhost) они не должны мешать друг другу так как используют разные порты 5432 и 8080 соответственно? Или я ошибаюсь?
    Подскажите пожалуйста, как решить проблему?

    • @alexandernikolaev676
      @alexandernikolaev676 2 роки тому

      Незнаю что это было, но мне помогло следующее:
      набрал в командной строке services.msc
      нашёл в сервисах свой постгрес "postgresql-x64-13 - PostgreSQL Server 13"
      нажал start
      Всё заработало, и БД и томкат, никаких конфликтов.

  • @damirgaynanov9608
    @damirgaynanov9608 3 роки тому

    Жалко нет кнопки авто-лайк для выбранных людей!

  • @Alan-wl7hm
    @Alan-wl7hm 3 роки тому +1

    awwww nice brain practice

  • @user-qt6ly9wu4b
    @user-qt6ly9wu4b Рік тому

    Была у кого-то такая ошибка Error during artifact deployment. See server log for details ? Не работает , томкат 9 весь код скопировал , не работает , уже 4 дня сижу

  • @user-zy3jz5ho1k
    @user-zy3jz5ho1k 3 роки тому +5

    А разве связь с базой в Spring не должен работать через services layer?
    Я видел что создаётся DAO интерфейсы потом реализация. Потом создают services. Services расширяют реализацию дао и создают Connection и работают с базой непосредственно.
    Service -> DAO -> DataBase
    Спасибо за отличный контент!

    • @alishevN
      @alishevN  3 роки тому +4

      да, должен. Просто я не хочу все сразу давать в одном уроке. Дойдем и до сервисов.

    • @Samentg
      @Samentg 3 роки тому

      @@alishevN Спасибо за инормажию. Очень жду твоих уроков.

  • @maxn3249
    @maxn3249 3 роки тому

    Здравствуйте, огромное спасибо вашим урокам, очень сильно помогают в изучении Spring. Я хотел бы задать следующий вопрос:
    При попытке выполнить SQL запрос из кода, как показано в видео, возникает ошибка "Отношения не существует". Посмотрев в сети возможные варианты данной ошибки, наткнулся только на те, которые связаны с заглавными буквами в названии таблицы, к которой происходит обращении, но название моей таблицы корректное (current_load). При этом в консоли данный запрос срабатывает и выдаёт правильный результат. Можете ли вы что-то подсказать на этот счёт?

    • @alishevN
      @alishevN  3 роки тому

      не видит таблицу. проверьте название

    • @maxn3249
      @maxn3249 3 роки тому

      @@alishevN Спасибо за оперативный ответ, смог найти проблему. С нетерпением жду следующих уроков.

    • @ilnur2736
      @ilnur2736 2 роки тому

      @@maxn3249 Случаем не помните, в чём проблема была? Тоже застрял на ней.. Базу данных видит, но ни одну таблицу внутри неё не видит

  • @jktuo5300
    @jktuo5300 2 роки тому

    Может, у кого-то была такая же проблема - при открытии html страницы через Tomcat у меня вместо кириллицы появляются знаки вопроса, а в заголовке HTTP Content-Type указан charset=ISO-8859-1. Добавление атрибута в файле server.xml не приносит результата. Как же можно изменить кодировку на utf-8?

    • @benjaminBTN
      @benjaminBTN Рік тому

      ответы были где ранее под видосами

  • @ShaddTM00
    @ShaddTM00 3 роки тому +1

    Оооо да)

  • @stsgruup6397
    @stsgruup6397 Рік тому +3

    В 2022 не работает.
    Прилетает - HTTP Status 500 - Internal Server Error
    Request processing failed; nested exception is java.lang.NullPointerException: Cannot invoke "java.sql.Connection.createStatement()" because "ru.alishev.springcourse.dao.PersonDAO.connection" is null
    Как лечить пока не понял.
    UPD: работает но только с зависимостями указанной в видео версии.

    • @user-eo6sl7yb2l
      @user-eo6sl7yb2l Рік тому

      ну как получилось? у меня такая же проблема(

    • @user-eo6sl7yb2l
      @user-eo6sl7yb2l Рік тому

      аааааа.... это у меня было имя пользователя postgres, а я в idea написал postgresql)

    • @DavidMauser
      @DavidMauser Рік тому

      Не вылечили?

    • @zyxelomni
      @zyxelomni Рік тому +1

      Выскакивала такая же ошибка, причина была в URL = "jdbc:postgresql://localhost:5432//testdb", перед названием базы убрал один слеш и заработало, "jdbc:postgresql://localhost:5432/testdb"

  • @Ilohimushka
    @Ilohimushka 2 роки тому

    CTRL + D для дублирования строки в Intellij idea, чтобы не использовать CTRL C, CTRL+V

  • @zhennik263
    @zhennik263 3 роки тому

    А почему в дао не использовали интерфейс? с самого начала?

    • @alishevN
      @alishevN  3 роки тому

      чтобы не усложнять повествование

  • @stanislavshilo6022
    @stanislavshilo6022 3 роки тому

    intellij idea не коннектится к постргис никак вообще

  • @sb9185
    @sb9185 Рік тому

    Здравствуйте, хочу оставить несколько замечаний:
    - Используйте try-with-resorse блок, автор забыл упомянуть что connection нужно закрывать
    - Логики оборачивания в try можно вынести в отдельный метод;

    • @kandidat8134
      @kandidat8134 Рік тому +1

      он AutoCloseable

    • @sb9185
      @sb9185 Рік тому

      @@kandidat8134 да, поэтому НЕ нужен блок FINALLY, но это не означает что try не нужен ...

  • @ka4mar
    @ka4mar Рік тому

    ctrl + D автоматом дублирует строку на которой стоит курсор в этой IDE в виндоус , чтобы не делать ctrl+C ctrl+V

  • @arturmkrtchyan9443
    @arturmkrtchyan9443 3 роки тому +2

    HTTP Status 500 - Internal Server Error zdrastvuyte u menya dayot error chto delac chtob rabotal?

    • @CyxapbBLR
      @CyxapbBLR 3 роки тому +1

      Если делаете через MySql, то замените на Class.forName("com.mysql.jdbc.Driver")

    • @francet777
      @francet777 Рік тому

      @@CyxapbBLR Почему-то нынче не помогает. Может, есть мысли, что делать.

    • @rcet
      @rcet Рік тому

      нашли ответ

    • @francet777
      @francet777 Рік тому

      @@rcet это был вопрос или утверждение?

    • @rcet
      @rcet Рік тому +1

      @@francet777это был вопрос, но я уже нашел решение.
      Спасибо

  • @stanislavshilo6022
    @stanislavshilo6022 3 роки тому

    У меня например Intelij Idea, захотела подключиться только через SSH, вторая вкладка, может кому то поможет.

    • @russHIpeaceDA
      @russHIpeaceDA 3 роки тому

      Как ты это сделал? Я не могу через ssh тоже

  • @VladimirPivovar
    @VladimirPivovar 3 роки тому +2

    Я смотрю кто-то использует DAO-абревиатуры, кто-то DTO для описания и использования классов. В чём же разница между этими классами и в каких случаях используют DAO-классы, а в каких DTO?

    • @alishevN
      @alishevN  3 роки тому +3

      DTO - Data Transfer Object. Он нужен совсем для другого. Для отправки сущностей по сети.

    • @vitalijuskolinko9011
      @vitalijuskolinko9011 3 роки тому +2

      DTO - это паттерн, также используют для обработки данных в шаблонах, например, я использовал для валидации полей password и passwordConfirmation, а через DAO (точнее через сервис с repo) сохраняю значение поля password в БД.

    • @alishevN
      @alishevN  3 роки тому

      @@vitalijuskolinko9011 тоже верно

  • @ShaddTM00
    @ShaddTM00 3 роки тому +1

    Давайка через Hibernate лучше) А лучшее вообще JPA юзать

  • @kaisaryerdenbekov1588
    @kaisaryerdenbekov1588 2 роки тому

    Начало 5:05

  • @Libra7by
    @Libra7by 3 роки тому

    String SQL = "INSERT INTO Person VALUES(" + 1 + ",'" + person.getName() +
    "'," + person.getAge() + ",'" + person.getEmail() + "')";
    ОШИБКА! В базе данных уже есть запись с id=1
    Попробовал в качестве ДЗ переписать остальные методы самостоятельно, и наткнулся на выдачу двух записей по методу show где id=1

  • @lindx2533
    @lindx2533 3 роки тому +2

    ```
    CREATE TABLE person(
    id BIGINT,
    name VARCHAR(256),
    age INT,
    email VARCHAR(256)
    );
    ```

  • @ivanb8662
    @ivanb8662 3 роки тому +2

    А зачем ставить postgre? Сейчас все через докер подключат

    • @alishevN
      @alishevN  3 роки тому +1

      подключайте как вам удобно. это не важно

  • @gunter8446
    @gunter8446 Рік тому

    No suitable driver found for jdbc:postgresql
    У кого то было такое же?

    • @gunter8446
      @gunter8446 Рік тому

      Решил данную проблему, нужно положить jar файл postgresql в папку lib в папке самого apache tomcat
      В итоге я смог запустить все на apache tomcat 10
      java ставил 17 версию при создании проекта
      build tools: Gradle Groovy
      spring6
      springboot 3.0.1(вроде такая версия)

  • @VarnavskyIvan
    @VarnavskyIvan 2 роки тому

    А почему все игнорируют такую вещь как JDO? Как будто её вообще не существует.

  • @MuratFatykhov
    @MuratFatykhov 10 місяців тому

    Подскажите пожалуйста, как остановить работу БД? Пробовал делать Disconnect from server через pgAdmin и закрывать сам pgAdmin, но БД продолжала работать (можно запустить приложение и менять данные, смотреть содержимое БД в консоли PostgreSQL в IntelliJIDEA).
    Потом узнал что pgAdmin - это просто утилита для администрирования БД. Через неё вроде как нельзя остановить её сервер.
    Пробовал кучу команд для терминала, все они возвращали command not found. Пришёл к выводу, при установке через EDB, работать с БД через терминал нельзя (пробовал добавить PATH по инструкции с офф сайта PostgreSQL - не помогло).
    Через встроенный SQL Shell (psql) (появляющийся после установки в меню приложений macOS) тоже ничего из найденных команд не работает.
    Перепробовал уже вроде всё, но сервер продолжает крутиться, знатно поджирая заряд аккумулятора мака. Пожалуйста, помогите 🙏🏽

    • @alex4676
      @alex4676 9 місяців тому

      Не знаю как там с PostgreSQL и маком, но в MySql БД работает как сервис (В фоновом режиме). Поэтому можете попробовать найти сервис и отключить его в диспетчере задач (Имя Сервиса по идее содержит sql например "postgresql").

  • @CapeesEz
    @CapeesEz Рік тому

    Для тех кто смотрит в 2023.
    Если возникает ошибка 500 "Отношения не существует"(relation does not exist):
    Уточняйте название таблицы, а именно вместо просто его названия дайте полный путь "имя_базы_данных.имя_таблицы".
    Например в данном случае запрос должен выглядеть как не просто "select * from person", a "select * from first_db.person".
    P.S. Заглавные буквы или нет SQL и Spring плевать, проверено.

  • @kandidat8134
    @kandidat8134 Рік тому

    DriverManager малец устарел уже )

  • @52mineon
    @52mineon 3 роки тому +2

    이건 또 어느나라냐? 중동쪽인가 ㅋㅋㅋ

    • @annakornilova480
      @annakornilova480 3 роки тому

      이것은 러시아입니다

    • @timyp64
      @timyp64 2 роки тому +1

      푸틴 군주와 함께하는 군주제

  • @stanislavshilo6022
    @stanislavshilo6022 3 роки тому

    смотрите какая лажа происходит с postgres, если intelij idea 2018 того, она уже не будет корректно работать с новым 13 постгрисом, постгрис всегда был ужасным, пусть он и быстрый, у него чудовищная обратная совместимость. И главное об этих вещах просто так не понять, что там не работает то. день запросто мождет уйти, лучше мускул юзать.

    • @rustem6079
      @rustem6079 Рік тому

      для начала и правда лучше MySQL, порог вхождения меньше, но потом лучше на PostgreSQL переходить, т.к. в России в основном на нём сидят (что, кстати противоречит мировой статистике, где у последнего всего 5% рынка, а у Оракл (очень похоже на мускул) почти 50%)

  • @iddqd6299
    @iddqd6299 3 роки тому +1

    Для тех кому лень:
    String SQL = "INSERT INTO Person VALUES(" + 1 + ",'" + person.getName() +
    "'," + person.getAge() + ",'" + person.getEmail() + "')";

  • @francet777
    @francet777 Рік тому

    С mysql выдает ошибку 500. Cannot invoke "java.sql.Connection.createStatement()" because "ru.alishev.springcourse.dao.PersonDAO.connection" is null
    Почему-то не устанавливается соединение.
    Class.forName("com.mysql.jdbc.Driver"); написано так

    • @francet777
      @francet777 Рік тому

      Переподключил dependency. Спасло ситуацию.

  • @EctxD
    @EctxD Рік тому +3

    Я такой коммент не нашел по этому вот подарок будущим программистам.
    String SQL = "INSERT INTO Person VALUES(" + 1 + ",'" + person.getName() + "',"
    + person.getAge() + ",'" + person.getEmail() + "')";

    • @roosul48
      @roosul48 Рік тому

      блин на этом месте про*ебался много раз,спасибо!))