JAVA WEB 开发学习总结

           最近因工作的需要学习JAVA WEB开发,公司的开发架构整体为传统的多层体系,只不过在表现层采用XMLC技术实现了页面脚本代码与JSP代码的完全分离,控制层采用ActionServlet/ActionForm,业务逻辑层和数据持久层采用JAVA Bean和DAO。 同时要特别感谢我的同事们在我的学习过程中对我的指导,使我少走了许多弯路和少了许多迷茫。

        1.   给静态页面中需要动态显示数据的标签增加id属性和修改需要给Form提交的元素的Name属性,这个id在显示数据时需要用到。编译静态页面生成JAVA文件。

        2.编写DAO层代码实现业务逻辑层需要的方法。

        3. 编写业务逻辑层代码实现具体的业务功能,生成接口和对应的API。 

        4.编写ActionForm,ActionForm对象相当于是静态页面中Form的一个JAVA模型,所有数据对象的命名必须与静态页面Form表单中元素的Name属性一致。

         如果通过ActionForm中的GetXXX方法没有取到页面元素的值,则检查页面元素是否有Name属性值且是否与Form中数据对象的命名一致。

        5.编写ActionServlct,ActionServlet调用业务逻辑层的接口,实现具体的业务功能。同时需要根据业务逻辑接口返回结果决定页面下一步的转向。此处涉及到ActionMapping、ActionErrors等对象和struts-config.配置文件。

        如果页面提交时提示找不到ActionSerlet,则很大的可能就是struts-config配置文件中的对应action的 Path属性设置和页面Form的Action属性设置不一致。还有就是WEB-INF/lib目录下所必须的包不全。如果Action中需要Form中数据的话,在配置struts-config 配置文件的时候同时需要配置<form-beans>和<action-mapping>两段。action-mapping中action中name中的值,必须在form-beans中的form中存在。

  <form-beans>
    <form-bean name="deleteEnterpriseForm" type="com.guanda.unicom.web.admin.DeleteEnterpriseForm" />
  </form-beans>

  <action-mappings>
    <action name="deleteEnterpriseForm" type="com.guanda.unicom.web.admin.DeleteEnterpriseAction" validate="true"   input="/error.jsp" scope="request" path="/deleteEnterpriseAction">
  <forward name="success" path="/back/product/enterpriseInfoList.jsp" redirect="true" />  <!--成功后转向页面-->
    </action>

  </action-mappings>
       同时struts1.1支持多个struts配置文件,只要在web.xml 文件中增加上每一个配置文件,之间用半角的逗号隔开即可,只要就可以解决分模块开发时多人修改同一文件时带来的冲突。

    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/strutsluo-config.xml,/WEB-INF/strutsljq-config.xml,/WEB-INF/strutslqd-config.xml</param-value>
    </init-param>

在错误页面中根据资源文件动态加载错误描述信息时,报如下错误异常: javax.servlet.jsp.JspException: Cannot find message resources under key org.apache.struts.action.MESSAGE,最后发现是我的struts-config.xml文件中少了一段,加上就好了。如果用的struts包是网上下载的,应该不会报这个错误。红色代码部分应该根据自己的实际包路径修改。

  <!-- ========== Message Resources Definitions =========================== -->

  <message-resources
    parameter="com.guanda.unicom.web.ApplicationResources"/>

  <message-resources
    parameter="com.guanda.unicom.web.ApplicationResources"
    key="alternate">
  </message-resources>

       6.配置:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值