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

  Рет қаралды 31,405

Sergey Nemchinskiy

Sergey Nemchinskiy

Күн бұрын

Пікірлер: 46
@АндрейКолодий-э5р
@АндрейКолодий-э5р 6 жыл бұрын
Блин чувак ты крутой, я 2 недели мучаю DAO класс что бы просто вывести все сообщения в чате а ты за час рассказал все так подробно что я понял что страдал фигней все это время и это капец как просто. Спасибо большое за видео.
@PrinceNoru
@PrinceNoru 3 жыл бұрын
божечки-кошечки, какое отличное, понятное и супер внятное объяснение. Рада, что нашла его, облегчает жизнь в мильон раз.
@SergeyNemchinskiy
@SergeyNemchinskiy 3 жыл бұрын
супер. мне очень приятно :)
@valerapelenskiy5015
@valerapelenskiy5015 9 жыл бұрын
Дякую...! це саме те, що мені було потрібно!
@KyryloLukeniuk
@KyryloLukeniuk 9 жыл бұрын
Отличное видео! Ждем лекции о спринге!
@dmitriyk9113
@dmitriyk9113 9 жыл бұрын
Так приятно когда в начале "Здрасте, мои дорогие" хД
@ronrcf
@ronrcf 9 жыл бұрын
Спасибо за видео. Интересно посмотреть байку о том как проектировать классы работающие с ресурсами которые необходимо освобождать. Как делать эти классы тесто пригодными (unit test). Хотя бы на примере работы с JDBC.
@romanreal7
@romanreal7 9 жыл бұрын
***** т.е. планируется видео посвященное тестированию и все связанное с этим, что нужно знать java разработчику, чтобы он мог уверенно сказать "да, я знаю TDD" и добавить эту аббревиатуру в свое резюме?)
@sergeyshestakov4936
@sergeyshestakov4936 Жыл бұрын
Спасибо
@al1as643
@al1as643 7 жыл бұрын
Придираюсь к мелочам, конечно, но SQL это всё-таки structured query language, а не standardized. 10:50
@ViktorVdovichenko
@ViktorVdovichenko 7 жыл бұрын
Отлично! Спасибо!
@NeurolinguisticTraumatolog
@NeurolinguisticTraumatolog 9 жыл бұрын
Спасибо за ваш труд:) Во многих вакансиях есть пункт Agile-методы, хотелось бы услышать с какими методами разработы вы сталкивались больше, ну и вообще лекцию по разным методологиям, что испольщуется чаще, и для каких проэктов какую методологию лучше использовать
@olek_tar
@olek_tar 9 жыл бұрын
***** в таком случае, хотелось бы услышать от Вас, хотя бы в кратце, что такое Scrum и как с ним работать. :)
@Otruiniy_Grybochok
@Otruiniy_Grybochok 9 жыл бұрын
Такой вопрос, когда в цикле итерируемся по rs можно создавать сразу объекты, пример: while(rs.next()){ list.add(new Peopel(rs.getString(1), rs.getInt(2))); } просто в конце метода закрыть rs и com
@EdwardNorthwind
@EdwardNorthwind Жыл бұрын
А почему нет? Он поля/столбцы не последовательно читает, в отличие от строк. Так что к столбцам в любом порядке можно обращаться.
@sadasdsdasdas5251
@sadasdsdasdas5251 8 жыл бұрын
Можете снять видео про сокеты? Хотелось бы поподробнее об этом узнать. Желательно на примере и с использованием БД(ну например сериализовать и десериализовать объект и передать его по сокетам).
@NamelessMerph
@NamelessMerph 9 жыл бұрын
Спасибо за видео. Очень доходчиво объясняете. Допустим у меня есть классы, которые я храню в БД посредством JPA. И есть 3 основных пакета: dao, domain, ui. Куда правильнее положить классы: в dao или domain? Ведь с одной стороны - это представление предметной области, а с другой - таблицы в БД.
@maxlich9139
@maxlich9139 7 жыл бұрын
классы - звучит адово. объекты же хранятся ,не? (а вернее даже - их состояние)
@nakhachatryan
@nakhachatryan 4 жыл бұрын
только, наверное, не "оборачвает", не является оберткой/враппером, как Integer для int, а является фасадом
@Bublerkin
@Bublerkin 8 жыл бұрын
Это получается, что при каждом запросе к базе нужно открывать/закрывать tcp-соединение? Но это ведь бешеный оверхед.
@АлександрЛебедев-ь4ю4р
@АлександрЛебедев-ь4ю4р 4 жыл бұрын
Почему между Shop и Cart не агрегация? Не пойму..
@владбуглаев-ф4т
@владбуглаев-ф4т 9 жыл бұрын
Спасибо за видео! Всё-таки в конце надо было обнадёжить новичков, рассказав о такой штуке, как Spring JDBC, а то от кода чистого JDBC можно в осадок выпасть)
@gressmc
@gressmc 9 жыл бұрын
+влад буглаев На мой взгляд разбор чистого JDBC как раз таки намного проще воспринимается чем в связке со Spring) Это конечно ИМХО) Сергей вам спасибо за труды, доступно рассказываете, много дополнительного для себя подчерпнул в ваших видео.)
@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 это подпротокол, поэтому он может быть другим понятно, но как правильнее все таки с суфиксом урла быть.
@Comfmore
@Comfmore 9 жыл бұрын
У меня вот вопрос, не про базы данных, а немного по другой теме. Вот есть на Хабрахабре одна старая, но популярная статья "Как два программиста хлеб пекли" ( надеюсь вы её читали ). Там описывается два подхода к построению архетикруты программы. Первых подход не знаю как называется одним словом, а второй принцип KISS. Хотелось бы узнать, что вы думаете по этому поводу? Действительно ли второй подход, который описан в статье, позволяет добится более быстрых результатов, если пожертвовать некоторыми вещами?
@Comfmore
@Comfmore 9 жыл бұрын
Comfmore В дополнение: в статье "Красной таблетки не существует", сказано "природа не проектирует сразу, она делает миллиарды итераций и применяет положительную обратную связь. И развивает организмы через эволюцию." "первые три-пять итераций системы должны быть обязательны сделаны быстро (как правило, хардкодом и говнокодом). Своеобразные интерактивные прототипы на живых данных, на которой разработчики реально познают детали предметной области, а заказчик окончательно понимает, что ему нужно. После этого можно проектировать, но заранее - никогда." Так ли это? Очень интересно узнать имено ваше мнение :)
@lexzcq
@lexzcq 9 жыл бұрын
***** собственно, теперь ждём вашу лекцию по КИСС, было бы интересно услышать что это за зверь и зачем оно нужно :)
@lexzcq
@lexzcq 9 жыл бұрын
*****​ спасибо, раз уж речь зашла о структуре программ, то хотелось бы услышать Ваше мнение о следующем. Чем больше я изучаю джаву и знакомлюсь с принципами работы JVM и GC тем больше мне это напоминает теорию графов из дискретной математики, собственно вопрос следующий - целесообразно ли писать программы пользуясь не только принципом КИСС, но и законами теории графов? 
@lexzcq
@lexzcq 9 жыл бұрын
***** немного не так, я имел в виду писать программу по принципам построения и взаимодействия графов, возможно это ускорит выполнение программ или позволит более экономно использовать память. P.S. Я понимаю что это может звучать как бред, но мне просто любопытно как бы это повлияло на работу программ.
@dec1m
@dec1m 8 жыл бұрын
Следующее видео уже есть?
@EdwardNorthwind
@EdwardNorthwind Жыл бұрын
Благо теперь есть try-with-resurses и Statment с ResultSet сами точно закроются. А еще или я дурак, или ResultSet нельзя вернуть в нулевую позицию и пройти 2-й раз, что обидно, если это так.
@maxlich9139
@maxlich9139 7 жыл бұрын
Все же JDBC довольно простая тема. Один-два раз сделать несложный CRUD c использованием JDBC, и всё станет довольно-таки ясным.
@dutnum5766
@dutnum5766 8 жыл бұрын
А зачем каждый раз открывать и закрывать Connection? Может открыть один Connection и делать все запросы из всех потоков через него? Это неправильно?
@HowItWorks
@HowItWorks 5 жыл бұрын
Ну с базами данных всё и так ясно, даже дураку. А вот что и как обстоит дело с ангулярами всякими, фреймворками для вебморды? У меня что то как то туго с этим по правде говоря.
@КонстантинКонашенков-и2ф
@КонстантинКонашенков-и2ф 6 жыл бұрын
База данных нужна как место, где будут храниться данные. Базы данных поддерживают большой объем данных, большую скорость манипуляции с данными (вставка, выборка, удаление и т.д.). Ну не в файле же хранить данные, это получиться медленно и неэффективно. Про 24/7 не очень логичная / понятная аналогия. Ведь можно сделать финт ушами и после каждой удачной операции записывать данные в файл (aka сериализировать )
@scrsa
@scrsa 9 жыл бұрын
Использовать запросы без bind переменных не просто не красиво, а может и повлиять на скорость работы бд. Например в ORACLE запросы кешируются и при повторном использовании, не происходит их повторный парсинг, запрос сразу выполняется*. Если же программист не использует bind переменные, то своими "разными" запросами вытеснит из кеша старые и возможно даже чужие запросы, тем самым заставляя базу выполнять бесполезную работу. Короче говоря DBA за такое вас по голове не погладит)
@nakhachatryan
@nakhachatryan 4 жыл бұрын
URL - Унифицированный, по-русски, - Универсалтный)) (Гео ։) )Локатор Ресурся ։)
@biguh3020
@biguh3020 9 жыл бұрын
Надеюсь вы конструктивно критику воспринимаете). код в Word выглядит ужасно, красный текст, подчеркивание, переносы строк - все это негативно влияет на восприятие.. почему бы не показывать примеры кода из IDE? Подсветка синтаксиса, отступы и т.п. сразу приучает воспринимать код. показывая код в IDE его можно скомпилировать, запустить и увидеть что возвращается не в теории, а на практике..
@biguh3020
@biguh3020 9 жыл бұрын
***** Спасибо за ваш труд!
@АлександрЛебедев-ь4ю4р
@АлександрЛебедев-ь4ю4р 4 жыл бұрын
На 5 минуте
@МаксимКузичев-к8ч
@МаксимКузичев-к8ч 7 жыл бұрын
у тебя странный голос. некоторые буквы тихо и невнятно говоришь, что при сильной громкости даже не слышно
@nakhachatryan
@nakhachatryan 4 жыл бұрын
Очень интересно, но, извините, очень мало информации за очень много времени - много воды, т.е., те, кто знаком с этим и хотят что-то услышать дальше про DAO, они ждут-ждут и разочаровываются, ибо, за 50 минут можно было уложить реально в 3-4 раза больше
@SergeyNemchinskiy
@SergeyNemchinskiy 4 жыл бұрын
это видео для новичков. Им как раз такая скорость комфортна
@nakhachatryan
@nakhachatryan 4 жыл бұрын
@@SergeyNemchinskiy а можете подсказать, если у меня некоторый фреймворк Ч, который запусуает заданное количество потоков, которые вызывают определенный метод из джар-библиотеки и я хочу еще воспользоваться и преимуществами спринга, поэтому в этом методе поднимаю контекст(spring-core, не бут, если имеет значение), то получается, что у меня на каждый поток свой контекст и мне не нужно беспокоится о потокобезопасности даже для переменных экземпляра или класса для синглтон бинов?
@sv2234sv
@sv2234sv 4 ай бұрын
Смотрю в 2024 году 😂
Разбор кода DAO Layer на Java
30:06
Sergey Nemchinskiy
Рет қаралды 34 М.
Java для начинающих / JDBC подключение к БД из java + CRUD
1:20:08
Programming with Lesha Marshal
Рет қаралды 18 М.
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН
СИНИЙ ИНЕЙ УЖЕ ВЫШЕЛ!❄️
01:01
DO$HIK
Рет қаралды 3,3 МЛН
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 30 МЛН
ЭТОТ Паттерн Спрашивают на 99% Собесов
14:19
Трехтировое (трехслойное) приложение
15:04
Sergey Nemchinskiy
Рет қаралды 22 М.
Великовозрастный программист. Стоит ли идти в IT в 40 лет
8:17
Дилетант широкого профиля
Рет қаралды 16 М.
Декомпозиция, типовые решения
44:31
Sergey Nemchinskiy
Рет қаралды 37 М.
Что такое SQL?
7:11
Merion Academy
Рет қаралды 359 М.
Основы архитектуры Java приложения. UML
27:33
Sergey Nemchinskiy
Рет қаралды 50 М.
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН