javaweb学习总结doc.docx

上传人:b****5 文档编号:7696440 上传时间:2023-01-25 格式:DOCX 页数:11 大小:22.80KB
下载 相关 举报
javaweb学习总结doc.docx_第1页
第1页 / 共11页
javaweb学习总结doc.docx_第2页
第2页 / 共11页
javaweb学习总结doc.docx_第3页
第3页 / 共11页
javaweb学习总结doc.docx_第4页
第4页 / 共11页
javaweb学习总结doc.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

javaweb学习总结doc.docx

《javaweb学习总结doc.docx》由会员分享,可在线阅读,更多相关《javaweb学习总结doc.docx(11页珍藏版)》请在冰豆网上搜索。

javaweb学习总结doc.docx

javaweb学习总结doc

javaweb学习总结

篇一:

javaweb学习心得

学习心得

在写心得之前总结下中级部分学习的内容,我们的中级部分主要学习了html,css,javacript,xml,dtd/scheam,以及javaee中的jsp,servlet,过滤器,监听器,JSTL,EL,jquery,Ajax。

下面就各个模块进行总结:

在学习html时,我是对这个没太在意的,因为里面全部是标签,没有需要理解的内容,全部是属于识记的,所以在学习时相对轻松,对于html常用的标签都是非常清楚的form中的十一种类型,常用的有text,password,hidden,submit,button,radio,checkbox,等其他的标签如div,table,span,select都是重要的标签.

css的学习:

虽然说在标签中也可以定义样式,但是这么做看起来不是那么明智,我在学cSS时还是比较努力的,所有的样式效果都测试过,并且写了相应的案例,只是过了不到3个月就忘了一大半,很多时候都是查文档才能写出来的,虽然cSS对于我们来说不必要非常精通,但是我觉得掌握的东西越多,以后的工作就越轻松,所以在中级结束后也会去看看前面的笔记和案例。

Javascript:

js我认为是最重要的,甚至于超过servlet,jsp,在上课期间,讲的内容还是比较少的,就javascript中创建对象来说吧,应该只讲过3中方法,虽然在一般的情况下是用不上的,但是我觉得还是有必要学习的,这样有助于看懂别人写的框架,在javascript这部分学习中讲的最多的还是dom操作,不过我觉得用dom操作太繁琐了,写的代码太多,而且效率看起来也不高,后面就是讲的事件,事件也算是简单的,只是对触发的事件进行相应的响应。

除了这些就是javascript流程控制,对象一些基本语法,这些和java类似,所以在上课时没有讲得太多。

Xml:

ExtensiblemarkupLanguage可扩展标记语言。

它是由SGmL(StandardGerneralizedmarkuplanguage)发展而来的,允许开发者自定标签,可以将标签和内容有效的分离。

在XmL技术里,可以编写一个文档来约束XmL文档的书写规范,称之为XmL约束。

本文主要介绍dTd与Schema两种约束,在这里学习了dtd,scheama,定义XmL约束,这部分的学习是我感觉最累的一部分,dTd还算好,Scheama里面的内容,现在都忘了,没有任何记忆,只知道在XmL约束中有着两中方式,还好这些在刚开始工作时是用不上的,因此我也没有用很多时间来学习。

Servlet:

我觉得是比较简单的,可能是因为它是java代码,容易理解。

首先讲的是开发环境的配置,安装tomcat,了解tomcat下的目录,以及web工程下的目录。

后来是讲了servlet的访问方式,post和get的区别,处理中文乱码是servlet中一个重要的知识点,几乎每个项目都会遇到这个问题。

主要乱码有get,post乱码,是通过设置request或者response的编码方式来实现的。

Servlet间的跳转方式有重定向和转发,对于重定向和转发的区别,现在理解的很透彻了,重定向是不能获取request中参数,是客户端的两次请求,而转发是服务器内部跳转,不过,两种在设置过滤器的情况下,都要通过过滤器才能跳转。

Servlet的生命周期是笔试的必考题,其实这是很简单的,只需要理解,没必要死记硬背的,session算是重要的知识点,很多数据都是存储在内存中,如购物车,用户信息等,还可以对session设置生存时间。

说到session就必须说说四种会话跟踪技术,cookie,URL重写,表单域隐藏和session。

JSP:

JSP实际上和servlet是一样的,只不过两者侧重点不同,JSP的内置对象和作用域大致是一样的,JSP中还有动作,常用的有操作Javabean的动作,页面跳转的动作,以及包含的动作。

这里重点提到两种包含的区别。

