1.JavaBean

JavaBean将java代码单独封装成了一个处理某种业务逻辑的类,可以降低HTML与Java代码的耦合度,并且简化JSP页面,提高Java程序代码的重用性及灵活性。

JavaBean必须具有公共的无参构造方法,从而可以通过new关键字直接对其实例化。JavaBean中的属性应该设置成private类型,并且为其提供getter/setter方法。在Eclipse中,可以在代码区右击Source->generate getters and setter 进行自动生成。

以下是在JSP页面中使用JavaBean所使用的标签

2.Servlet

当客户端发送请求至服务器时,服务器可以将请求信息发送给Servlet,并让其建立服务器返回给客户端的响应。当启动Web服务器或客户端第一次请求服务时,可以自动装入Servlet,之后Servlet继续运行直到其他客户端发出请求。

Servlet Api的常用接口主要有:

  • Servlet接口
  • HttpServlet类
  • HttpServletRequest接口
  • HttpServletResponse接口

在写Servlet类时,一般完善doPost() 和doGet()方法

需要在web.xml文件中对Servlet进行配置

Servlet的应用

  1. 处理表单数据
  2. 页面转发:requestDispatcher.forward(HttpServlet request, HttpServletResponse response)以及requestDispatcher.include(HttpServlet request, HttpServletResponse response)方法
  3. 获得当前页面的绝对路径:ServletContext类的getRealPath()方法

3.Servlet过滤器

    Servlet过滤器是客户端与目标资源间的中间层组件,用于拦截客户端的请求与相应信息。当Web容器接收到一个客户端请求时,将判断此请求是否与过滤器对象相关联,如果相关联,则将这一请求交给过滤器进行处理。在处理过程中,过滤器可以对请求进行操作,如更改请求中的信息

数据。在过滤器处理完成之后,再将这一请求交给其他业务进行处理。当所有业务处理完成,需要对客户端进行响应时,容器又将响应交给过滤器进行处理,过滤器完成处理后将响应发送到客户端。

  Filter接口实现了三个方法,反映了Filter的生命周期。其中init()与destroy()方法只会被调用一次,分别在Web程序加载或者卸载的时候调用。而都doFilter()方法每次有客户端请求都会被调用一次,Filter的所有工作也集中在doFilter()方法上。 当一个Filter执行完之后,chain.doFilter(request,response)将request递交给FilterChain中的下一个Filter,如果所有的Filter都走完了则交给Servlet处理。

下面为判读密码和确认输入的密码是否相同:

 1 package com.study;
2
3 import java.io.IOException;
4
5 import javax.servlet.Filter;
6 import javax.servlet.FilterChain;
7 import javax.servlet.FilterConfig;
8 import javax.servlet.ServletException;
9 import javax.servlet.ServletRequest;
10 import javax.servlet.ServletResponse;
11 import javax.servlet.annotation.WebFilter;
12 import javax.servlet.http.HttpServletRequest;
13 import javax.servlet.http.HttpServletResponse;
14
15 /**
16 * Servlet Filter implementation class userFormFilter
17 */
18 @WebFilter("/userFormFilter")
19 public class userFormFilter implements Filter {
20
21 /**
22 * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
23 */
24 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
25 // TODO Auto-generated method stub
26 // place your code here
27 HttpServletRequest req=(HttpServletRequest)request;
28 if(req.getParameter("password").equals(req.getParameter("password1"))){
29 }else
30 {
31 System.out.println("no");
32 ((HttpServletResponse) response).sendRedirect("index.jsp");
33 }
34 // pass the request along the filter chain
35 chain.doFilter(request, response);
36 }
37
38 @Override
39 public void destroy() {
40 // TODO Auto-generated method stub
41
42 }
43
44 @Override
45 public void init(FilterConfig arg0) throws ServletException {
46 // TODO Auto-generated method stub
47 }
48
49 }

如果相同,则继续,不同则跳转到index.jsp页面

