sql >> Databasteknik >  >> RDS >> Mysql

LINQ för Java-verktyg

LINQ för Java skulle vara trevligt, men problemet är språkintegreringen.

Java har inget så kortfattat som lambda-uttryck, och de är en av grundstenarna i LINQ. Jag antar att de kunde lägg stödet för frågeuttryck ovanpå normal Java utan lambda-uttryck, genom att få expansionen att skapa anonyma inre klasser - men det skulle vara ganska hemskt. Du skulle också behöva uttrycksträd om du vill göra något som LINQ till SQL.

Markerade undantag kan komma i vägen, men vi måste se. Motsvarigheten till IQueryable skulle behöva ha något slags allmänt markerat undantag - eller så kan det vara generiskt både i elementtypen och undantagstypen...

Hur som helst, det här är en pirr i luften - med tanke på de problem som Java-communityt har med stängningar, tycker jag att det skulle vara dumt att förvänta sig något liknande LINQ i själva Java tidigare än omkring 2012. Det är naturligtvis inte att säga det skulle inte vara möjligt på ett "Java-liknande" språk. Groovy har redan vissa användbara aspekter, till exempel.

För bibliotekssidan tillhandahåller Hibernate redan en "icke-integrerad" version av många av funktionerna i LINQ till SQL. För LINQ to Objects bör du titta på Google Java Collections API - Det är mycket av samma typ (filtrering, projicering etc). Utan lambdas är det såklart mycket krångligare att använda - men det är ändå riktigt, riktigt praktiskt. (Jag använder Google Collections-koden hela tiden på jobbet och jag vill inte gå tillbaka till "vanilj" Java-samlingarna.)



  1. Spring Data JPA + Hibernate Hoppa över låsta rader (PostgreSQL)

  2. Hur Cosd() fungerar i PostgreSQL

  3. Välj den andra raden i en tabell med hjälp av rownum

  4. Designa en databas för en jobbportal online