java - LINQ for Java 工具

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。
关闭10年前

LINQ for java 会是一个有用的工具吗?我一直在研究一种工具,它允许 Java 对象映射到数据库中的一行。

  1. 这对 Java 有用吗 程序员?
  2. 会有哪些功能 有用吗?

最佳答案

LINQ for Java 会很不错,但问题在于语言集成。

Java 没有像 lambda 表达式那样简洁的东西,它们是 LINQ 的基石之一。我想他们可以在没有 lambda 表达式的普通 Java 之上将查询表达式支持分层,通过使扩展创建匿名内部类 - 但它会非常可怕。如果您想执行 LINQ to SQL 之类的操作,还需要表达式树。

已检查的异常可能会妨碍您,但我们必须看到。 IQueryable 的等价物需要有某种通用的检查异常 - 或者它可能在元素类型和异常类型中都是通用的......

无论如何,这都是天上掉馅饼 - 考虑到 Java 社区在闭包方面遇到的麻烦,我认为在 2012 年左右之前期望 Java 本身出现类似 LINQ 之类的东西是愚蠢的。当然,那是并不是说用“类似 Java”的语言是不可能的。例如,Groovy 已经具有某些有用的方面。

在库方面,Hibernate 已经提供了 LINQ to SQL 的许多功能的“非集成”版本。对于 LINQ to Objects,您应该查看 Google Java Collections API - 有很多相同的东西(过滤、投影等)。当然,如果没有 lambdas,使用起来会更加繁琐——但它仍然非常非常方便。 (我在工作中一直使用 Google 集合代码,我不想回到“普通”Java 集合。)

https://stackoverflow.com/questions/346721/

相关文章:

python - 什么是 PyMySQL,它与 MySQLdb 有何不同?它会影响 Django 部

mysql - 计算执行的查询数

mysql - 替换成查询语法

php - 如何使用 Laravel 4 Eloquent 连接列?

mysql - '用户 'root' @'localhost' 的访问被拒绝(使用密码 : NO)'

mysql - 如何在 SQL 查询中对 LEFT JOIN 的顺序进行排序?

mysql - 设计用户角色和权限系统的最佳实践?

php - PDO fetchAll 将键值对分组到 assoc 数组中

mysql - 如何在mysql中将字符串转换为 float ?

mysql - 最好的 MySQL 性能调优工具?