《Head First Servlets & JSP》-1-前言
《Head First Servlets & JSP》(中文版) BB,KS & BB著, 苏钰函,林剑译,中国电力出版社
数据交互
Web浏览器和Web服务器:通过Http协议交互HTML数据。
到底什么是MIME类型
对一个Http响应:
Content-Type(内容类型)响应首部的值称为MIME类型。
MIME类型告诉浏览器要接收的数据是什么类型,这样浏览器才能知道如何显示这些数据。
MIME类型值与HTTP请求“Accept”首部中所列的值相关。如下图一个请求和一个响应首部信息:
Web服务器自己不做的两件事
- 动态内容
Web服务器应用只提供静态页面,需要“辅助程序”提供动态页面内容。Servlet就是这样的一个“辅助应用”。 - 保存数据
用户发送来数据,需要保存到一个文件或数据库中,为此需要一个应用,Web服务器只负责找到那个应用并把数据传给它。
JSP的作用
第一个Servlet程序中,HTML标签写在JAVA代码中了,并且是作为String直接量写入的,引号和其他的语法会是一种灾难。
那么,如果反过来,在HTML中写Java代码呢?——JSP,会相对好一些。更好的是,在新的JSP规范中,页面设计人员应该尽可能少地在JSP中放入Java代码甚至根本不放,而是放一些调用具体Java方法的标记——JSP语法。
附件
- 要点
- 第一个Servlet程序Ch1Servlet.java
publicclassCh1ServletextendsHttpServlet{
publicvoid doGet(HttpServletRequest request,
HttpServletResponse response)throwsIOException{
PrintWriterout=response.getWriter();
java.util.Date today =new java.util.Date();
out.println("<html>"+
"<body>"+
"<h1 align=center>Chapter1 Servlet</h1>"+
"<br/>"+today+"</body>"+"</html>");
}
}
《Head First Servlets & JSP》-1-前言的更多相关文章
- Head First Servlets & JSP 学习笔记 第十一章 —— Web应用部署
jar:java archive(java归档) war:web archive(web归档) war文件只是Web应用结构的一个快照,采用了一种更可移植的压缩形式(它实际上就是一个jar文件).建立 ...
- Head First Servlets & JSP 学习笔记 第九章 —— 使用JSTL
JSTL1.1 不是JSP2.0规范的一部分!你能访问Servlet和JSP API 不意味着你能访问JSTL! 使用JSTL之前,需要将两个文件("jstl.jar" 和 &qu ...
- Head First Servlets & JSP 学习笔记 第七章 —— 作为JSP
<%@ …… %> 这是指令 <%@ page ……import="java.util.Date" %> 这是page指令,import是page指令的一个 ...
- Head First Servlets & JSP 学习笔记 第五章 —— 作为Web应用
初始化参数:(init-param) 初始化参数写在web.xml文件中:(写在<servlet>标签内部) <servlet> <servlet-name>Bee ...
- Head First Servlets & JSP 学习笔记 第三章 —— MVC迷你教程
临渊羡鱼,不如退而结网!是时候动手搞事情了! 我们的四大步骤: ①分析用户的视图(也就是浏览器要显示的东西),以及高层体系结构: (这个就是所谓的前端吧?用JSP?JSP可以当成Html来用吧?高层体 ...
- Head First Servlets & JSP 学习笔记 第二章 —— Web应用体系结构
Servlet没有main()方法,所以Servlet受其他人控制,这个其他人就是容器!而Tomcat就是一种容器. 容器向Servlet提供Http请求和Http响应:容器来调用Servlet的do ...
- 《Head First Servlets & JSP》-11-Web应用部署
Web目录 WAR文件 WAR文件只是Web应用结构的一个快照,采用了一种更可移植的压缩形式. 建立WAR文件时,就是把整个Web应用结构(去掉Web应用上下文目录,就是把WEB-INF之上的一级目录 ...
- 《Head First Servlets & JSP》-9-使用JSTL
安装JSTL1.1的说明 JSTL1.1不是JSP2.0规范的一部分,能访问servlet和JSP API并不意味着能访问JSTL. 使用JSTL之前,需要将jstl.jar文件安装到Web应用的WE ...
- 《Head First Servlets & JSP》-10-定制标记开发
标记文件:很想include,但是比include更好 建立和使用标记文件的最简方法 取一个被包含文件(如Header.jsp),把它重命名为带有一个.tag扩展名(Header.tag): 把标记文 ...
随机推荐
- Eclipse中Maven配置操作
1.修改为自己的maven路径 2.对应的自己的仓库设置
- Rebranding(字母代换)
个人心得:题目意思就是每次给出可以互换的字母,如果每次命令的时候就执行的话一定会超时. 所以我就是将输入的字母从a到z的数目和路径依次保存,再建立一个book数组表示字母现在所指的字母 ,一开始就直接 ...
- FastAdmin 中的 formatter flag 分析
FastAdmin 中的 formatter flag 分析 效果 首先看看效果,这里的文字和颜色可以根据数据改变. 这是系统自带的分类管理. 代码 功能在 \public\assets\js\bac ...
- [转]Cache-Control max-age=0
Cache-Control max-age=0 Cache-Control no-cache — 强制每次请求直接发送给源服务器,而不经过本地缓存版本的校验.这对于需要确认认证应用很有用(可以和 ...
- bzoj 4712 洪水——动态DP
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4712 因为作为动态DP练习而找到,所以就用动态DP做了,也没管那种二分的方法. 感觉理解似乎 ...
- bzoj 2982 combination——lucas模板
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2982 明明是lucas定理裸题…… 非常需要注意C( )里 if ( n<m ) r ...
- 4、运行成功的Demo(PyCharm+Selenium)
1.打开PyCharm,新建一个python.file,输入代码“from selenium import webdriver”报错的解决方法 (1)PyCharm没有找到正确的python,在“Fi ...
- 使用Azure Site Recovery把VM批量搬迁到Azure
Azure Site Recovery可以提供如下服务: Site Recovery 服务:Site Recovery 可以在站点出现故障时,让应用在其他站点继续可用,从而确保业务连续性. Site ...
- java代码用continue输出奇数——————————
总结:continue用法是:在for,do-while.while循环中 并且,continue的意思是跳出循环的剩余部分,进行下一次循环.不是下一步循环 package com.b; import ...
- 数组可以直接转换为DataRow
string[] cc=new string[3]{...}; Dt.Rows.Add(cc);