您的位置:首页 > 编程语言 > Java开发

Java Web 学习笔记(part)

2012-07-05 23:34 363 查看
1.http是一个基于request / response模式的,无状态的协议。

比如,(发送一个请求)http://www.163.com ------>发送到服务器------->(响应)返回一个页面

2.浏览器/服务器 通讯过程

1.发起连接

------------------->

2.发送请求(request)

--------------------->

Browse 3.服务器响应请求(response) Server

<-----------------

4.服务器关闭连接

<--------------------

3.想要启动Tomcat,配置JAVA环境变量: CATALIINT_HOME ( tomcat的路径)

JAVA_HOME ( jdk 的路径)

4. Servlet是JAAVA服务器端编程,运行正在服务器上(Tomcat、Resin、Jetty、Weblogic、WebSphere、JBoss)

(这里用Tomcat)。

5.导出配置文件; Export----->General------>Preferences....

导入(记录配置信息,如JDK.....)

6. 配置一下:可以不用重新部署项目:

Tomcat 的conf目录--->server.xml 中 </Host>标签上面添加:

<Context path="/testWeb" docBase="F:\.metadata\WorkSpace\testWeb\WebRoot" reloadable="true"/>

path:上下文的路径,和访问时 localhost:8080/后面的地址一致。(逻辑路径)

docBase: 当前的文件所在硬盘的位置。(物理路径)

reloadable:true表示修改过...自动启动服务器...

7.Web.xml (deployment descriptor)部署描述符

8. 第一个Servlet程序: Hello World. 修改web.xml

9.我们可以将Servlet看作是嵌套类HTML代码的JAVA类; 可以将JSP看作是嵌套类Java代码的HTML页面。

10. Login.jsp页面

userName: |____________|

userName: |____________| ----------> LoginServlet处理(输出username:XXXX password:XXXXX)

11. Get/Post方法之间的差别:

1).浏览器地址栏呈现的结果不同(表象);

2).真正的原因在于向服务区端发送请求时的形式是不同的;

3).get 的请求格式: GET /testWeb/LoginServlet/username=hello&world=world HTTP/1.1

post 的请求格式:POST /testWeb/LoginSErvlet HTTP/1.1

12.通过浏览器进行文件上传时一定要使用Post方式而绝不能使用Get方式。

13. 客户端/服务器/Servlet/JSP之间的关系:

浏览器(客户端) -----------> 服务器(Tomcat) ---------> Servlet

<-----------

JSP(JavaServer Pages)深入学习 (April 17,2012)

14. 1).所有的程序操作都是在服务器端执行。网络上传给客户端的仅是得到的结果。

2).Servlet 简化设计,逻辑和界面设计分开,开发更方便。

15. JSP执行过程

(servlet)

|

request jsp解析器 | servlet分析器

------------------ ----------> *.jsp ---------->*.java ---------------->
*.class

|

| (执行)

<-----------------------------------------------------------------------------------------

response

( Jsp能实现的,Servlet一定能实现,可逆。)

16. JSP语法分为3种类型:

。编译器指令.(如<%@ page import="java.io.*%> ) <!--XX--> <@--XX-->

。脚本语法.----------------------------------------------------------------> HTML注释 、 隐藏注释、声明、表达式、脚本段

。动作语法. (如 <jsp:forward>,<jsc:include>)

17.JSP声明格式: <%!int a=3;%>

脚本段格式<% int b=3; %>

当服务器将JSP转换为Servlet时,会将JSP中的声明转换为类的成员变量,而将脚本端转换为方法中的局部变量,Servlet是单实例的,

这样成员变量的值就只有一个,每个用户都会访问到它,而脚本段中的值则是局部变量,每个用户访问的时候各有一份,互不影响。

18. 包含指令include :向当前页中插入一个静态文件的内容。

语法:<%@ include file="relativeURL" %> 或 <%@ include file="相对位置" %>

19. page指令用于定义JSP文件中的全局属性。

(无论把<%@ Page%>指令放到JSP文件放到哪个地方,其作用范围都是整个JSP页面。)

20. taglib指令

21. <jsp:forward> 指令用于转向页面,在该指令后面的代码都没有机会执行了,因为页面的流程已经转向另一个页面了。

22. JSP内置对象:

request 请求对象

session
会话对象

application 应用程序对象

response 响应对象

pageContext 页面上下文对象

out 输出对象

config
配置对象

page 页面对象

exception
异常对象

23. session.setAttribute(String ,Object);

session.getAttribute();

可以理解为浏览器没关,session一直都在,关了浏览器session销毁。

24. getAttribute:以对象的形式返回特定名称的属性值。

(如果所给名称的属性不存在返回空值...)

25. Request 的setAttribute与getAttribute方法一般都是成对出现的,首先通过setAttribute方法设置属性和属性值, 然后通过getAttribute方法根据属性

获取到与该属性对应的对象值(获取到之后一般都要进行向下类型转换,将属性值转换为真正的对象。)

setAttribute和getAttribute都是在服务器端内部执行的,客户端不知道服务器是否执行过这两个方法。

26. Request 的 getParameter方法的作用是获取到客户端通过表单或者URL请求参数所发送过来的参数。是客户端与服务器端的交互,

服务器端要想获取到客户端发送过来的数据,就需要使用getParameter方法来获取。没有与getParameter 对应的setPearameter方法。

27. request对象内数据的存活范围就是在request对象存活范围内,当客户端向服务器发送一个请求,服务器向客户端返回一个响应后,该对象就被销毁了;

之后在想服务器发送新的请求时,服务器会创建新的 request对象,该request对象与之前的request对象没有任何关系,因此也无法获得之前的request

对象中存放发任何数据。

28. session对象内的数据存活范围也就是session对象存活的范围(【只要浏览器不关闭,session对象就会一直存在!】)

因此在同一个浏览器窗口中,无论想服务器端发送多少个请求,session对象只有一个。

(part 1)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: