通过servlet封装不同应用之间的访问方法

应用背景:

随着客户应用环境的复杂度得提高和系统的扩展,不同应用之间的访问成为一个必然,原理上我们只需要在一个应用中调用另一个应用的链接即可,本篇文章是把调用的过程封装成了一个servlet,具有隐蔽性以及简化灵活性。

实现过程:

假设有A,B两个应用,要实现从A应用访问B应用,从A应用里通过一个servlet访问B应用里的某一个页面,该页面所展现的报表通过传参实现。

1:编写servlet,代码如下

package com.runqian;

 

import java.io.IOException;

import java.io.PrintWriter;

 

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

 

public class ServletRedirect extends HttpServlet {

   

    public ServletRedirect() {

       super();

    }

    public void destroy() {

       super.destroy(); // Just puts "destroy" string in log

       // Put your code here

    }

    public void doGet(HttpServletRequest request, HttpServletResponse response)

           throws ServletException, IOException {

       String raq=request.getParameter("raq");//获取参数

       response.sendRedirect("http://localhost:6001/demo/reportJsp/showReport.jsp?raq="+raq);//转跳

    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)

           throws ServletException, IOException {

    }

 

    public void init() throws ServletException {

    }

}

说明,代码简单,接受raq报表名称,当然访问B应用的url我们也可以通过参数传递,或者读取配置文件中的参数,例子中我们写死了B应用的rul。

2:将编译好的类文件放在A应用/web-inf/classes/test目录下。

3:在A应用/web-inf/下的web.xml里配置该servlet

<servlet>

         <servlet-name>ServletTest</servlet-name>

         <servlet-class>com.runqian. ServletRedirect </servlet-class>

 </servlet>

  <servlet-mapping>

         <servlet-name>ServletTest</servlet-name>

         <url-pattern>/ServletTest</url-pattern>

  </servlet-mapping>

4:将test.raq放在B应用的reportFiles文件夹下

5:启动A,B两个应用

6:比如A应用的地址为http://localhost:8080/report,B应用的地址为http://localhost:6001/demo

    那么可以可以通过以下的方式从A应用访问B应用的showReport.jsp,并在该页面展现test.raq

http://localhost:8080/report/ServletTest?raq=test.raq

效果展示:

 

总结:

通过servlet的封装,可以给终端用户一个良好的体验,并且可以通过配置文件或者参数的设置,动态传递url以及报表模板,使得我们的配置更加灵活

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值