在JSP还讲过jstl和EL表达式,都是基础的应用,不过写自定义的标签还是要有一定的java基础的,我开始不太理解标签的解析过程,后来看了几个例子,发现自定义的已不是那么难。

jquery:

jquery可以说是中级部分学的最好的,主要是它方便了,特别是选择器,而且避免了一些浏览器的差异,所以在学习jquery后,就再也不想用javascript来获取元素了。

不仅如此,jquery中封装的Ajax操作也是非常简单,不需要自己封装一个类,$.get和$.post能够省去很多麻烦,jquery的监听事件也是很简单,不需要在标签中添加对应事件,可以动态的绑定事件。

还有就是dom操作更是方便。

我在学习完Ajax,json后就发现,即使是没有JSP,也能做出一个动态页面出来,只是会存在效率问题。

总结:

虽然说这上面的知识大部分都掌握了,但是能否灵活运用才是重点,所以在今后的学习中多思考问题是否有多种解决方法。

篇二:

Javaweb学习总结

一、基本概念

1.1、wEb开发的相关知识

wEb,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。

Internet上供外界访问的web资源分为:

1.静态web资源(如html页面):

指web页面中供人们浏览的数据始终是不变。

2.动态web资源:

指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同。

静态web资源开发技术:

Html

常用动态web资源开发技术:

JSP/Servlet、ASP、PHP等

在Java中,动态web资源开发技术统称为Javaweb。

1.2、wEb应用程序

wEb应用程序指供浏览器访问的程序,通常也简称为web应用。

例如有a.html、b.html?

..多个web资源,这多个web资源用于对外提供服务,此时应把这多个web资源放在一个目录中,以组成一个web应用(或web应用程序)

一个web应用由多个静态web资源和动态web资源组成,如:

html、css、js文件,Jsp文件、java程序、支持jar包、配置文件等等。

web应用开发好后,若想供外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚似目录的映射

1.3、wEb发展史

wEb发展的两个阶段:

静态、动态

1.4、静态wEb

*htm、*html,这些是网页的后缀,如果现在在一个服务器上直接读取这些内容,那么意味着是把这些网页的内容通过网络服务器展现给用户。

整个静态wEb操作的过程图如下:

在静态wEb程序中,客户端使用wEb浏览器(IE、firefox等)经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我现在需要得到哪个页面,所有的请求交给wEb服务器,之后wEb服务器根据用户的需要,从文件系统(存放了所有静态页面的磁盘)取出内容。

之后通过wEb服务器返回给客户端,客户端接收到内容之后经过浏览器渲染解析,得到显示的效果。

静态wEb中存在以下几个缺点:

1、web页面中的内容无法动态更新,所有的用户每时每刻看见的内容和最终效果都是一样的。

为了可以让静态的wEb的显示更加好看,可以加入了JavaScript以完成一些页面上的显示特效,但是这些特效都是在客户端上借助于浏览器展现给用户的,所以在服务器上本身并没有任何的变化。

实现静态wEb客户端动态效果的手段:

?

?

JavaScriptVbScript

在实际的开发中JavaScript使用得最多。

2、静态wEb无法连接数据库,无法实现和用户的交互。

使用数据库保存数据是现在大多数系统的选择,因为数据库中可以方便地管理数据,增删改查操作可以使用标准的SqL语句完成。

1.5、动态wEb

所谓的动态不是指页面会动,主要的特性的是:

“wEb的页面展示效果因时因人而变”,而且动态wEb具有交互性,wEb的页面的内容可以动态更新。

整个动态wEb操作的过程图如下:

动态wEb中,程序依然使用客户端和服务端,客户端依然使用浏览器(IE、firefox等),通过网络(Network)连接到服务器上,使用HTTP协议发起请求(Request),现在的所有请求都先经过一个wEbServerPlugin(服务器插件)来处理,此插件用于区分是请求的是静态资源(*.htm或者是*.htm)还是动态资源。

如果wEbServerPlugin发现客户端请求的是静态资源(*.htm或者是*.htm),则将请求直接转交给wEb服务器,之后wEb服务器从文件系统中取出内容,发送回客户端浏览器进行解析执行。

