博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSP 总结
阅读量:4514 次
发布时间:2019-06-08

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

第一天:

jsp(全称Java Server Pages)

优点:

  跨平台性、易维护性、易管理性等等

实际上JSP就是指在HTML中嵌入JAVA脚本语言,当用户通过浏览器请求访问Web应用时,使用JSP容器请求对JSP进行处理,然后将生成的页面返回给客户端浏览器进行显示。

工作原理

 

执行原理

如果没有发生改变则

 

 什么是URL?

URL(Uniform Resoure Locator)统一资源定位器,是用于完整地描述Internet上网页和其他资源的地址的一种表示方法,即网址。

URL的组成

 

tomcat7.0

lib     jar
bin    命令
webapps 应用程序
work   工作目录
temp   临时文件
conf    配置文件
logs    日志文件
tomcat与myeclipse的配置

window

  showview
    console
    db brower
    package explorer
    servers

 

JSP的基本语法

指令

  <%@ import="java.sql.*"%>

  page指令

  <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

      language:java唯一值,表示脚本中使用的编程语言

      contentType:设置了内容的类型和静态页面的编码 (告诉浏览器以什么编码显示)

      pageEncoding:页面本身的编码格式 (写页面时用的编码格式)
    include指令
        把目标页面的内容包含到当前页面,产生页面叠加以后的输出效果     //相当于将两个页面合并;编译时就包含进来
        <%@include file="foot.jsp"%>                   //可插入任意位置

    taglib指令

小脚本
  <% %> 写java代码等同在index.java的service方法里写代码

  小脚本规则:

    1、 你使用的脚本语言决定了脚本小程序的规则;
    2、 语句间以分号分隔;
    3、 可以使用默认的对象、import进的类、declaration声明的方法和对象以及useBean tag中声明的对象。

声明
  <%! %>写Java代码等于在index.java类里,service方法之外写代码

  声明规则:

  1、 JSP中声明的变量和方法对应于Servlet中的实例方法和实例变量。这些将被同时请求该页面的所有用户所共享;
  2、在使用变量或方法前须先定义(不是说声明变量的位置在页面中要处于使用变量的前面,而是指变量不声明不能使用);
  3、声明的变量或方法的作用域为当前页面或包含的页面;
  4、语句间以分号分隔。
表达式
  <%= %>等同<%out.println();%>

  表达式规则: 

    1、你使用的脚本语言决定了脚本小程序的规则;
    2、执行的顺序为从左到右;
    3、分号不能用于表达式。

注释
  jsp<%--内容--%> 不会被翻译
  html<!--内容--> 不会显示
  java注释:// /* */ 不会被编译

第二天:request && response

request是客户端发向服务器端的请求,response是服务器端对客户端的响应,两者发出对象与接收对象不同

区别

//login.jsp
帐号:
密码:
爱好:
运动
游泳
睡觉

  

//test.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%@ include file = "logins.jsp" %>//包含logins.jsp              My JSP 'test.jsp' starting page    	

  

//logins.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>              My JSP 'logins.jsp' starting page    	
<%      String user = request.getParameter("userName"); String pwd = request.getParameter("userPwd"); boolean flag = false; if(user.equals("111")&&pwd.equals("111")){ flag = true; session.setAttribute("userName", user); session.setAttribute("userPwd", pwd); session.setMaxInactiveInterval(2);//回话有效时间 单位是秒 } if(flag){ request.getRequestDispatcher("welcome.jsp").forward(request, response); }else{ response.sendRedirect("/demo/login.jsp"); } %>

  

//welcome.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>              My JSP 'welcome.jsp' starting page    	
<% String user = (String)session.getAttribute("userName"); String pwd = (String)session.getAttribute("userPwd"); if(user ==null||pwd==null){ response.sendRedirect("login.jsp");//密码帐号null则重定向到login.jsp } %>

欢迎

  

 

转载于:https://www.cnblogs.com/HyjScorpion/p/7187313.html

你可能感兴趣的文章
个人github链接及git学习心得总结
查看>>
c++ 计算器 带括号 代码实现
查看>>
objective -c初写
查看>>
C#中如何设置窗体的默认按钮和取消按钮
查看>>
[Swift]LeetCode276. 粉刷栅栏 $ Paint Fence
查看>>
[Swift]LeetCode351. 安卓解锁模式 $ Android Unlock Patterns
查看>>
break语句和continue语句
查看>>
java代码中添加log4j日志
查看>>
Java学习不走弯路教程(19 对于Service的自动注入)
查看>>
[CSS3] :empty Selector
查看>>
webpack4 入门(二)
查看>>
vim配置成c++IDE
查看>>
利用node搭建本地服务器
查看>>
python pickle命令执行与marshal 任意代码执行
查看>>
Elasticsearch 2.3 java api
查看>>
golang写入csv
查看>>
基础2
查看>>
java基础篇---网络编程(UDP程序设计)
查看>>
Kafka Producer相关代码分析【转】
查看>>
LeetCode 121. Best Time to Buy and Sell Stock
查看>>