JavaWeb学习

Servlet

  什么是Servlet

        (1) Servlet(Server Applet),全称Java Servlet。是用Java编写的服务器端程序,其
            主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语
            言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下
            ,人们将Servlet理解为后者。
		(2) Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请
		    求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
		(3) Servlet工作模式:
			① 客户端发送请求至服务器
			② 服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容并将其传给服务器
			③ 服务器将响应返回客户端

  创建第一个Servlet

	首先创建一个类实现Servlet接口,重写方法。或继承HttpServlet
		public class LoginServlet implements Servlet {
			@Override
			public void init(ServletConfig servletConfig) throws ServletException {
				//初始化方法
			}
			@Override
			public ServletConfig getServletConfig() {
				return null;
			}
			@Override
			public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
				//处理get/post请求的方法
			}
			@Override
			public String getServletInfo() {
				return null;
			}
			@Override
			public void destroy() {
				//销毁的方法
			}
		}
	然后在web.xml中配置文件
		<servlet>
			<servlet-name>自定义名称</servlet-name>
			<servlet-class>处理请求的类的完整路径</servlet-class>
		</servlet>
		<servlet-mapping><!-- mapping 表示映射 -->
			<servlet-name>自定义名称</servlet-name>
			<url-pattern>请求名</url-pattern>
		</servlet-mapping>

  Servlet生命周期

	当客户端首次发送第一次请求后,由容器(web服务器(tomcat))去解析请求, 根据请求找到对应的servlet,判断该类的对象是否存在,不存在则创建servlet实例,调取init()方法进行初始化操作,初始化完成后调取service()方法,由service()判断客户端的请求方式,如果是get,则执行doGet(),如果是post则执行doPost().处理方法完成后,作出相应结果给客户端,单次请求处理完毕。
	当用户发送第二次以后的请求时,会判断对象是否存在,但是不再执行init(),而直接执行service方法,调取doGet()/doPost()方法。
	当服务器关闭时调取destroy()方法进行销毁。
	
	四个过程:
		(1)实例化 --先创建servlet实例
		(2)初始化 --init()
		(3)处理请求 ---service()
		(4)服务终止 --destory()

JSP

  什么是JSP

	JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,
	它是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术
	有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)
	和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,
	既能在Linux下运行,也能在其他操作系统上运行。
	
	JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序
	的开发变得迅速和容易。
	
	*.html 静态页面(包含固定的页面内容)
	*.jsp 动态页面(页面数据可以动态更新,支持嵌套java代码和html代码)

    1.servlet展示信息的不方便,引入了JSP。
    2.JSP本质上也是一个servlet!!!!!!
    3.JSP就是在HTML页面中嵌入了java代码。


  JSP中嵌套Java代码

	page指令:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
	如果把一个数据存在request域中,取值操作如下:
		1.servlet展示信息的不方便,引入了JSP。
		2.JSP本质上也是一个servlet!!!!!!
		3.JSP就是在HTML页面中嵌入了java代码。
	声明标签 <%!变量或者方法声明%>
	表达式标签 <%= 表达式%> 在页面上显示的效果
	程序代码标签 <%java代码%> 页面上动态展示内容
		<body>
			<%! int i=10;%><!--成员变量-->
			<%! public void show(){}%> <!--成员方法-->
			<%=i%> <!--输出变量值-->
		</body>

  EL、JSTL

		  EL使用:
		    语法格式:${需要展示信息的名字}
		  JSTL使用:
		    在JSP页面中引入<%@ taglib prefix=”页面使用的名称” uri=”功能范围的路径”%>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值