Érdekes kezdeményezés a JINQ, amely kombinálja a Lambda expression technológiát az adatbázis lekérdezésekkel.
Nézzük például az alábbi JDBC lekérdezést:
PreparedStatement s = con.prepareStatement("SELECT * " + "FROM Customer C " + "WHERE C.Name = ? "); s.setString(1, "Alice"); ResultSet rs = s.executeQuery(); |
E Helyett JINQ használatával az alábbi "lekérdezést" kell megejtenünk:
database.getCustomers().where( customer -> customer.getName().equals("Alice")); |
A leírás szerint teljes stream támogatása is van, tehát működnek a filter, a map és a reduce megoldások is:
customers.stream() .filter( c -> c.getName().equals("Alice") ) .map( c -> c.getAddress() ); |
Egy próbát megér... JPA-val kombinálva nagyon jó eszköznek néz ki.