学习JSP,我们需要知道的是什么是JSP?JSP有什么特点?JSP与svelte有什么关系?
第一个概念:JSP是服务器端运行的一种脚本语言,这类似的语言还有CGI、ASP、PHP等。
CGI:采用单进程模式,每次请求服务器端的一个服务,都需要启动一个新的线程。所以当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,加重了服务器的负担,使服务器的执行效率变得越来越低下。
ASP:是微软所开发一种后台脚本语言,特点简单易用,其局限性在于只能在微软的服务器平台上良好运行,无法实现跨平台。
PHP:是目前的主流网站开发语言。PHP的源代码完全公开,可以在网上*下载。JSP提供许多数据库相连的函数,缺点是提供的数据库接口支持不统一。
JSP:在Servlet的技术上完成的,都是基于Java的。所以也有java语言的最大特点,即平台无关性,一次编写,随处运行。
第二个概念:JSP是由Sun公司倡导建立的一种动态网页技术标准。
1.动态内容模板
JSP是在传统的HTML文件中插入java程序段。在该程序段中可以写一些JDBC的代码访问数据库、也可以是发送E-Mail或是作为远端的EJB客户端去访问EJB服务端的代码,从而实现动态内容的更新。
2.使用定制的java代码扩展HTML
JSP本质是对一个标签库的动态更新,不限制HMTL,JSP生成的代码可以是HTML也可以是其他标签语言,例如各种形式的XML。
3.被编译成Servlets
JSP是一个简化的Servlet设计,在本质上是一个Servlet。在开发阶段,JSP作为一种文本脚本的具有模块化的脚本语言。在运行阶段被编译成为Servlet的格式,执行的生命周期与Servlet一样。
4.可将工作划分为内容制作和程序开发。
JSP是一种HTML或XML,可以用HTML或是XML开发工作来开发JSP。动态实现的部分可以用一些程序开发,这些程序是用JSP语言本身的标记,例如<%,%>,在里面增加一些内置对象的操作,增加一些指令、行为等等。扩充动态内容的部分。
JSP的工作原理:当Web服务器遇到访问JSP网页请求时,先执行其中的Java程序段,然后将执行结果连同JSP文件中HTML代码一起返回给客户端。
JSP的特点:
JSP的所有操作都是在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户端浏览器不支持Java语言,也可以访问JSP页面。因此用JSP开发的Web应用是跨平台的,不受操作系统的局限性。
JSP 与 Servlet 区别
相同点:两者都是在服务器端执行,返回给客户端的都是一个HTML文本。因此客户端只要有浏览器就能访问。
不同点:JSP是由Servlet发展而来的,但是JSP并没有增加什么功能,Servlet不能使用。JSP只是一个简化的Servlet设计,实现HTML语法中的JAVA扩张以<%,%>开头。主要目的是将表示逻辑从Servlet中分离处理;二从结构来说,JSP的设计更侧重表现层,也就是说JSP只存放与表现层有关的东西,即输出HTML页面的部分。而Servlet用来书写业务层更为方便。所以从结构上来说,JSP更多的体现在表示层,而Servlet体现在业务逻辑层。
JSP实现了把内容显示的逻辑和业务的逻辑分离开来,内容的逻辑由美工或是由维护界面的人员来开发,业务逻辑由后端,如与数据库相关或是EJB相关的一些业务的人去构造动态的业务程序。