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. Spring日记_01 之 Maven项目的创建和更新

    创建Maven项目: Maven是一个第三方工具用来 下载包的,将阿里云maven中的对应包的dependency 复制到maven项目的pom.xml文件中.就可以自动下载包(比如Spring-we ...

  2. 记录一个mysql的case when用法

    SELECT wle.*, CASE WHEN '2017-08-10 14:00:00' > wle.et THEN '回看' WHEN wle.st >= '2017-08-10 14 ...

  3. jstl标签比较格式化后的时间

    c:set 里面不支持任何标签,这样写不好讲格式化的值放到bdateVar里面 <c:set var="bdateVar" value="<fmt:forma ...

  4. js获取当前用户IP地址和城市

    引用下面的js: <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> 直接获取IP和城 ...

  5. 多个 gradle 文件夹 \.gradle\wrapper\dists\ 设置gradle不是每次都下载

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 设置gradle不是每次都下载 \.gradle\wrapper\dists\ ==== ...

  6. 牛客提高集训营6 C 树(树链剖分)

    题目链接 为了纪(zhuang)念(bi)写完这个树剖单独写一篇.感觉还好,也就6k嘛. 完整比赛题解:https://www.cnblogs.com/SovietPower/p/9826829.ht ...

  7. BZOJ.2834.回家的路(最短路Dijkstra 拆点)

    题目链接 对于相邻的.处在同在一行或一列的车站连边,然后用dis[x][0/1](或者拆点)分别表示之前是从横边还是竖边到x的,跑最短路. 我选择拆点.. //13028kb 604ms #inclu ...

  8. BZOJ.2724.[Violet 6]蒲公英(静态分块)

    题目链接 区间众数 强制在线 考虑什么样的数会成为众数 如果一个区间S1的众数为x,那么S1与新区间S2的并的众数只会是x或S2中的数 所以我们可以分块先预处理f[i][j]表示第i到第j块的众数 对 ...

  9. shell脚本中:1>&2 2>&1 &>filename重定向的含义和区别

    当初在shell中, 看到">&1"和">&2"始终不明白什么意思.经过在网上的搜索得以解惑.其实这是两种输出. 在 shell 程 ...

  10. 与TIME_WAIT相关的几个内核参数修改测试讨论结论

    以下来结论自tcpcopy & gryphon讨论群 经过试验测试得出,不保证肯定正确.   net.ipv4.tcp_tw_recycle net.ipv4.tcp_tw_reuse net ...