1. Web的三个核心标准

万维网的核心标准有三个,分别是URL、HTTP和HTML。

URL(统一资源定位符,Universal Resource Locator),为描述Internet上的网页以及其他资源地址提供了一种标识方法。本URL包含模式(或称协议)、服务器名称(或IP地址)、路径和文件名。

绝对URL(absolute URL)显示文件的完整路径,这意味着绝对URL本身所在的位置与被引用的实际文件的位置无关;相对URL(relative URL)以包含URL本身的文件夹的位置为参考点,描述目标文件夹的位置。

使用Windows系统的主机不区分URL的大小写,而使用Unix或Linux系统的主机则区分大小写。

更多内容参考百度百科。

HTTP(超文本传输协议,HTTP-Hypertext transfer protocol), 是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。

更多内容参考百度百科,或者参考:HTTP协议概述

HTML(超文本标记语言,Hyper Markup language),“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。超文本标记语言的结构包括部分(Head)、和主体部分(Body),其中头部(head)提供关于网页的信息,主体(body)部分提供网页的具体内容。

更多内容参考百度百科,参考阅读:HTML常用标签(整理)HTML常用模板:用DIV实现网站首页、后台管理首页(整理)

2. C/S结构与B/S结构区别

局域网/广域网;重用性差/好;维护升级困难/简单;表现方式有限/丰富等等。

3. JSP及其相关技术

3.1 jspInit()/jspDestory()方法

可以在此方法中进行一些初始化工作;同样的jspDestory()方法供销毁时调用。

3.2 JSP注释

JSP注释以<%--开始,以--%>结束,中间包含的内容即为注释部分。示范:

<%--JSP注释内容--%>

由于在JSP标签<%%>中包含的是符合Java语法规则的Java代码,所以其中可以出现Java形式的注释。示范:

<%
// 业务代码开始
...... /**
* 登录成功后显示的列表处理
*/
......
%>

这样,就有三种方式为JSP注释。

3.3 JSP指令

page指令

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

include指令

注意:如果被插入的文件发生了变化,则包含这个文件的JSP文件需要被重新编译。就是:a.jsp引用了b.jsp,如果b.jsp发生了改变,a.jsp是感知不到的,需要重新编译a.jsp。

taglib指令

<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ taglib uri="/struts-dojo-tags" prefix="sx"%>

3.4 JSP脚本元素

JSP声明语句

<%!
// 每页显示多少条记录
private int rows = 10;
// 计算起始页,及实际分页值
private int[] caluPages(int curPage, long totalPages) {
......
}
%>

JSP表达式

<%=elapsedtime%>

JSP Scriptlets

<%
// 如果当前页大于1,则显示上一页
if(curPage > 1) {
out.println("<SPAN><A href=\"" + url + "&pg=" + (curPage-1) + "\">&lt;上一页</A></SPAN>");
}
%>

3.5 JSP动作元素

<jsp:include>

该动作元素提供了一种在JSP中包含页面的方式,即可以包含静态文件,也可以包含动态文件。用此种方式时,包含页面与被包含页面在逻辑上和语法上都是独立的,当被包含文件发生变化时,立刻生效。而前面提到的include指令则是将两个文件合并的,逻辑上语法上不独立(比如:不能命名相同名称的变量),被包含文件改变时,不能即时感知。

<jsp:forward>

是一种用于页面重定向的动作元素,它的作用是停止当前JSP页面的执行,而将客户端请求转交给另一个JSP页面。要注意转发与重定向的区别,转发(response.sendRedirect())是在服务器端进行的,不会引起客户端的二次请求,因此浏览器的地址不会发生任何变化,效率也比重定向高。

<jsp:param>

一种提供参数的附属动作元素,它以“名-值“对的形式为其它动作元素提供附加信息。

<jsp:plugin>

该动作元素可以将服务器端的JavaBean或Applet下载到客户端执行。

<jsp:userBean>

<jsp:setProperty>

<jsp:getProperty>

上面三个元素都是与JavaBean相关的。<jsp:userBean>动作元素用来装载一个将在JSP页面中使用的JavaBean。

3.6 JSP内置对象

request对象

response对象

out对象

session对象

application对象

pageContext对象

pageContext对象是一个比较特殊的对象,使用它不仅可以设置page范围内的属性,还可以设置其它范围内的属性。通过pageContext还可以访问本页面中所有的其它对象,如:request/response/out等对象。

page对象

config对象

exception对象

JSP/Servlet参考API地址:

http://tomcat.apache.org/tomcat-7.0-doc/servletapi/index.html

http://tomcat.apache.org/tomcat-7.0-doc/jspapi/index.html