如果wEbServerPlugin发现客户端请求的是动态资源(*.jsp、*.asp/*.aspx、*.php),则先将请求转交给wEbcontainer(wEb容器),在wEbcontainer中连接数据库,从数据库中取出数据等一系列操作后动态拼凑页面的展示内容,拼凑页面的展示内容后,把所有的展示内容交给wEb服务器,之后通过wEb服务器将内容发送回客户端浏览器进行解析执行。

1.6、动态wEb应用的实现手段

动态wEb现在的实现手段非常多,较为常见的有以下几种:

?

?

?

microsoftASP、ASP.NETPHPJAVAServlet/JSP

1、microsoftASP、ASP.NET

微软公司动态wEb开发是比较早的,而且最早在国内最流行的是ASP。

ASP就是在HTmL语言之中增加了Vb脚本,但是标准的开发应用应该是使用

ASP+com,但是实际情况来看,在开发ASP的时候基本上都在一个页面中写上成百上千的代码,页面代码极其混乱。

ASP本身有开发平台的限制:

windows+IIS+SqLServer/Access,ASP只能运行在windows操作系统上,ASP现在基本上已经淘汰,现在基本上都是使用ASP.NET进行开发,ASP.NET在性能有了很大的改善,而且开发迅速,但是依然受限于平台。

ASP.NET中主要是使用c#语言。

2.PHP

PHP开发速度很快,功能强大,跨平台(平台指的就是运行的操作系统),而且代码也简单。

3.Servlet/JSP

这是SUN公司(SUN现在已经被oracle公司收购)主推的b/S架构的实现语言,是基于JAVA语言发展起来的,因为JAVA语言足够简单,而且很干净。

Servlet/JSP技术的性能也是非常高的,不受平台的限制,各个平台基本上都可以使用。

而且在运行中是使用多线程的处理方式,所以性能非常高。

SUN公司最早推出的wEb技术推出的是Servlet程序,Servlet程序本身使用的时候有一些问题,所有的程序是采用JAVA代码+HTmL的方式编写的,即,要使用JAVA输出语句,一行一行地输出所有的HTmL代码,之后,SUN公司受到了ASP的启发,发展出了JSP(JavaServerPage),JSP某些代码的编写效果与ASP是非常相似的。

这样可以很方便地使一些ASP程序员转向JSP的学习,加大市场的竞争力度。

二、wEb服务器

2.1、wEb服务器简介

1、web服务器是指驻留于因特网上某种类型计算机的程序,是可以向发出请求的浏览器提供文档的程序。

当web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。

2、服务器是一种被动程序:

只有当Internet上运行在其他计算机中的浏览器发出请求时,服务器才会响应。

2.2、常见的web服务器介绍

1、webLogic

webLogic是美国bea公司出品的一个applicationserver。

bEAwebLogic是用于开发、集成、部署和管理大型分布式web应用、网络应用和数据库应用的Java应用服务器。

将Java的动态功能和JavaEnterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。

是目前应用最广泛的web服务器,支持J2EE规范,而且不断的完善以适应新的开发要求,启动界面如图

2、webSphere

webSphereApplicationServer是一种功能完善、开放的web应用程序服务器,是Ibm公司电子商务计划的核心部分,它是基于Java的应用环境,用于建立、部署和管理Internet和Intranetweb应用程序。

这一整套产品进行了扩展,以适应web应用程序服务器的需要,范围从简单到高级直到企业级。

启动界面如图:

篇三:

Javaweb学习总结——Session

一、Session简单介绍

在wEb开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:

一个浏览器独占一个session对象(默认情况下)。

因此,在需要保存用户数据时,服务器程序可以把用户数据写到用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。

二、Session和cookie的主要区别

?

?

?

cookie是把用户的数据写给用户的浏览器。

Session技术把用户的数据写到用户独占的session中。

Session对象由服务器创建,开发人员可以调用request对象的getSession方法得到

session对象。

三、session实现原理

3.1、服务器是如何实现一个session为一个用户浏览器服务的?

服务器创建session出来后,会把session的id号,以cookie的形式回写给客户机,这样,只要客户机的浏览器不关,再去访问服务器时,都会带着session的id号去,服务器发现客户机浏览器带sessionid过来了,就会使用内存中与之对应的session为之服务。

可以用如下的代码证明:

1packagexdp.gacl.session;

2

3importjava.io.IoException;

4importjavax.servlet.ServletException;

5importjavax.servlet.http.HttpServlet;

6importjavax.servlet.http.HttpServletRequest;

7importjavax.servlet.http.HttpServletResponse;

8importjavax.servlet.http.HttpSession;

9

10publicclassSessiondemo1extendsHttpServlet{

11

12publicvoiddoGet(HttpServletRequestrequest,

HttpServletResponseresponse)

13throwsServletException,IoException{

14

15response.setcharacterEncoding(

"UTf=8");

16response.setcontentType("text/html;charset=UTf-8");

17//使用request对象的getSession()获取session,如果session不存在则创建一个

18HttpSessionsession=request.getSession();

19//将数据存储到session中

20session.setAttribute("data","孤傲苍狼");

21//获取session的Id

22StringsessionId=session.getId();

23//判断session是不是新创建的

24if(session.isNew()){

25response.getwriter().print("session创建成功,session的id是:

"+sessionId);

26}else{

27response.getwriter().print("服务器已经存在该session了,session的id是:

"+sessionId);28

}

29

}

30

31publicvoiddoPost(HttpServletRequestrequest,

HttpServletResponseresponse)

32throwsServletException,IoException{

33doGet(request,response);

34}

35}

第一次访问时,服务器会创建一个新的sesion,并且把session的Id以cookie的形式发送给客户端浏览器,如下图所示:

点击刷新按钮,再次请求服务器,此时就可以看到浏览器再请求服务器时,会把存储到cookie中的session的Id一起传递到服务器端了,如下图所示:

我猜想request.getSession()方法内部新创建了Session之后一定是做了如下的处理

1//获取session的Id

2StringsessionId=session.getId();

3//将session的Id存储到名字为JSESSIoNId的cookie中

4cookiecookie=newcookie("JSESSIoNId",sessionId);

5//设置cookie的有效路径

6cookie.setPath(request.getcontextPath());

7response.addcookie(cookie);

四、浏览器禁用cookie后的session处理

4.1、IE8禁用cookie

工具->internet选项->隐私->设置->将滑轴拉到最顶上(阻止所有cookies)

4.2、解决方案:

URL重写

response.encodeRedirectURL(java.lang.Stringurl)用于对sendRedirect方法后的url地址进行重写。

response.encodeURL(java.lang.Stringurl)用于对表单action和超链接的url地址进行重写

4.3、范例:

禁用cookie后servlet共享Session中的数据IndexServlet

1packagexdp.gacl.session;

2

3importjava.io.IoException;

4importjava.io.Printwriter;

5importjava.util.LinkedHashmap;

6importjava.util.map;

7importjava.util.Set;

8importjavax.servlet.ServletException;

9importjavax.servlet.http.HttpServlet;

10importjavax.servlet.http.HttpServletRequest;

11importjavax.servlet.http.HttpServletResponse;

12

13//首页:

列出所有书

14publicclassIndexServletextendsHttpServlet{

15

16publicvoiddoGet(HttpServletRequestrequest,

HttpServletResponseresponse)

17throwsServletException,IoException{

18

19response.setcontentType("text/html;charset=UTf-8");20Printwriterout=response.getwriter();

21//创建Session

22request.getSession();

23out.write("本网站有如下书:


");

24Set>set=db.getAll().entrySet();25for(map.Entryme:

set){

26bookbook=me.getValue();

27Stringurl=request.getcontextPath()+

"/servlet/buyServlet?

id="+book.getId();

28//response.encodeURL(java.lang.Stringurl)用于对表单action和超链接的url地址进行重写

29url=response.encodeURL(url);//将超链接的url地址进行重写

30out.println(book.getName()+"购买
");

31}

32}

33

34publicvoiddoPost(HttpServletRequestrequest,

HttpServletResponseresponse)

35throwsServletException,IoException{

36doGet(request,response);

37}

38}

39

40

41/**

42*@authorgacl

43*模拟数据库

44*/

45classdb{

46privatestaticmapmap=new

LinkedHashmap();

47static{

48map.put("1",newbook("1","javaweb开发"));

49map.put("2",newbook("2","spring开发"));

50map.put("3",newbook("3","hibernate开发"));

51map.put("4",newbook("4","struts开发"));

52map.put("5",newbook("5","ajax开发"));

53}

54

55publicstaticmapgetAll(){

56returnmap;

57}

58}

59

60classbook{

61

62privateStringid;

63privateStringname;

64

65publicbook(){

66super();

67}

68publicbook(Stringid,Stringname){69super();

70this.id=id;

71this.name=name;

72}

73publicStringgetId(){

74returnid;

75}

76publicvoidsetId(Stringid){

77this.id=id;

78}

79

public

StringgetName(){

80returnname;

81}

82publicvoidsetName(Stringname){

83this.name=name;

84}

85}

buyServlet

1packagexdp.gacl.session;

2

3importjava.io.IoException;

4importjava.util.ArrayList;

5importjava.util.List;

6importjavax.servlet.ServletException;

7importjavax.servlet.http.HttpServlet;

8importjavax.servlet.http.HttpServletRequest;9importj

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1