`
zhuyuanxiang
  • 浏览: 130528 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

在Tomcat上开发Web应用如何保证兼容性

阅读更多

最近,协助伙伴将Tomcat上开发的应用向Apusic移植时发现了一个兼容性问题。
应用中代码为:HashMap params = (HashMap) request.getParameterMap();

而getParameterMap()在JCP规范中的定义为:
public java.util.Map getParameterMap()
Returns a java.util.Map of the parameters of this request. Request parameters are extra information sent with the request. For HTTP servlets, parameters are contained in the query string or posted form data.
请求的参数将返回一个java.util.Map。请求参数是请求发送的特别信息。对于HTTP servlets来说,参数包含在查询字符串或者发出的表单数据中。

Returns: an immutable java.util.Map containing parameter names as keys and parameter values as map values. The keys in the parameter map are of type String. The values in the parameter map are of type String array.
一个不可更改的java.util.Map包含参数名称(关键字)和参数值(映射值)。参数映射中的关键字是String类型。参数映射中的值是String数组类型。

可见规范中定义的返回值只是Map类型,而没有强制为HashMap。
Apusic在实现的时候也是Map作为返回值,而Tomcat返回时(参考org.apache.catalina.connector.Request.java)就是一个扩展自HashMap的ParameterMap类,因此开发时如何作为Map来用也不会出现问题,但是如果强制转换成HashMap就可能会与其他应用服务器产品无法正确兼容。

Tomcat是一款非常不错的开源Web服务器,许多公司在软件开发时都使用Tomcat作为Web容器,并且Tomcat也较好的对Servlet和JSP规范进行了支持,因此许多在Tomcat上开发的应用都可以向其他商业应用服务器上进行移植。

但是,Tomcat因为未去通过规范测试,因此可能会存在没有完全参考规范实现的部分,因此在开发中建议开发人员去www.jcp.org上去下载一个规范来进行参考,开发过程中尽可能按照规范给定的参数和返回值来使用系统的核心功能,从而避免在移植中出现不必要的问题。

附注:出现问题也不可怕,总有许多方式可以解决,就如上文出现的Map与HashMap的问题。其实网上有许多Map向HashMap转换的代码,可以增加个过渡参数将得到的Map进行一次转换就可以不修改其他业务代码了。

4
3
分享到:
评论

相关推荐

    如何在Tomcat 7.0服务器中添加Web应用及注意事项

    - **版本兼容性**:确保所使用的Tomcat版本与Web应用兼容。 - **安全性**:注意不要将敏感信息暴露在`web.xml`等配置文件中。 - **性能优化**:合理配置`server.xml`中的各项参数,如线程池大小、连接器配置等,以...

    Tomcat与Java Web开发技术详解(第二版)

    这本书详细介绍了如何使用Tomcat服务器进行Java Web应用程序的开发、部署和优化,是Java Web开发者的重要参考资料。 在书中,孙卫琴老师首先讲解了Java Web开发的基础知识,包括Servlet、JSP和JavaBean等核心技术。...

    用 Tomcat 和 Eclipse 开发 Web 应用程序手册

    ### 使用Tomcat与Eclipse开发Web应用程序的知识点详解 #### 一、引言 随着Web技术的不断发展,越来越多的企业和个人开发者开始使用各种工具和技术来构建Web应用。在众多的开发工具中,Eclipse以其强大的功能和灵活...

    tomcat5.5与jdk1.4兼容包

    标题中的“tomcat5.5与jdk1.4兼容包”指的是Apache Tomcat 5.5版本能够与Java Development Kit (JDK) 1.4版本兼容,这意味着用户可以在使用JDK 1.4的环境下顺利运行Tomcat 5.5的web应用程序。在Java Web开发领域,...

    tomcat6.0 适用与java web 程序的开发服务器

    将Tomcat 6.0与MyEclipse结合使用,开发者可以直接在IDE内调试和部署Web应用,大大提高了开发效率。在MyEclipse中配置Tomcat 6.0,通常需要指定Tomcat的安装路径,并在IDE的服务器视图中启动和管理。 5. **安全管理...

    web服务器tomcat7.0

    描述中提到的"tomcat 使用jsp开发web的web服务器,其使用性很好",这表明Tomcat是开发基于JSP技术的Web应用程序的理想选择,因为它是轻量级的,安装和配置相对简单,且在性能和稳定性上表现出色。Tomcat的易用性使得...

    web服务器tomcat6.0

    6. **多应用支持**:通过定义不同的Context,Tomcat 6.0可以在同一个服务器实例上托管多个独立的Web应用。 7. **兼容性**:除了与Java EE 5兼容,Tomcat 6.0还能够与其他开源Java框架如Struts、Spring、Hibernate等...

    tomcat5.5 java 开发 web 服务器

    标题中的“Tomcat5.5 Java开发Web服务器”是指基于Java技术的开源Web应用程序服务器Apache Tomcat的第5.5版本。Tomcat是Java Servlet和JavaServer Pages(JSP)技术的标准实现,允许开发者利用Java语言创建动态网页...

    web开发工具tomcat7下载

    总结来说,Apache Tomcat 7.0.26是一个强大的Web应用服务器,适用于开发和部署Java EE 6的Web应用,其跨平台兼容性和性能优化使其成为开发者的首选工具之一。通过下载并理解其内部结构,开发者可以更好地管理和利用...

    tomcat-5.5.27+admin Web应用程序(打包下载)

    总结来说,"tomcat-5.5.27+admin Web应用程序"是一个包含Tomcat服务器和管理工具的压缩包,适合初学者学习Java Web开发,也适用于需要旧版本Tomcat的项目。要使用它,只需解压、配置用户权限,然后通过Web界面或...

    兼容myeclipse10的tomcat7

    【标题】"兼容myeclipse10的tomcat7"所涉及的知识点主要集中在两个方面:MyEclipse集成开发环境和Tomcat应用服务器的兼容性问题。MyEclipse是一款强大的Java EE集成开发环境,它是Eclipse的扩展,提供了对Java、Web...

    tomcat-7.0-doc.zip Eclipse各版本兼容性强

    【标题】"Tomcat 7.0 文档与Eclipse版本兼容性" 【内容详解】 Tomcat 7.0 是一款广泛使用的开源Java Servlet容器,它实现了Java EE 6 Web Profile标准,为开发者提供了部署和运行Java Web应用程序的平台。这款...

    web服务器 tomcat6.0

    4. **配置与部署**:在Tomcat 6.0中,开发者可以将Web应用程序打包为WAR文件(Web Application Archive),然后将其放置在Tomcat的`webapps`目录下,服务器会自动解压并部署这个应用。配置主要通过`server.xml`、`...

    jsp程序设计开发web应用

    【jsp程序设计开发web应用】 在web开发领域,JavaServer Pages(JSP)技术是一种用于构建动态网页的应用程序开发标准,由Sun Microsystems(现已被Oracle公司收购)开发。JSP被广泛应用于创建交互式、数据驱动的Web...

    Vaadin-来自北欧的Web应用开发利器

    Vaadin兼容Java Servlet API 2.3和JSR-168 Portlet规范,可在多种应用服务器上运行,如Tomcat、WebLogic、WebSphere、JBoss、Jetty、Glassfish等,展现了极强的平台兼容性和灵活性。 综上所述,Vaadin不仅提供了...

    开发工具tomcat

    在标题中提到的“开发工具Tomcat”,主要指的是Tomcat作为开发和部署Java Web应用的环境。Tomcat6和Tomcat7是两个不同的版本。Tomcat6发布于2005年,支持Servlet 2.5和JSP 2.1规范;而Tomcat7则在2010年推出,升级到...

    JavaWeb开发工具Tomcat 6.0

    JavaWeb开发工具Tomcat 6.0是一款广泛使用的开源应用服务器,主要负责运行基于Java Servlet和JavaServer Pages(JSP)技术的Web应用程序。Tomcat是Apache软件基金会Jakarta项目的一部分,它以其轻量级、高效能和易用...

    将web应用从Tomcat5移植到Websphere6.doc

    本文旨在详细介绍如何将基于Tomcat5.0.28开发的Web应用顺利移植到IBM Websphere6平台上,从而确保应用能够在一个更加稳定且功能丰富的环境中运行。 #### 二、移植前的准备工作 1. **确认目标平台**:本案例中的...

    tomcat 7 网站开发工具

    它遵循Java Servlet和JSP规范,确保与这些标准兼容的应用程序可以在Tomcat上顺利运行。 2. **网站开发**:这涵盖了网站设计、规划、编码和测试的整个过程。使用Tomcat,开发者可以构建可扩展、安全且高性能的Web应用...

    Apache-tomcat-9.0.62,一个免费的,开放源代码的Web应用服务器

    1. **兼容性**:此版本支持最新的Servlet 4.0、JSP 2.3和EL 3.0规范,为开发者提供了更现代的API和功能。 2. **性能提升**:持续的性能优化使得Tomcat在处理请求时更加迅速,降低了内存占用,提升了整体响应时间。 3...

Global site tag (gtag.js) - Google Analytics