详解servlet调用的几种简单方式总结

 更新时间:2021年01月12日 11:11:02   作者:the NEON  
这篇文章主要介绍了详解servlet调用的几种简单方式总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

servlet调用的几种简单方式

这里总结的是我在学习web开发的过程中需要用到的几种比较常见的用于转发和调用servlet的方式,这些方式的使用率非常高。在网上总结了相关的方法,大多对于初学者不是特别的友好,自己总结了一下。

1.servlet直接转发到另一个servlet

我们在进行jsp页面点击按钮进行登录的时候,首先需要登录到进行登录检查的servlet,但是在下个jsp页面,我们需要那个页面通过servlet进行转发,所以需要从servlet直接跳转到另一个servlet,其实写法很简单,只要保证映射地址正确即可.

response.sendRedirect("xxxxx");

xxxx: 是你需要转发的servlet的映射地址

2.使用a标签跳转到servlet的两种情况

1.第一种情况

每一个功能对应一个servlet的时候,这时我们用标签直接调用servlet的时候,语法如下:

<a href="product?&cid=${cid}&page=${status.index}" rel="external nofollow" >${status.index}</a>

其中product是对应的servlet的映射地址,用?问好隔开,& + 参数名+ = + 参数值,参数值可以用el表达式去表示。

2.第二种情况

当我们把多个servlet进行合并的时候,对应的每一个servlet肯定都会有相应的描述的方法,这种情况下使用a标签进行servlet的调用语法如下:

<a href="product?method=productList&cid=${cid}&page=${status.index}" rel="external nofollow" >${status.index}</a>

其中product是对应的servlet的映射地址,中间使用?问好隔开,method+ = 方法 即 productList,后面的参数和参数名称和第一种情况的表示方式一样。

在这里插入图片描述

3.最简单的一种用表单调用

直接在表单的action中添加servlet的映射地址,同时表明该提交servlet的方法是get还是post,两种区别还是比较大的。

<form action="servlet" method="get">
  <input type="submit" value="test"> 
 </form>

4.通过脚本编写函数的方式调用servlet

首先我们先些一个按钮,即button,这里要特别主题该按钮需要放在表单里面才会有效果,即相当于一个提交的效果。

//这里为按钮添加了onclick的时间,并链接到一个函数上
<input type="button" value="button" "test();">

//这里是函数部分,用于跳转到需要使用的servlet上
function test()
{
 var f=document.forms[0];
 f.action="servlet"; //这里填写的是servlet的映射地址
 f.submit();
}

这里的本质是把button按钮赋予了submit的功能。

5. 通过ajax请求servlet

因为ajax的优点不仅在于可以在不转发servlet的情况下进行页面的更新

通过ajax实现请求:

function Test(id) { 
    $.ajax({ 
     type:"get", 
     url:"${pageContext.request.contextPath }/Servlet", 
     data:{"id":id} 
    }); 
   } 

这里的路径URL有固定的格式,后面跟的servlet是需要调用的servlet的映射地址

再举一个例子,也掌握一下ajax的具体用法

//以下是js中的ajax
 <script type="text/javascript">
 function ajaxFun(){
 $.ajax({
   type: "POST",      //传数据的方式
   url: "TestServlet",    //servlet地址
   data: $('#form').serialize(),  //传输的是form表单里面的数据
   success: function(result){   //传数据成功之后的操作 result是servlet传回来的数据 这个函数对result进行处理,让它显示在 输入框中,也就是回调一个函数,但是概念不同
   $("#result").val(result);   //根据id找到输入框 并且将result的值传进去
   }
  });
 }
 </script>
 
 //下面是html的代码和表单
 <div align="center"><form id="form">
 first:<input type="text" name="first" id="first">
 second:<input type="text" name="second" id="second">
 
 //这里给按钮添加了点击的事件
 <button type="button" "ajaxFun()">button</button> //提交按钮
 </form>
 	// 用来显示result的文本框
 	<input type="text" id="result">
 </div>

//上面的请求需要返回result 那么这个值由servlet去返回 部分代码如下
String first = request.getParameter("first");  //从页面获取数据first
String second = request.getParameter("second");  //从页面获取数据second 
String result=first+second;
System.out.println(result); //用于测试打印是否有数据;
out.println(result); //将数据传到前端,这步非常重要

到此这篇关于详解servlet调用的几种简单方式总结的文章就介绍到这了,更多相关servlet调用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java使用自定义注解+反射实现字典转换代码实例

    Java使用自定义注解+反射实现字典转换代码实例

    这篇文章主要介绍了Java使用自定义注解+反射实现字典转换代码实例,注解是一种能被添加到java代码中的元数据,类、方法、变量、参数和包都可以用注解来修饰,注解对于它所修饰的代码并没有直接的影响,需要的朋友可以参考下
    2023-09-09
  • Eureka源码阅读解析Server服务端启动流程实例

    Eureka源码阅读解析Server服务端启动流程实例

    这篇文章主要为大家介绍了Eureka源码阅读解析Server服务端启动流程实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • 使用SpringBoot+OkHttp+fastjson实现Github的OAuth第三方登录

    使用SpringBoot+OkHttp+fastjson实现Github的OAuth第三方登录

    这篇文章主要介绍了使用SpringBoot+OkHttp+fastjson实现Github的OAuth第三方登录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 聊聊如何在springboot中添加模版

    聊聊如何在springboot中添加模版

    本文,我们谈谈如何在 spring boot 中添加模版,因为有时候我们也是需要后端渲染的嘛,比如公司官网,文中有详细的代码示例供我们参考,需要的朋友可以参考下
    2023-08-08
  • springboot集成JWT实现身份认证(权鉴)的方法步骤

    springboot集成JWT实现身份认证(权鉴)的方法步骤

    本文主要介绍了springboot集成JWT实现身份认证(权鉴)的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Java 压缩图片并打包成ZIP文件的示例

    Java 压缩图片并打包成ZIP文件的示例

    这篇文章主要介绍了Java 压缩图片并打包成ZIP文件的示例,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2020-12-12
  • 微信公众号开发消息推送功能

    微信公众号开发消息推送功能

    微信公众号分为服务号、订阅号、企业号,订阅号可以个人申请,服务号和企业号要有企业资质才可以,这篇文章主要介绍了微信公众号开发消息推送功能,需要的朋友可以参考下
    2023-02-02
  • 聊聊SpringCloud和SpringCloudAlibaba的区别

    聊聊SpringCloud和SpringCloudAlibaba的区别

    这篇文章主要介绍了SpringCloud和SpringCloudAlibaba的区别,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Springboot利于第三方服务进行ip定位获取省份城市

    Springboot利于第三方服务进行ip定位获取省份城市

    本文主要介绍了Springboot利于第三方服务进行ip定位获取省份城市,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Spring容器刷新prepareRefresh第一步

    Spring容器刷新prepareRefresh第一步

    这篇文章主要为大家介绍了Spring容器刷新prepareRefresh第一步示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03

最新评论