与 Microsoft 企业堆栈最直接等效的是 Java 企业堆栈。两个人一直在争吵二十年!
Java 没有标准的 IDE,但我建议 Eclipse 是事实上的标准;我并不是说它是最好的,只是说它具有最广泛的采用。
Java 也没有标准的 MVC 框架。唯一的标准 Web 框架是 JSF,它更重量级。尽管如此,还是有一些非常流行和完善的框架来填补这个空白:最流行的是 Struts 2,我将推荐 Stripes。
Java 没有相当于 IIS 的标准服务器,但它有服务器标准,并且有很多实现:对于简单的 servlet 容器,有 Tomcat 和 Jetty,对于成熟的应用程序服务器,有JBoss、GlassFish 和各种商业产品。我个人的推荐是 JBoss AS7;它完成了传统应用程序服务器可以做的所有事情,但它具有简单 servlet 容器的启动速度、内存使用和易于配置。
要专门解决您的项目符号:
- Java 用于许多生产站点,并且拥有一个庞大的社区。
- Eclipse 为 Java 做了所有你能想象到的事情(自动完成、导航、调试、文档、重构——我的印象是它比 VS 做得更好),并且集成了 EE 堆栈的许多方面(比如构建和部署 Web 应用程序) ,加上体面的数据库开发模式。
- 如果您使用 JPA 进行持久性,那么您无需编写任何 SQL 即可。JPA 实现将生成用于设置数据库的 DDL,以及用于加载和存储对象的查询。如果你想做复杂的查询,你可以用 JPQL 编写它们(这就像一个对对象更友好的 SQL),或者使用 API 从对象构建查询。遗憾的是,我认为这不如 LINQ 好。
- Java 是合理的面向对象的。
- Java 在熟练的手中是高效的(我认为这就是您所说的“快速使用”的意思)。从历史上看,它从零到运行网站的速度并不像 Ruby on Rails 那样快,但我认为与当前这一代工具的差距已经缩小了很多,而且工具和库的深度惊人让您在应用程序生命周期的后期阶段保持高效。
它当然可以与 Apache 和 MySQL 一起使用,尽管您也需要一个 servlet 容器或应用程序服务器。例如,我的公司将 Apache、Tomcat 和 MySQL 用于我们的产品。我强烈建议你使用 PostgreSQL 而不是 MySQL,因为坦率地说,MySQL 很糟糕,但如果你真的想的话,你当然可以使用 MySQL!