Я думаю, это во многом зависит от того, что студенты узнают, поступая на курс. Причина, по которой я это говорю, заключается в том, что, вероятно, лучше начать с того, с чем они все знакомы, и двигаться дальше. По моему опыту, большинство студентов понимают, что такое объекты и как их использовать, поэтому представление SQL-таблиц в качестве объектов кажется отличным местом для начала.
Если вы согласны со мной до сих пор, то вы также можете согласиться с тем, что ORM - отличный способ перевести молодых программистов из комфортной зоны объектно-ориентированного программирования в новый мир программирования баз данных.
Я не очень знаком с инструментами, доступными для Java для реализации ORM, но я смог найти его в C # (используя LINQ to MySQL) всего за несколько дней (после неудачной попытки выучить PHP для несколько недель). Если реализация проектов в C # возможна, то при использовании LINQ можно отметить, что он дает учащимся представление о том, как могут выглядеть запросы в SQL, не выходя из зоны комфорта ООП (при условии, что они, по крайней мере, немного удобны для .СЕТЬ). Это позволяет учить понятиям программирования баз данных, не тратя слишком много времени на обсуждение реализации этого. Затем, когда они освоили эти концепции, вы можете откатиться назад и показать им, как выполнить аналогичную реализацию вне ООП (с использованием SQL, PHP, JSP и т. Д.)
Не говоря уже о том, что это дает им отличный предварительный обзор того, как они могут использовать новейшие технологии .NET для выполнения довольно сложных задач без особых усилий (что, вероятно, в любом случае, в долгосрочной перспективе им выгодно).
Удачи!