JDBC

Какое веб-приложение обходится без слоя данных? Правильно, почти никакое, поэтому даже на проекты, использующие NoSQL-базы, не берут без хорошего знания SQL. На SQL придется писать часто и много. Слишком глубоких знаний от программиста Java, конечно, не ожидают, но JOIN’ы и методы нормализации нужно знать назубок. Неплохая книжка по SQL — «Изучаем SQL» Линн Бейли. Отличный интерактивный курс предлагает w3schools.

  • 1. «Изучаем SQL» Линн Бейли

Дальше нужно разобраться с JDBC. Казалось бы, зачем учить то, что уже практически нигде в чистом виде не пользуется? Дело в том, что все ORM базируются на старом добром JDBC, и рано или поздно при возникновении проблем с БД с ним придется столкнуться. Кроме того, на собеседовании часто просят обосновать выбор ORM или JDBC на практическом примере, поэтому нужно осознавать все преимущества и недостатки первого и второго способов.

Java JDBC is a java API to connect and execute query with the database. JDBC API uses jdbc drivers to connect with the database.

Why use JDBC

Before JDBC, ODBC API was the database API to connect and execute query with the database. But, ODBC API uses ODBC driver which is written in C language (i.e. platform dependent and unsecured). That is why Java has defined its own API (JDBC API) that uses JDBC drivers (written in Java language).

 

more JDBC info look here

Real Exemple:

// Step 1: Register the database driver by using:
// Class.forName (\” driver class for that specific database\” );

Class.forName(“com.mysql.jdbc.Driver”);

// Step 2: Create a database connection using:
// Connection con = DriverManager.getConnection (url, username, password);

Connection con = DriverManager.getConnection (“jdbc: mysql://localhost:3306/art”, art,art);

// Step 3: Create a statement using:
Statement stmt = con.createStatement(\”select * from EMP\”);

// Step 4: Execute the statement query:
ResultSet rs = stmt.exceuteQuery ();
while (rs.next ())
{
System.out.println (rs.getString (1));
}

Leave a Reply

Your email address will not be published. Required fields are marked *