Java Web开发基础零星知识
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) + "\"><上一页</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开发基础零星知识的更多相关文章
- Java Web开发基础(3)-JSTL
在DRP项目中接触到了JSTL标签库,对我这样的比較懒的人来说,第一感觉就是"惊艳". JSTL标签库的使用.能够消除大量复杂.繁复的工作.工作量降低的不是一点半点.是降低了一大半 ...
- java Web开发基础(一)工程项目文档结构
2013年毕业后,在深圳工作开始是用.NET ASP.NET MVC做的项目,后来公司用java来做.于是就从.NET转java了.从.NET转java不是那么的难.今天刚好是清明节放假三天,整理了j ...
- Java Web开发基础(1)-Servlet
概述 Servlet技术是对webserver的扩展,要理解这个,可能先了解一下什么是Webserver以及它的功能,特别是它的不足是非常有帮助的,可參考:点击打开链接.另外.Servlet也是一个用 ...
- Java Web开发基础(2)-JSP
上一篇博我粗略的介绍了一下Servlet.粗略是由于博主也刚刚学习这部分的内容,还不是非常懂所以无法讲的非常精细.可是本着二八原则,我还是先继续学习.所以,这篇博客接着JSP的内容.由于.这两个内容关 ...
- java web开发基础实例(javabean+jsp+servlet+jdbc)
JavaBean:用于传递数据,拥有与数据相关的逻辑处理 JSP:从Model接收数据并生成HTML Servlet:接收HTTP请求并控制Model和View jdbc:用于配置环境 一.[建立数据 ...
- java web开发必备知识
从各种招聘网站的要求上筛选出了一些java开发的一些基本的要求,对照自身看看有哪些缺陷. java基础 既然是java web开发,java SE肯定要学好了. 多线程,IO,集合等,对队列,缓存,消 ...
- Spring MVC + Spring + Mybitis开发Java Web程序基础
Spring MVC + Spring + Mybitis是除了SSH外的另外一种常见的web框架组合. Java web开发和普通的Java应用程序开发是不太一样的,下面是一个Java web开发在 ...
- 个人的java web开发书单
首发至个人博客http://www.zidafone.com/blog/36 以下是对一些读过的书和一些买后随便翻了翻的书的个人感觉.都是java web开发的程序员可能接触的书,其他的如设计/手机开 ...
- 《Java Web开发实战》——Java工程师必备干货教材
一年一度毕业季,又到了简历.offer漫天飞,失望与希望并存的时节.在IT行业,高校毕业生求职时,面临的第一道门槛就是技能与经验的考验,但学校往往更注重学生的理论知识,忽略了对学生实践能力的培养,因而 ...
随机推荐
- Spring日记_01 之 Maven项目的创建和更新
创建Maven项目: Maven是一个第三方工具用来 下载包的,将阿里云maven中的对应包的dependency 复制到maven项目的pom.xml文件中.就可以自动下载包(比如Spring-we ...
- 记录一个mysql的case when用法
SELECT wle.*, CASE WHEN '2017-08-10 14:00:00' > wle.et THEN '回看' WHEN wle.st >= '2017-08-10 14 ...
- jstl标签比较格式化后的时间
c:set 里面不支持任何标签,这样写不好讲格式化的值放到bdateVar里面 <c:set var="bdateVar" value="<fmt:forma ...
- js获取当前用户IP地址和城市
引用下面的js: <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> 直接获取IP和城 ...
- 多个 gradle 文件夹 \.gradle\wrapper\dists\ 设置gradle不是每次都下载
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 设置gradle不是每次都下载 \.gradle\wrapper\dists\ ==== ...
- 牛客提高集训营6 C 树(树链剖分)
题目链接 为了纪(zhuang)念(bi)写完这个树剖单独写一篇.感觉还好,也就6k嘛. 完整比赛题解:https://www.cnblogs.com/SovietPower/p/9826829.ht ...
- BZOJ.2834.回家的路(最短路Dijkstra 拆点)
题目链接 对于相邻的.处在同在一行或一列的车站连边,然后用dis[x][0/1](或者拆点)分别表示之前是从横边还是竖边到x的,跑最短路. 我选择拆点.. //13028kb 604ms #inclu ...
- BZOJ.2724.[Violet 6]蒲公英(静态分块)
题目链接 区间众数 强制在线 考虑什么样的数会成为众数 如果一个区间S1的众数为x,那么S1与新区间S2的并的众数只会是x或S2中的数 所以我们可以分块先预处理f[i][j]表示第i到第j块的众数 对 ...
- shell脚本中:1>&2 2>&1 &>filename重定向的含义和区别
当初在shell中, 看到">&1"和">&2"始终不明白什么意思.经过在网上的搜索得以解惑.其实这是两种输出. 在 shell 程 ...
- 与TIME_WAIT相关的几个内核参数修改测试讨论结论
以下来结论自tcpcopy & gryphon讨论群 经过试验测试得出,不保证肯定正确. net.ipv4.tcp_tw_recycle net.ipv4.tcp_tw_reuse net ...