javaBean与Servlet学习的更多相关文章

  1. JSP&Servlet学习手册

    JSP&Servlet学习手册 沙琪玛 书 目录 JSP 指令... 3 书写方式... 3 指令列表... 3 JSP 内置对象... 3 内置对象特点... 3 常用内置对象... 3 o ...

  2. javaBean和Servlet有什么区别

    1.javabean无非就是里面有些set和get方法 2.servlet用来处理一些逻辑层 3.javabean.servlet.jsp分别对应M(odel).C(ontroller).V(iew) ...

  3. Servlet 学习笔记

    Servlet 运行在服务器上的 java 类: Servlet 容器为 javaWeb 应用提供运行时环境,负责管理 servlet 和 jsp 生命周期,以及管理他们的共享数据. 现在我们知道了 ...

  4. MVC-1(javabean+jsp+servlet+jdbc)

    这是一篇最初版本的mvc设计模式的demo.路要一步一步走,弄明白这其中的逻辑,对后面掌握ssh,ssm等框架大有裨益. 计算机系的同学们也要为毕设做准备了,希望可以帮你们迈出自己做毕设的第一步(微笑 ...

  5. Servlet学习:(三)Servlet3.0 上传文件

    转: Servlet学习:(三)Servlet3.0 上传文件 2018年08月03日 11:57:58 iDark_CSDN 阅读数:362   一.注意事项 客户端(浏览器) 表单的提交方法必须是 ...

  6. Servlet学习(九)——request

    request运行流程在Servlet学习(四)——response已介绍,不再赘述 1.通过抓包工具获取Http请求 因为request代表请求,所以我们可以通过该对象分别获得Http请求的请求行, ...

  7. # jsp及servlet学习笔记

    目录 jsp及servlet学习笔记 JSP(Java Server Page Java服务端网页) 指令和动作: servlet(小服务程序) jsp及servlet学习笔记 JSP(Java Se ...

  8. Servlet学习笔记(四)

    目录 Servlet学习笔记(四) 一.会话技术Cookie.session 1. 什么是会话技术? 2. 会话技术有什么用? 3. Cookie 3.1 什么是Cookie? 3.2 使用Cooki ...

  9. Servlet学习笔记(三)

    目录 Servlet学习笔记(三) 一.HTTP协议 1.请求:客户端发送欸服务器端的数据 2.响应:服务器端发送给客户端的数据 3.响应状态码 二.Response对象 1.Response设置响应 ...

随机推荐

  1. Python 任务队列 Celery

    一. celery 简介 Celery 是一个专注于实时处理和任务调度的分布式任务队列, 同时提供操作和维护分布式系统所需的工具.. 所谓任务就是消息, 消息中的有效载荷中包含要执行任务需要的全部数据 ...

  2. JS添加类似C# string.Format方法

    String.prototype.format=function()   {     if(arguments.length==0) return this;     for(var s=this, ...

  3. 搭建开源java博客并通过域名访问

    这个博客系统是王爵在GitHub上开源的,通过简单几步就可以部署成功. 前面几步可以参照如下几个链接: 1.https://www.qcloud.com/community/article/29008 ...

  4. win7休眠的开启与关闭方法

    从开始菜单中找到“附件→命令提示符”,右击选择“以管理员身份运行”,此时可能需要输入管理员密码或进行UAC确认,手工输入如下命令:powercfg -a,从这里可以清楚的看到,计算机是支持休眠的,只是 ...

  5. USACO The Castle

    首先看一下题目. The CastleIOI'94 - Day 1 In a stroke of luck almost beyond imagination, Farmer John was sen ...

  6. GridView七十二绝技-大全(收藏版)(转至别人博客)

    快速预览:GridView无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单DropDownList结合GridView和CheckBox结合鼠 ...

  7. angularJS 源码阅读之一:toDebugString

    简介: 这个函数返回调试字符串: number,boolean,string,null,undefined,都会转为字符串. function 中括号前面有空格的,会去除函数体,没空格的,会输出函数的 ...

  8. 第一章:pip 安装 和 卸载 django

    1. 在dos命令行中输入 pip 如下命令进行安装: 安装最新的版本的 Django 命令如下: pip install django 安装 指定版本的 Django 命令如下: pip insta ...

  9. 第一章:pip 安装 tar.gz 结尾的文件 和 .whl 结尾的文件

    1. 假如后缀中还有 .tar.gz 的文件通过 pip 命令进行安装步骤. .单击 .tar.gz结尾的文件,并且对文件进行解压,进入到解压目录中,通过python命令进行安装. 命令如下:在dos ...

  10. APP测试相关点归纳

    APP测试相关点归纳   1.1测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为一两周,根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前需确认项目排期. 1.2测试资源 ...