Java Web开发基础零星知识的更多相关文章

  1. Java Web开发基础(3)-JSTL

    在DRP项目中接触到了JSTL标签库,对我这样的比較懒的人来说,第一感觉就是"惊艳". JSTL标签库的使用.能够消除大量复杂.繁复的工作.工作量降低的不是一点半点.是降低了一大半 ...

  2. java Web开发基础(一)工程项目文档结构

    2013年毕业后,在深圳工作开始是用.NET ASP.NET MVC做的项目,后来公司用java来做.于是就从.NET转java了.从.NET转java不是那么的难.今天刚好是清明节放假三天,整理了j ...

  3. Java Web开发基础(1)-Servlet

    概述 Servlet技术是对webserver的扩展,要理解这个,可能先了解一下什么是Webserver以及它的功能,特别是它的不足是非常有帮助的,可參考:点击打开链接.另外.Servlet也是一个用 ...

  4. Java Web开发基础(2)-JSP

    上一篇博我粗略的介绍了一下Servlet.粗略是由于博主也刚刚学习这部分的内容,还不是非常懂所以无法讲的非常精细.可是本着二八原则,我还是先继续学习.所以,这篇博客接着JSP的内容.由于.这两个内容关 ...

  5. java web开发基础实例(javabean+jsp+servlet+jdbc)

    JavaBean:用于传递数据,拥有与数据相关的逻辑处理 JSP:从Model接收数据并生成HTML Servlet:接收HTTP请求并控制Model和View jdbc:用于配置环境 一.[建立数据 ...

  6. java web开发必备知识

    从各种招聘网站的要求上筛选出了一些java开发的一些基本的要求,对照自身看看有哪些缺陷. java基础 既然是java web开发,java SE肯定要学好了. 多线程,IO,集合等,对队列,缓存,消 ...

  7. Spring MVC + Spring + Mybitis开发Java Web程序基础

    Spring MVC + Spring + Mybitis是除了SSH外的另外一种常见的web框架组合. Java web开发和普通的Java应用程序开发是不太一样的,下面是一个Java web开发在 ...

  8. 个人的java web开发书单

    首发至个人博客http://www.zidafone.com/blog/36 以下是对一些读过的书和一些买后随便翻了翻的书的个人感觉.都是java web开发的程序员可能接触的书,其他的如设计/手机开 ...

  9. 《Java Web开发实战》——Java工程师必备干货教材

    一年一度毕业季,又到了简历.offer漫天飞,失望与希望并存的时节.在IT行业,高校毕业生求职时,面临的第一道门槛就是技能与经验的考验,但学校往往更注重学生的理论知识,忽略了对学生实践能力的培养,因而 ...

随机推荐

  1. Codeforces 514E Darth Vader and Tree 矩阵快速幂

    Darth Vader and Tree 感觉是个很裸的矩阵快速幂, 搞个100 × 100 的矩阵, 直接转移就好啦. #include<bits/stdc++.h> #define L ...

  2. java导出数据EXCEL的工具类(以spring-webmvc-4.0.4jar为基础)

    1.本工具类继承于  spring-webmvc-4.0.4jar文件心中的一个类   AbstractExcelView 2.代码如下 package com.skjd.util; import j ...

  3. drupal的node.html.twig说明

    Drupal 8 根据分类不同定义自己的节点模板建议:http://www.thinkindrupal.com/node/5986 *可用变量: * - node:具有有限访问对象属性和方法的节点实体 ...

  4. hdu 1686 Oulipo 【KMP】(计算模式串匹配的次数——与已匹配的字串可以有交集)

    题目链接:https://vjudge.net/contest/220679#problem/B 题目大意: 输入一个T,表示有T组测试数据: 每组测试数据包括一个字符串W,T,T长度大于W小于100 ...

  5. Linux 运行Python文件,不因终端关闭而终止运行

    在Linux服务器运行py文件时,有时会因为终端窗口的关闭而结束py文件的执行,这时候使用下面的命令运行py文件: $nohup python filename.py & 命令解释: nohu ...

  6. 动态规划_线性dp

    https://www.cnblogs.com/31415926535x/p/10415694.html 线性dp是很基础的一种动态规划,,经典题和他的变种有很多,比如两个串的LCS,LIS,最大子序 ...

  7. 算法进阶面试题05——树形dp解决步骤、返回最大搜索二叉子树的大小、二叉树最远两节点的距离、晚会最大活跃度、手撕缓存结构LRU

    接着第四课的内容,加入部分第五课的内容,主要介绍树形dp和LRU 第一题: 给定一棵二叉树的头节点head,请返回最大搜索二叉子树的大小 二叉树的套路 统一处理逻辑:假设以每个节点为头的这棵树,他的最 ...

  8. BZOJ.1468.Tree(点分治)

    BZOJ1468 POJ1741 题意: 计算树上距离<=K的点对数 我们知道树上一条路径要么经过根节点,要么在同一棵子树中. 于是对一个点x我们可以这样统计: 计算出所有点到它的距离dep[] ...

  9. 洛谷.2234.[HNOI2002]营业额统计(Splay)

    题目链接 //模板吧 #include<cstdio> #include<cctype> #include<algorithm> using namespace s ...

  10. golang语言并发与并行——goroutine和channel的详细理解

    如果不是我对真正并行的线程的追求,就不会认识到Go有多么的迷人. Go语言从语言层面上就支持了并发,这与其他语言大不一样,不像以前我们要用Thread库 来新建线程,还要用线程安全的队列库来共享数据. ...