Работа с Базами данных (DAO layer) в Java

Поділитися
Вставка
  • Опубліковано 3 лис 2024

КОМЕНТАРІ • 46

  • @АндрейКолодий-э5р
    @АндрейКолодий-э5р 5 років тому +9

    Блин чувак ты крутой, я 2 недели мучаю DAO класс что бы просто вывести все сообщения в чате а ты за час рассказал все так подробно что я понял что страдал фигней все это время и это капец как просто. Спасибо большое за видео.

  • @KyryloLukeniuk
    @KyryloLukeniuk 9 років тому +8

    Отличное видео! Ждем лекции о спринге!

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

    божечки-кошечки, какое отличное, понятное и супер внятное объяснение. Рада, что нашла его, облегчает жизнь в мильон раз.

  • @dmitriyk9113
    @dmitriyk9113 9 років тому +25

    Так приятно когда в начале "Здрасте, мои дорогие" хД

  • @valerapelenskiy5015
    @valerapelenskiy5015 9 років тому +2

    Дякую...! це саме те, що мені було потрібно!

  • @ronrcf
    @ronrcf 9 років тому +6

    Спасибо за видео. Интересно посмотреть байку о том как проектировать классы работающие с ресурсами которые необходимо освобождать. Как делать эти классы тесто пригодными (unit test). Хотя бы на примере работы с JDBC.

    • @romanreal7
      @romanreal7 9 років тому +1

      ***** т.е. планируется видео посвященное тестированию и все связанное с этим, что нужно знать java разработчику, чтобы он мог уверенно сказать "да, я знаю TDD" и добавить эту аббревиатуру в свое резюме?)

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

    Спасибо

  • @NeurolinguisticTraumatolog
    @NeurolinguisticTraumatolog 9 років тому

    Спасибо за ваш труд:) Во многих вакансиях есть пункт Agile-методы, хотелось бы услышать с какими методами разработы вы сталкивались больше, ну и вообще лекцию по разным методологиям, что испольщуется чаще, и для каких проэктов какую методологию лучше использовать

    • @olek_tar
      @olek_tar 9 років тому

      ***** в таком случае, хотелось бы услышать от Вас, хотя бы в кратце, что такое Scrum и как с ним работать. :)

  • @ViktorVdovichenko
    @ViktorVdovichenko 7 років тому

    Отлично! Спасибо!

  • @владбуглаев-ф4т
    @владбуглаев-ф4т 9 років тому

    Спасибо за видео! Всё-таки в конце надо было обнадёжить новичков, рассказав о такой штуке, как Spring JDBC, а то от кода чистого JDBC можно в осадок выпасть)

    • @gressmc
      @gressmc 9 років тому +2

      +влад буглаев На мой взгляд разбор чистого JDBC как раз таки намного проще воспринимается чем в связке со Spring) Это конечно ИМХО)
      Сергей вам спасибо за труды, доступно рассказываете, много дополнительного для себя подчерпнул в ваших видео.)

  • @NamelessMerph
    @NamelessMerph 9 років тому

    Спасибо за видео. Очень доходчиво объясняете. Допустим у меня есть классы, которые я храню в БД посредством JPA. И есть 3 основных пакета: dao, domain, ui. Куда правильнее положить классы: в dao или domain? Ведь с одной стороны - это представление предметной области, а с другой - таблицы в БД.

    • @maxlich9139
      @maxlich9139 7 років тому

      классы - звучит адово. объекты же хранятся ,не? (а вернее даже - их состояние)

  • @al1as643
    @al1as643 7 років тому +7

    Придираюсь к мелочам, конечно, но SQL это всё-таки structured query language, а не standardized. 10:50

  • @sadasdsdasdas5251
    @sadasdsdasdas5251 7 років тому

    Можете снять видео про сокеты? Хотелось бы поподробнее об этом узнать. Желательно на примере и с использованием БД(ну например сериализовать и десериализовать объект и передать его по сокетам).

  • @nakhachatryan
    @nakhachatryan 4 роки тому

    только, наверное, не "оборачвает", не является оберткой/враппером, как Integer для int, а является фасадом

  • @maxlich9139
    @maxlich9139 7 років тому

    Все же JDBC довольно простая тема. Один-два раз сделать несложный CRUD c использованием JDBC, и всё станет довольно-таки ясным.

  • @Bublerkin
    @Bublerkin 8 років тому

    Это получается, что при каждом запросе к базе нужно открывать/закрывать tcp-соединение? Но это ведь бешеный оверхед.

  • @Otruiniy_Grybochok
    @Otruiniy_Grybochok 9 років тому +1

    Такой вопрос, когда в цикле итерируемся по rs можно создавать сразу объекты, пример:
    while(rs.next()){
    list.add(new Peopel(rs.getString(1), rs.getInt(2)));
    }
    просто в конце метода закрыть rs и com

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

      А почему нет? Он поля/столбцы не последовательно читает, в отличие от строк. Так что к столбцам в любом порядке можно обращаться.

  • @gressmc
    @gressmc 9 років тому

    Очень было бы здорово послушать в ваших видео о стандарте jpa) Или достаточно все таки разбора на примере Hibernate, что есть в ваших записях?)
    PS Кстати, а не закралась ли ошибка в текст в случае с Oracle? Или я неправильно читал доки -
    URL jdbc:oracle:thin:@host:port:sid
    ИЛИ
    URL jdbc:oracle:thin:@host:port/serviсeName

    • @gressmc
      @gressmc 9 років тому

      +Sergey Nemchinsky У вас в видео тут и в лекциях от 14года :
      jdbc:oracle://host:port/SID
      То есть перед SID слэш а не двоеточие.
      Так как я возможно ошибаюсь, поэтому и спросил у вас как у опытного человека)
      то что thin это подпротокол, поэтому он может быть другим понятно, но как правильнее все таки с суфиксом урла быть.

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

    Благо теперь есть try-with-resurses и Statment с ResultSet сами точно закроются.
    А еще или я дурак, или ResultSet нельзя вернуть в нулевую позицию и пройти 2-й раз, что обидно, если это так.

  • @АлександрЛебедев-ь4ю4р

    Почему между Shop и Cart не агрегация? Не пойму..

  • @Comfmore
    @Comfmore 9 років тому

    У меня вот вопрос, не про базы данных, а немного по другой теме. Вот есть на Хабрахабре одна старая, но популярная статья "Как два программиста хлеб пекли" ( надеюсь вы её читали ). Там описывается два подхода к построению архетикруты программы. Первых подход не знаю как называется одним словом, а второй принцип KISS. Хотелось бы узнать, что вы думаете по этому поводу? Действительно ли второй подход, который описан в статье, позволяет добится более быстрых результатов, если пожертвовать некоторыми вещами?

    • @Comfmore
      @Comfmore 9 років тому

      Comfmore В дополнение: в статье "Красной таблетки не существует", сказано "природа не проектирует сразу, она делает миллиарды итераций и применяет положительную обратную связь. И развивает организмы через эволюцию." "первые три-пять итераций системы должны быть обязательны сделаны быстро (как правило, хардкодом и говнокодом). Своеобразные интерактивные прототипы на живых данных, на которой разработчики реально познают детали предметной области, а заказчик окончательно понимает, что ему нужно. После этого можно проектировать, но заранее - никогда." Так ли это? Очень интересно узнать имено ваше мнение :)

    • @lexzcq
      @lexzcq 9 років тому

      ***** собственно, теперь ждём вашу лекцию по КИСС, было бы интересно услышать что это за зверь и зачем оно нужно :)

    • @lexzcq
      @lexzcq 9 років тому

      *****​ спасибо, раз уж речь зашла о структуре программ, то хотелось бы услышать Ваше мнение о следующем. Чем больше я изучаю джаву и знакомлюсь с принципами работы JVM и GC тем больше мне это напоминает теорию графов из дискретной математики, собственно вопрос следующий - целесообразно ли писать программы пользуясь не только принципом КИСС, но и законами теории графов? 

    • @lexzcq
      @lexzcq 9 років тому

      ***** немного не так, я имел в виду писать программу по принципам построения и взаимодействия графов, возможно это ускорит выполнение программ или позволит более экономно использовать память.
      P.S. Я понимаю что это может звучать как бред, но мне просто любопытно как бы это повлияло на работу программ.

  • @nakhachatryan
    @nakhachatryan 4 роки тому

    URL - Унифицированный, по-русски, - Универсалтный)) (Гео ։) )Локатор Ресурся ։)

  • @scrsa
    @scrsa 9 років тому

    Использовать запросы без bind переменных не просто не красиво, а может и повлиять на скорость работы бд. Например в ORACLE запросы кешируются и при повторном использовании, не происходит их повторный парсинг, запрос сразу выполняется*. Если же программист не использует bind переменные, то своими "разными" запросами вытеснит из кеша старые и возможно даже чужие запросы, тем самым заставляя базу выполнять бесполезную работу. Короче говоря DBA за такое вас по голове не погладит)

  • @dutnum5766
    @dutnum5766 8 років тому

    А зачем каждый раз открывать и закрывать Connection? Может открыть один Connection и делать все запросы из всех потоков через него? Это неправильно?

  • @HowItWorks
    @HowItWorks 5 років тому

    Ну с базами данных всё и так ясно, даже дураку. А вот что и как обстоит дело с ангулярами всякими, фреймворками для вебморды? У меня что то как то туго с этим по правде говоря.

  • @КонстантинКонашенков-и2ф

    База данных нужна как место, где будут храниться данные. Базы данных поддерживают большой объем данных, большую скорость манипуляции с данными (вставка, выборка, удаление и т.д.). Ну не в файле же хранить данные, это получиться медленно и неэффективно.
    Про 24/7 не очень логичная / понятная аналогия. Ведь можно сделать финт ушами и после каждой удачной операции записывать данные в файл (aka сериализировать )

  • @dec1m
    @dec1m 8 років тому

    Следующее видео уже есть?

  • @biguh3020
    @biguh3020 9 років тому

    Надеюсь вы конструктивно критику воспринимаете).
    код в Word выглядит ужасно, красный текст, подчеркивание, переносы строк - все это негативно влияет на восприятие..
    почему бы не показывать примеры кода из IDE? Подсветка синтаксиса, отступы и т.п. сразу приучает воспринимать код.
    показывая код в IDE его можно скомпилировать, запустить и увидеть что возвращается не в теории, а на практике..

    • @biguh3020
      @biguh3020 9 років тому +4

      *****
      Спасибо за ваш труд!

  • @sv2234sv
    @sv2234sv 2 місяці тому

    Смотрю в 2024 году 😂

  • @nakhachatryan
    @nakhachatryan 4 роки тому

    Очень интересно, но, извините, очень мало информации за очень много времени - много воды, т.е., те, кто знаком с этим и хотят что-то услышать дальше про DAO, они ждут-ждут и разочаровываются, ибо, за 50 минут можно было уложить реально в 3-4 раза больше

    • @SergeyNemchinskiy
      @SergeyNemchinskiy  4 роки тому

      это видео для новичков. Им как раз такая скорость комфортна

    • @nakhachatryan
      @nakhachatryan 4 роки тому

      @@SergeyNemchinskiy а можете подсказать, если у меня некоторый фреймворк Ч, который запусуает заданное количество потоков, которые вызывают определенный метод из джар-библиотеки и я хочу еще воспользоваться и преимуществами спринга, поэтому в этом методе поднимаю контекст(spring-core, не бут, если имеет значение), то получается, что у меня на каждый поток свой контекст и мне не нужно беспокоится о потокобезопасности даже для переменных экземпляра или класса для синглтон бинов?

  • @АлександрЛебедев-ь4ю4р

    На 5 минуте

  • @МаксимКузичев-к8ч
    @МаксимКузичев-к8ч 7 років тому

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