jsp/servlet区别

 

简介:

JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

区别:

这里写图片描述

这里写图片描述

运行过程的区别: 
客户在第一次请求JSP时,JSP Engine先把JSP程序转换成servlet代码(JSP本质上是servlet),接着将他编译成类文件,以后每次对此类文件执行; 
访问servlet时,可以直接对其编译好的类文件执行。

使用规则的区别: 
要想使用servlet必须把它放在特定位置而且必须对其配置; 
jsp可以放在和html同样位置(webapps根目录下或者webapps根目录下的子目录下)而且不需要配置,可以直接使用。

程序组成的区别: 
在Html中内嵌java代码组成jsp文件; 
servlet是由纯java代码组成。

主要职能的区别: 
jsp主要负责页面效果展现 
servlet主要负责逻辑控制

其实jsp经过容器解释之后就是servlet.

只是我们自己写代码的时候尽量能让它们各司其职, 
jsp更注重前端显示, 
servlet更注重模型和业务逻辑。

jsp就是在html里面写java代码, 
servlet就是在java里面写html代码

不要写出万能的jsp或servlet来即可。

web.xml用来建立servlet与jsp的关系(需要放在WEB-INF内)

这里写图片描述

index.jsp:

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Expires" content="0">
<meta http-equiv="kiben" content="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
    <h1>搞个大事情?</h1>
    <form method="post" action="hello.do">
        <select name="test">
            <option value="yes">yes</option>
            <option value="no">no</option>
        </select> <br> <input type="text" name="firstname">

        <center>
            <input type="submit" value="提交看看结果">
        </center>
    </form>
</body>
</html>
posted @ 2018-08-02 15:01  panchanggui  阅读(321)  评论(0编辑  收藏  举报