博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java Web-----JSP与Servlet(一)
阅读量:4709 次
发布时间:2019-06-10

本文共 4656 字,大约阅读时间需要 15 分钟。

JSP (java服务器页面)

  JSP全名为Java Server Pages,中文名叫java页面,其根本是一个简化的设计,它[1]  是由公司倡导、许多公司参与一起建立的一种技术标准。JSP技术有点类似ASP技术,它是在传统的HTML(的子集)文件(*.htm,*.)中插入Java(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是的,既能在Linux下运行,也能在其他操作系统上运行。
  它实现了Html语法中的java扩展(以 <%, %>形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从中分离出来。
Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

servlet

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

创建第一个项目

  1. 选择Dynamic Web Project  , 模板版本选择2.5

 

  2. 项目的目录结构, META-INF不用理解 , WEB-INF下lib存放jar包与web.xml文件(必要的配置),服务器响应页面在WebRoot下,如图中index.jsp.

  3. tomcat添加项目,启动tomcat .

 

 

 

JSP基本语法

  例如上例中的index.jsp文件:  

1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <% 3 String path = request.getContextPath(); 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 5 %> 6  7  8  9   10     11     12     My JSP 'index.jsp' starting page13     
14
15
16
17
18
21 22 23 24 This is my JSP page.
25 26

 

  1.在开始的page中:

    language用来设置脚本语言,jsp中只有java一种

    Language : 用来定义要使用的脚本语言

    contentType:定义 JSP 字符的编码和页面响应的 MIME 类型

    pageEncoding:Jsp 页面的字符编码

    2.scriptlet 标签

    通过 scriptlet 标签我们可以在 Jsp 里嵌入 Java 代码;
 


 

      第一种:<%! %>

        我们可以在里面定义全局变量、方法、类;

    

1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <% 3 String path = request.getContextPath(); 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 5 %> 6  7  8  9   10     11     12     My JSP 'index.jsp' starting page13     
14
15
16
17
18
21 22 <%! 23 String str = "全局变量" ;24 %>25 <%! 26 public void func(){27 System.out.println("全局方法");28 }29 %>30 <%! 31 class My{32 private int a = 1; 33 public void f(){ 34 System.out.println("全局类");35 }36 }37 %>38 39 40 41 This is my JSP page.
42 43

    将上述jsp放入tomcat编译之后:

        

        在tomcat的work目录下寻找到jsp中java代码的编译文件

           

 


    第二种:<% %>
        我们可以在里面定义局部变量、编写语句;

        与第一种相差不多,具体可以尝试.


    第三种:<%= %>
        我们可以在里面输出一个变量或一个具体内容;

        相当于在页面中输出一段信息,如 <%=b%> 会输出变量b  

  

  3. Jsp 注释

<!-- -->         Html 注释 客户端(在浏览器查看网页源码时)可见

<%-- --%>   Jsp 注释 客户端(在浏览器查看网页源码时)不可见
//       java  单行注释
/*
*/       java 多行注释

 

 

  4. Jsp包含指令

 


 

    <%@ include file=”要包含的文件”%>

                

        在同级目录下创建MyHtml.html文件,内容只有:

1   2     My Html page
3

       在index.jsp中添加静态包含指令代码:

1   2     <%@ include file="MyHtml.html" %>3   

            启动 tomcat :

    


 

    <jsp:include page=”要包含的文件”>

           基本操作与上述相差不多,只不过 静态包含先把包含文件加入,再编译运行, 动态包含是先编译,在将包含文件插入 . 在开发中应多使用动态包含.

 

   5. Jsp 跳转指令

<jsp:forward page=" ">

<jsp:param value=”” name=”” />
</jsp:forward>
服务器内部跳转,可带参数;

例如 , 从form.jsp中带参数跳转至target.jsp 中

 

              form.jsp :

1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <% 3 String path = request.getContextPath(); 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 5 %> 6  7  8  9   10     11     12     My JSP 'form.jsp' starting page13     14     
15
16
17
18
19
22 23 24 25 26
27
28
29 30

 

 

            target.jsp :

1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <% 3 String path = request.getContextPath(); 4 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 5 %> 6  7  8  9   10     11     12     My JSP 'target.jsp' starting page13     14     
15
16
17
18
19
22 23 24 25 26 get form jsp: <%=request.getParameter("forward") %>27 28

 

 

      启动tomcat ,访问 http://127.0.0.1:8000/HelloWorld/form.jsp      (HelloWorld是项目名称)

        

 

 


  

 

 

 

        

转载于:https://www.cnblogs.com/LexMoon/p/JspServlet1.html

你可能感兴趣的文章
iOS IM开发的一些开源、框架和教程等资料
查看>>
python 二维字典
查看>>
实验吧之【天下武功唯快不破】
查看>>
2019-3-25多线程的同步与互斥(互斥锁、条件变量、读写锁、自旋锁、信号量)...
查看>>
win7-64 mysql的安装
查看>>
dcm4chee 修改默认(0002,0013) ImplementationVersionName
查看>>
maven3在eclipse3.4.2中创建java web项目
查看>>
发布时间 sql语句
查看>>
黑马程序员 ExecuteReader执行查询
查看>>
记一些从数学和程序设计中体会到的思想
查看>>
题目1462:两船载物问题
查看>>
POJ 2378 Tree Cutting(树形DP,水)
查看>>
UVA 116 Unidirectional TSP (白书dp)
查看>>
第三方测速工具
查看>>
数据访问 投票习题
查看>>
cnblog!i'm coming!
查看>>
使用点符号代替溢出的文本
查看>>
fatal: remote origin already exists.
查看>>
LeetCode 242. Valid Anagram
查看>>
JSP表单提交乱码
查看>>