赫赫。大树底下好乘凉呀,这样可以让你把注意力更多地放在业务逻辑上,如果你们自己已经使用了自己开发的mvc框架,而且成员都已经很熟了,那当然可以不必再用struts了,不过,想搞出一套高度可复用地的框架非常不容易呀。

解决方案 »

  1.   

    struts把好多的东西的框架都已经开发出来,你只要写业务逻辑,比如表单的验证,文件上传,标签显示等等,用jsp/servlet你好要自己写吧
      

  2.   

    struts是mvc模式中的比较成熟易于开发的一种.
    的确,用用就知道了
      

  3.   

    以前使用servlet开发应用系统的人深深感受到在java代码中嵌入大量html代码是一件非常痛苦的事,于是sun推出了JSP,解决了java代码中嵌入html代码的问题。但是很快程序员们就知道,用JSP“在html代码中嵌入大量java代码”跟“在java代码中嵌入大量html代码”是一样的非常痛。JSP是这样,ASP也是这样。由于,Craig R. McClanahan借用MVC的思想,把Java web应用程序的java和html分离开放在不同的文件中,分成了三部分,也就是struts;后来,微软也学会了这种分离方法,但微软懒一些,只分成了两部分,也就是ASP.NET。
         Struts (org.apache.struts)是一个开放源代码的Web应用框架,基于MVC设计模式,使用servlet和JSP API建立,可以用来构建复杂的Web应用。它允许我们分解一个应用程序的商业逻辑、控制逻辑和表现逻辑的代码,使它的重用性和维护性更好。Struts框架是Jakarta工程的一部分,由Apache软件基金会管理。Struts可以从http://jakarta.apache.org/ struts站点下载。
    Struts框架提供以下服务。
    • 作为MVC结构中的controller的servlet.
    • JSP里用于bean管理、HTML和JavaScript生成、模板处理和流程控制的JSP标签库。
    • 用于国际化消息的框架。国际化你的Web应用,意味着你的Web应用在使用时可以让用户以喜爱的语言显示。这意味着你需要创建一个应用资源文件,包含每种语言的信息。
    • 一个JDBC的实现来定义数据源和数据库连接池。
    • 一个通用的的错误和异常处理机制,包括从一个应用程序资源文件读取错误信息。
    • XML语法分析。
    • 文件上载工具。
    • 注册机制。
        一个基于Struts的应用程序的表示层(view)使用Struts标签库(taglibs)构建。来自客户的请求被传递给叫ActionServlet的servlet,它作为controller.使用了Struts的应用程序,所有需要通过框架的请求都通过ActionServlet传递。这个ActionServlet把数据从请求传递到ActionForm JavaBean。
        ActionForm是代表从一个表单View组件输入数据的JavaBean。这些表单由JSP用Struts html标签库产生。这个beam由  ActionServlet生成,带request参数,它还请求ActionForm来验证用户提交数据的合法性。
        ActionServlet通过定义一组ActionMapping来配置。一个ActionMapping是一个对象,它将请求中的URL映射到由应用程序开发者提供的处理请求的组件。ActionServlet和ActionMapping的配置在XML配置文件中完成。
        专用的应用程序用于处理请求的组件叫Action类。在MVC结构中,它们代表模型。它们可能用于验证用户输入的合法性,假如在信息处理过程中出现了应用程序错误,Action类可以创建一个error对象的实例,然后保存庆HTTP request对象中。如果在Action类中的逻辑成功地被招待类给Controller传递一个ActionForward对象,代表所需的描绘响应的JSP。ActionForward有两种:专门转发给特定的Action类或全局转发(任何一个Action类可以把这些ActionForwards转给Controller)。
      

  4.   

    我在2002年用ASP.NET开发了两个企业应用系统,深感ASP.NET非常不错,2002年底又接到了JSP的企业应用系统项目,用惯了Microsoft Visual Studio .NET再来用JAVA 和JSP的开发工具,这些工具可视化设计环境非常差,就连顶级的java开发工具JB连JSP的WEB可视化环境都没有,运行速度也非常慢,当时真的想把我手头上的几款JAVA 和JSP的开发工具丢到垃圾捅去。为了做项目,没别的办法,我不得不自己用VC++.NET做了一个JSP/Struts可视化开发工具。也就是现在的JSP/Struts可视化开发工具JSPStudio(当然后,一定也有人想把JSPStudio丢到垃圾捅去)。开发JSP、Struts,最好用JSP、Struts 专门开发工具例如--JSPStudio:
    1、Struts类函数都带“打.提示”,只要选择就可输入函数,对不熟悉StrutsAPI的人来说是最好不过的了。
    2、可视化Struts标签的web设计界面,这是JCreator、eclipse、JB没有的功能。在JSPStudio中设计Struts的JSP页面,就象在Microsoft FrontPage中设计普通网页一样所见即所得,一样方便。
    3、Struts完全中文显示解决方案:  (1)JSP页面中文显示问题:
        新建JSP文件时,自己加入如下代码:
    <%@ page contentType="text/html;charset=GB2312" %>
    这样JSP页面上的中文就可以正常显示了。  (2)中文资源显示问题:
      在JSPStudio中,默认的中文资源文件名是“ApplicationResources_ch.properties”,用户先将中文资源定入文件“ApplicationResources.properties”
    然后选择工具条的“资源文件编码转换”键或选择“运行”菜单上的“资源文件编码转换”项,即可实现编码转换功能。  (3)表单和数据库中文显示问题:
      在JSPStudio中建立Struts项目时,自动加入了编码转换设置过滤器。  可见在JSPStudio中,不需编程人员编写任何代码,仅仅点击一个资源文件编码转换键即可完全解决Struts中文显示问题。
    4、Struts 数据库应用向导功能:
       在新版的JSPStudio中,通过“Struts数据库应用文件向导”可完全自动实现数据库应用。
    在向导中,只需输入文件名,通过手动加入数据库字段名或通过选择数据源自动添加数据库字段名,即可自动产生实体Bean,操作ADO(包括插入、删除、更新、查找功能)、输入JSP、JSP对应的ACtionForm、JSP对应的Action(例如打查找结果放入Bean中)、JSP输出(根据数据库自动产生输出表格)、自动配置XML文件等;
     在新版的JSPStudio中,用不到一分钟的时间,即可完成一个完整数据库表的查找和显示,不需编程人员编写任何代码。
    由于产生了操作ADO(包括插入、删除、更新、查找功能),只需编写很少的代码,即可实现完整的数据插入、删除、更新功能。另外,还有自动分页的功能。----------------
    总之:用JSPStudio开发Struts非常容易,运行速度也快(是用VC.NET写的),有点像VB.NET。在组件栏中除html、JSP外,还有Struts标签组件,例如插入一个<html:text>标签组件,在编辑页中看到的就是一个输入文本框,即可视化设计,对输入文本框点鼠标右键选择“属性”,可直接添加变量;对组件双击鼠标左键自动跳转到相应的Java文件中。利用文件向导,选择数据源后数据库应用所有代码都自动生成,并生成具有分页、记录添加、编辑、更新、删除的页和所有源代码,像ASP.NET吧?编辑java代码时,有打"."自动提示的功能,包括自定义的变量、项目中自定义的类、JDK类、Struts类等,像VC.NET中的有打"."自动提示吧?
    -------
    另外,JBuilder X太贵了。JSPStudio下载地址:
    ftp://210.36.64.79/kui/