自学javaweb一直不知道一个servelt可以有多个功能!看了别人代码才知道这个可以有!

平时你建立servelt时候你会吧doget和dopost这两个勾上,要想实现多个功能,你不必要勾选doget和dopost方法只勾选service即可!此时你复写service方法就行!

你不写doget和dopost,写service  ,这个servelt被调用会先执行service  ,即使你同时写了post和get和service调用这个servelt也会先调用service方法!service不管何时就会被先调用!

下面是一个简单的例子(简单的过分)!!!!

就是一个登陆和注册用同一个servelt怎么实现?

大白话 意思就是jsp页面在写的时候传入一个值在servelt页面根据传入的值的不同调用不同的方法,selvelt 里面写所有你想写的方法!!!不清楚看代码!!!小例子别指望直接运行

先说jsp代码:

这里面有一些ajax代码,不用关注这些细节,意思就是登陆使用了ajax发送到servelt中的(当然只要你能传值过去就行,不管用什么),注册按钮使用了form表单提交,其实思路很简单就是这两个按钮被点击跳转页面时分别传入了一个让服务器知道调用哪个方法的参数,这个你随便定义你传1或2都行,传过去你要分的清楚。
<html>
<head>
<script type="text/javascript" src="${pageContext.request.contextPath}/scripts/jquery-3.3.1.js"></script>
<script type="text/javascript">
function tiJiao(){
var username = $("#username").val();//获取登录的名字
var password = $("#password").val();//获取登陆的密码
if(username == null || username.length == || password == null || password.length == ){
alert("填写不完整");//判断是不是账号密码为空!
return false;} var url="${pageContext.request.contextPath}/all";//这个地址是你要判断用户是否存在的后台
var args={"method":"login","username":username,"password":password,"time":new Date()};//这个参数是把编辑框里的内容传过去给后台了
$.post(url,args,function(data){$("#message").html(data);});//登录按钮被点击使用ajax传值到后台传值login
}
</script>
</head>
<body>
<form action="${pageContext.request.contextPath}/all?method=zhuce" method="post">//注册按钮被点击使用form表单提交传值zhuce
<div align="center"> 账号:<input type="text" id="username" name="username" style="width:200px; height:25px;" ><label id="message"></label></div><br>
<div align="center">密码:<input type="password" id="password" name="password" style="width:200px; height:25px;"></div>&nbsp;
<div align="center"><input type="button" value="登陆" onclick=" tiJiao()" style="width:70px; height:30px;" />
<input type="submit" value="注册" style="width:70px; height:30px;" />
</div>
</form>
</body>
</html>
servelt代码...................................................................................................................................................................................................

protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String method=request.getParameter("method");//得到传入的值下面根据传入的值执行不同的方法!!
System.out.println("method"+method);
if(method.equals("login"))
{
login(request, response);//执行login代码
}
else {
zhuce(request, response);//执行注册代码
} } private void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
//这里写有关登录的代码 } private void zhuce(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{ //这里写有关注册的代码
} }

怎么在一个servlet中实现多个功能 ?如何使一个Servlet处理多个请求?的更多相关文章

  1. Servlet中实现多个功能案例

    如何实现一个Servlet中的多个功能 前言:唉,打脸了,前脚刚说过要跟Servlet正式告别,后脚这不又来了,哈哈,总结出一点东西,纠结了一下还是做个分享吧,学习知识比面子重要,对吧,下回再也不约S ...

  2. Servlet中以HashMap存放临时变量,解决跳转新页面请求参数过多时浏览器地址栏超长

    具体使用方法如下: 1.在跳转之前将需要的参数串encodeURIComponent后作为参数value,UUID作为key一起POST到Servlet保存到HashMap中: 2.在Servlet发 ...

  3. Servlet中的Filter怎么使用?

    一.Filter简介 Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态 ...

  4. Servlet规范简介——web框架是如何注入到Servlet中的

    Servlet规范简介--web框架是如何注入到Servlet中的 引言 Web框架一般是通过一个Servlet提供统一的请求入口,将指定的资源映射到这个servlet,在这个servlet中进行框架 ...

  5. 关于Servlet中重定向

    public class Red1Servlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpSer ...

  6. servlet中的“/”代表当前项目,html中的“/”代表当前服务器

    servlet中重定向或请求转发的路径如果用“/”开头,代表当前项目下的路径,浏览器转发这条路径时会自动加上当前项目的路径前缀,如果这个路径不是以“/”开头,那么代表这个路径和当前所在servlet的 ...

  7. servlet中调用注入spring管理的dao(转)

    今天做大型仪器的的时候遇到的问题,转下为了以后能用 http://blog.csdn.net/jiyingying_up/article/details/44803585 我们用spring的依赖注入 ...

  8. Servlet中的一些注意事项

    servlet中的一些注意事项 1 什么是servlet? 1)Servlet是Sun公司制定的一套技术标准,包含与Web应用相关的一系列接口,是Web应用实现方式的宏观解决方案.而具体的Servle ...

  9. 对于Servlet、Servlet容器以及一个Servlet容器-Tomcat

    Servlet.Servlet容器等内容讲解 转载自http://blog.csdn.net/iAm333 对于Servlet.Servlet容器以及一个Servlet容器-Tomcat这些概念讲解的 ...

随机推荐

  1. 随机序列[SHOI2016](找规律+线段树)

    传送门 这道题的题意就是给你n个数让你在每个数之间插入+.-.*三种运算符中的一种,然后算出一个答案,再把答案加起来. 这题肯定是不能暴力的(题目都告诉你了由3n-1种结果).我们先从小的情况枚举找一 ...

  2. Spring mvc mybatis 查询结果缺少字段 解决方法

    参考:https://blog.csdn.net/xiaofeifei8421/article/details/43231815

  3. Zabbix在Docker中的应用和监控

    目录 Zabbix在Docker中的应用和监控 一.如何使Zabbix跑在Docker里 1.Docker基础环境配置 2.Docker-compose安装配置 3.启动zabbix server 4 ...

  4. 常用的HBase命令

    进入HBase shell:hbase shell 退出HBase shell:exit 查看HBase中所有的表:list 查看某个表中的记录总数:count 'table name' 查看某个表中 ...

  5. window进行缩放时左侧菜单高度随之变化

    window.onresize = function(){ $(); }

  6. NULL判斷符

    Null 传导运算符 编程实务中,如果读取对象内部的某个属性,往往需要判断一下该对象是否存在.比如,要读取message.body.user.firstName,安全的写法是写成下面这样. const ...

  7. 吴裕雄--天生自然JAVAIO操作学习笔记:File类

    import java.io.File ; import java.io.IOException ; public class FileDemo01{ public static void main( ...

  8. NO32 网络层次及OSI7层模型--TCP三次握手四次断开--子网划分

    网络层次: OIS网络模型概念:  OSI层次--应用层:  OSI层次--表示层:  OSI--会话层:  OSI--传输层: OSI--网络层: IP地址的概念说明: OSI数据链路层: OSI= ...

  9. HTML学习第五天

    HTML学习第五天 今天学HTML的实体.背景.布局 HTML布局的标签基本被淘汰frameset就被淘汰了,只有iframe依然存活,但是iframe可以被CSS给代替.下面就是一个练习的程序 &l ...

  10. DNS 访问 Service【转】

    在 Cluster 中,除了可以通过 Cluster IP 访问 Service,Kubernetes 还提供了更为方便的 DNS 访问. kubeadm 部署时会默认安装 kube-dns 组件. ...