代码之家  ›  专栏  ›  技术社区  ›  slashmais

为Web开发选择一个好的框架

  •  2
  • slashmais  · 技术社区  · 16 年前

    根据接受的答案 this question 我已经设置了一个netbeans/tomcat环境。 在测试这个设置时,我试图创建一个JavaWeb/Web应用程序,但这一测试应用程序的框架选择让它难堪。

    选择包括:

    • 弹簧网MVC 2.5
    • JavaServer面
    • Struts 1.3.8
    • Hibernate 3.2.5

    在我的阅读(googling&so)中,很快就在树林中迷路了,所以我正在考虑只选一个,如果它不成功,以后再换一个。这种方法可行吗?


    项目背景

    (由于遗留代码必须是基于Java的)
    它使用自签名小程序进行客户端呈现和交互;
    servlet检索从客户机请求的数据集;
    数据库可能在某个远程服务器上,所以我打算使用JDBC来访问它;

    遗留系统是CORBA(ACE/TAO),基于许多需要被翻译成Java的C++模块,以及现有的Java模块(幸运的是很少),使得CORBA调用需要改变以使用新翻译的Java模块。

    如果你能想出更好的方法来处理这个项目,请告诉我。

    (这个项目有我喜欢的所有特征:有趣、富有挑战性,我学到了一些新东西)

    3 回复  |  直到 16 年前
        1
  •  3
  •   Daff    16 年前

    好吧,首先,仔细观察一下整体不会有什么伤害 Spring Framework 一般来说。这个 documentation 很好地从非常基本的模块开始工作,一直到Web MVC层(在那里您可以决定是否要使用它,例如Struts集成也是可能的——但我发现Struts总是很麻烦的)。冬眠可能是最流行的 Object Relation Mapper 框架。它用于存储、查询和检索域模型对象(您希望存储在数据库中的所有对象),但与Web层无关。

    我个人不喜欢JSF(另一个规范怪兽需要花费比需要更多的时间进入它)。如果您喜欢基于小部件的方法(将页面与组件放在一起,而不是输出普通的旧HTML),那么您可能希望了解一下 Google Web Toolkit .

    另一个春季解决方案是 GRails . 使用它是非常有趣的,即使你必须学习另一种(脚本)语言(称为Groovy),你仍然可以在框架中使用所有的Java遗留CLASE,因为Groovy类与Java类兼容(反之亦然)。

    顺便说一句,我认为CORBA是一种技术/协议/标准,特别允许您独立于语言访问方法和对象。维基百科:

    公共对象请求代理 建筑(CORBA)是一个标准 由对象管理组定义 (OMG)启用软件组件 用多种计算机语言编写 在多台计算机上运行 协同工作,即IT支持 多个平台。

    那么为什么你必须把C++模块翻译成Java语言呢?

        2
  •  3
  •   Nick Holt    16 年前

    首先,将Hibernate从您的列表中划掉-如果您有ORM需求,建议您使用它,但它与Web层无关。

    那么我认为你有两个选择:

    • 弹簧MVC和JSF
    • 支柱

    无论走哪一条路,都会将您提交到那个/那个API,并且在以后的某个日期进行切换永远不会是无痛的。

    我的建议是:

    • 使用SpringMVC——不管怎样,您都可能使用Spring,所以这是一个自然的选择。
    • 忽略JSF,自己编写HTML,使用JSTL呈现bean。
    • 使用jquery/javascript丰富用户体验。
    • 使用Hibernate进行对象持久化。
        3
  •  1
  •   KLE rslite    16 年前

    我认为最好是取最小值,并根据需要添加。很可能你就是这样简单的。

    一个想法可能是从Spring开始,作为你的“大计划”,和集成技术。然后根据需要添加补充:

    • 持久性:休眠
    • javascript:选择一个与您所使用的SpringMVC模块匹配的JS库。
    推荐文章