Alvaro Hernandez
Alvaro Hernandez 8Kdata
: December
180 мин

PostgreSQL & Java Tutorial

Java is one of the most used languages when programming with PostgreSQL databases. Join this tutorial to learn or review the techniques to connect to postgres, best programming practices with JDBC, and to explore jOOQ, a mapper software that allows you to use the full power of SQL and postgres advanced query features while avoiding all the boilerplate code.

This tutorial is very practical: most of the time will be dedicated to iterate through code samples. It will cover:

  • Introduction to Java and PostgreSQL
  • Ways of connecting to PostgreSQL from Java (not only JDBC!)
  • Introduction to JDBC. JDBC types. PostgreSQL JDBC
  • Code demo: JDBC with PostgreSQL. From Java 1.4 to Java 8, best practices and code samples
  • Code demo: jOOQ, a great mapper for PostgreSQL
  • Java inside PostgreSQL
  • The future of Java and PostgreSQL

About two-thirds of the tutorial will be dedicated to iterate over code samples and demos. All the code would be available from public open-source repositories and built with maven, so that any attendee may download it and build easily to play with it during the tutorial (although not required).


Part 1

Part 2

Part 3

Part 4


Другие доклады

  • Michael Shurutov
    Michael Shurutov СтандартПроект
    22 мин

    Autonomous transactions in Postgres

    1. What is an autonomous transaction?
    2. An overview of autonomous transactions in "big" DBMS: Oracle.
    3. Autonomous transaction logic in Postgres Pro.
    4. An overview of emulation methods for autonomous transactions in PostgreSQL.
    5. Comparing performance of the built-in Postgres Pro autonomous transaction mechanism and PostgreSQL emulation methods.


  • Marco Slot
    Marco Slot Citus Data
    45 мин

    Towards 1M writes/sec: Scaling PostgreSQL using Citus MX

    Citus allows you to distribute postgres tables across many servers. It extends postgres to transparently delegate or parallelise work across a set of worker nodes, enabling you to scale out the CPU and memory available for queries.

    One year ago, we began a long journey to allow Citus to scale out another dimension: write throughput. With writes being routed through a single postgres node, write throughput in Citus was ultimately bottlenecked on the CPUs of a single node. Citus MX is a new edition of Citus which allows distributed tables to be used from from any of the nodes, enabling NoSQL-like write-scalability.

  • Stanislav Merzlyakov
    Stanislav Merzlyakov ФГБУ НИИ "Восход"
    Dmitry Pogibenko
    Dmitry Pogibenko ФГБУ "НИИ Восход"
    Sergey Korolev
    Sergey Korolev МЦСТ
    Igor Chizhevskiy
    Igor Chizhevskiy НИИ "Восход"
    Илья Космодемьянский
    Илья Космодемьянский Data Egret
    Иван Богданов
    Иван Богданов НИИ "Восход"
    45 мин

    Voskhod PostgreSQL on Elbrus

    Practical experience of carrying out import substitution with using PostgreSQL in government information system including not only the free software, but also the Russian hardware (Elbrus servers and other).


  • Dmitry Melnik
    Dmitry Melnik ИСП РАН
    22 мин

    Dynamic Compilation of SQL Queries in PostgreSQL Using LLVM JIT

    Currently, to execute SQL queries PostgreSQL uses interpreter, which implements Volcano-style iteration model. At the same time it’s possible to get significant speedup by dynamically JIT-compiling query “on-the-fly”. In this case it’s possible to generate code that is specialized for given SQL query, and perform compiler optimizations using the information about table structure and data types that is already known at run time. This approach is especially important for complex queries, which performance is CPU-bound.