Преобразование SQL запросов в JAVA Class

231
06 октября 2017, 14:53

Стоит задача преобразовать некоторые sql запросы в конкретные Java файлы. Допустим у меня есть запрос на создание таблицы:

CREATE TABLE `persons` (
  `Id` int AUTO_INCREMENT,
  `Name` varchar(25),
  PRIMARY KEY (`Id`)
);
CREATE TABLE `autos` (
  `Id` int AUTO_INCREMENT,
  `Person` int,
  `Title` varchar(100),
  PRIMARY KEY (`Id`),
  CONSTRAINT `autoToPerson` FOREIGN KEY (`PersonId`) REFERENCES `persons`(`Id`) ON DELETE CASCADE

);

Эти две таблицы надо преобразовать в класс Java. Я нашел статью об этом на хабре: https://habrahabr.ru/post/330938/ Но там наоборот, классы преобразовывают в запросы.

Слышал про такие понятия как Statement, PreparedStatement, ResultSet. Но не понимаю о чем это.

Жду от вас ответов, советов, направлений.

Answer 1

Если нет понимания что такое Statement, PreparedStatement, ResultSet и CallableStatement еще, я бы посоветовал сначала разобраться, что это такое и как это работает, посмотреть что такое JDBC и только потом смотреть в сторону ORM.

Формулировка "преобразовать некоторые sql запросы в конкретные Java файлы" вообще вызывает много вопросов. Что под этим понимается? Выполнить запрос из Java класса? Если да, вот простейший пример: http://www.javamadesoeasy.com/2015/07/jdbc-statement-example-execute-create.html

Answer 2

Айдар,

Есть такая концепция - называется ORM - Object Relational Mapping- отображение Java объектов на БД.

В данном случае речь идет о том, чтобы отобразить ваши таблицы на Java классы. Есть множество различных способов как это можно сделать. Наиболее популярная (как правильно написали в комментариях) - ORM Hibernate - начните с него.

Слышал про такие понятия как Statement, PreparedStatement, ResultSet. Но не понимаю о чем это

Это более низкоуровневая история - это о том, как из Java достучаться до SQL, вкратце это описывается пакетом java.sql он же JDBC - тот же Hibernate в своих кишках реализует ORM с помощью JDBC.

READ ALSO
Локальные переменные в C#

Локальные переменные в C#

Есть следующий код на C# (NET Core):

394
Передача значений в Style WPF

Передача значений в Style WPF

Как передать значения их элемента в стиль, который к нему привязан?

429
Проблема с передвижением объекта С#

Проблема с передвижением объекта С#

Здравствуйте! Я только начал разбираться с C#, хочу нарисовать движущийся кругНаписал такие методы:

293