java读书心得Word下载.docx

上传人:b****8 文档编号:22620276 上传时间:2023-02-04 格式:DOCX 页数:50 大小:46.91KB
下载 相关 举报
java读书心得Word下载.docx_第1页
第1页 / 共50页
java读书心得Word下载.docx_第2页
第2页 / 共50页
java读书心得Word下载.docx_第3页
第3页 / 共50页
java读书心得Word下载.docx_第4页
第4页 / 共50页
java读书心得Word下载.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

java读书心得Word下载.docx

《java读书心得Word下载.docx》由会员分享,可在线阅读,更多相关《java读书心得Word下载.docx(50页珍藏版)》请在冰豆网上搜索。

java读书心得Word下载.docx

下面这个例子看上去确实不错。

呵呵!

[java]viewplaincopypublicclassTestextendsThread{

publicstaticvoidmain{

Testte=;

}

publicstaticTestnewInstance{

returnnewTest;

java读书心得篇2

最近我在慧桥上java的培训课,老师推荐了本不错的java教材《Thinkinjava》

看书要学会做笔记,才会有更大收获,每天读30分钟,希望能坚持下去

今天重新翻了第一章

Introductiontoobject 面向对象主要围绕的五个要点

每个东西都可以看作一个对象,它储存了你所需要的必要信息,你可以通过特定的请求方式来向这个对象请求你所需要的东西

ges

一个程序由很多对象组成,你可以向对象发送消息来告诉他们做什么和怎样做

你可以根据已经存在的对象来创建新的对象,这应该就是对象的继承与重载吧

每个对象都是类的一个实例,都有自己的特定的需要其完成其功能的数据类型

一个特定类型的所有对象能够获取同样的消息

java读书心得篇3

注:

框架可以用word菜单中的“视图/文档结构图”看到

j2ee模式

valueobject用于把数据从某个对象/层传递到其他对象/层的任意java对象。

通常不包含任何业务方法。

也许设计有公共属性,或者提供可以获取属性值的get方法。

jsp

的基础知识

__

_____|directive

||--scripting

jsp-------||__action

|

|_____templatedata:

除jsp语法外,jsp引擎不能解读的东西

1)在jsp中使用的directive主要有三个:

a)page指令

b)include指令

c)taglib指令

在jsp的任何地方,以任何顺序,一个页面可以包含任意数量的page指令

2)scripting包括三种类型

a);

b);

c);

3)action

标准的动作类型有:

d);

e);

f);

g);

h);

日记日记300字http:

//

1.注释:

;

2.;

session可以不赋值,默认为true,如果session=”false”,则在jsp页面中,隐含的变量session就不能使用。

3.请求控制器结构

也被称之为jspmodel2architecture

这种途径涉及到使用一个servlet或一个jsp作为一个应用程序或一组页面的入口点。

为创建可维护的jsp系统,requestcontroller是最有用的方式之一。

不是jsp,而是java类才是放置控制逻辑的正确的地方。

请求控制器的命名模式为:

请求控制器类的命名模式为:

xxxrequestcontroller

中的javabean

jsp三种bean的类型

1)页面bean

2)会话bean

3)应用bean

大多数的系统会使用一个会话bean来保持状态,而对每一个页面使用一个页面bean来对复杂的数据进行表示。

页面bean是一个模型,而jsp是一个视图。

bean是信息的携带者,

而tag更适用于处理信息。

标记库包含一个标记库描述符和用于实现customtag的java类

在翻译阶段,jsp容器将使用tld来验证页面中的所有的tag是否都被正确的使用。

标记处理程序只是一个简单的适配器,而真正的逻辑是在另一个类中实现的,标记处理程序只是提供了一个供其他的可复用的类的jsp接口

servlet

一个servletconfig对象是servletcontainer在servletinitialization的时候传递给servlet的。

servletconfig包涵servletcontext和一些name/valuepair

servletcontext接口封装了web应用程序的上下文概念。

2.会话跟踪

1)session

当一个client请求多个servlets时,一个session可以被多个servlet共享。

通常情况下,如果serverdetect到browser支持cookie,那么url就不会重写。

2)cookie

在javaservlet中,如果你光cookiecookie=newcookie

那么当用户退出browser时,cookie会被删除掉,而不会被存储在客户端的硬盘上。

如果要存储cookie,需加一句

cookie是跟某一个server相关的,运行在同一个server上的servlet共享一个cookie.

3)urlrewriting

在使用urlrewriting来维护sessionid的时候,每一次http请求都需要encodeurl

典型的用在两个地方

1);

);

2));

默认的,每一个servletdefinitioninacontainer只有一个servletclass的实例。

只有实现了singlethreadmodel,container才会让servlet有多个实例。

servletspecification上建议,不要使用synchronized,而使用singlethreadmodel。

singlethreadmodel

保证servlet在同一时刻只处理一个客户的请求。

singlethreadmodel是耗费资源的,特别是当有大量的请求发送给servlet时,singlethreadmodel的作用是使包容器以同步时钟的方式调用service方法。

这等同于在servlet的service方法种使用synchronized.

singlethreadmodel一般使用在需要响应一个heavyrequest的时候,比如是一个需要和数据库打交道的连接。

2.在重载servlet地init方法后,一定要记得调用;

通过发送一个blankline表示它已经结束request

而theserver通过关闭thesocket来表示response已结束了。

4.一个httpservlet可以送三种东西给client

1)asinglestatuscode

2)anynumberofhttpheaders

3)aresponsebody

之间信息共享的一个最简单的方法就是

和get

post:

将form内各字段名称和内容放置在htmlheader内传送给server

get:

?

之后的查询字符串要使用urlencode,经过urlencode后,这个字符串不再带有空格,以后将在server上恢复所带有的空格。

get是web上最经常使用的一种请求方法,每个超链接都使用这种方法。

就是webapplicatin的deploymentdescriptor

作用有:

组织各类元素

设置initparam

设置安全性

用来把接收到的requestforwardprocessing到另一个servlet

要在一个response里包含另一个servlet的output时,也要用到requestdispatcher.

和jsp在同一个jvm中,可以通过serveltcontext的

setattribute

getattribute

removeattribute

来共享对象

10.利用得到的string存在字符集问题。

可以用strtitle=;

strtitle=newstring,”gb2312”);

如果你希望得到更大得兼容性

stringencoding=;

//确定applicationserver用什么编码来读取输入的。

xml

基础知识

1.一个xml文档可以分成两个基本部分:

首部

内容

名字空间规范中指定:

xml文档中的每一个元素都处在一个名字空间中;

如果没有指定的名字空间,缺省的名字空间就是和该元素相关联的名字空间。

“ifawell-formeddocumentusesadocumenttypedefinition,anditfollowsalltherulesofthedtd,thenitisalsoavaliddocument

“anelementisthestarttag,theendtag,andeverythinginbetween

5.标签实际上包含了“元素”和“属性”两部分。

用元素来描述有规律的数据。

用属性来描述系统数据。

如果你有一些数据要提供给某个应用程序,该数据就可能要用到一个元素。

如果该数据用于分类,或者用于告知应用程序如何处理某部分数据,或者该数据从来没有直接对客户程序公开,那么它就可能成为一种属性。

是character的缩写。

/|\

的基本概念

webservice是一种可以接收从internet或者intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。

这种技术允许网络上的所有系统进行交互。

随着技术的发展,一个web服务可以包含额外的指定功能并且可以在多个b2b应用中协作通讯。

web服务可以理解请求中上下文的关系,并且在每一个特定的情况下产生动态的结果。

这些服务会根据用户的身份,地点以及产生请求的原因来改变不同的处理,用以产生一个唯一的,定制的方案。

这种协作机制对那些只对最终结果有兴趣的用户来说,是完全透明的。

uddi

在用户能够调用web服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件。

所以,我们需要一种方法来发布我们的web服务。

uddi是一个主要针对web服务供应商和使用者的新项目。

uddi项目中的成员可以通过uddibusinessregistry来操作web服务的调用,ubr是一个全球性的服务。

web服务供应商可以在ubr中描述并且注册他们的服务。

用户可以在ubr中查找并定位那些他们需要的服务。

uddi是一种根据描述文档来引导系统查找相应服务的机制。

uddi包含标准的“白皮书”类型的商业查询方式,

“黄皮书”类型的局部查找,以及

“绿皮书”类型的服务类型查找。

uddi利用soap消息机制来发布,编辑,浏览以及查找注册信息。

它采用xml格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。

wsdl

对于商业用户来说,要找到一个自己需要使用的服务,他必须知道如何来调用。

wsdl规范是一个描述接口,语义以及web服务为了响应请求需要经常处理的工作的xml文档。

这将使简单地服务方便,快速地被描述和记录。

以下是一个wsdl的样例:

targetnamespace=“http:

//example/”

xmlns:

tns=“http:

xsd1=“http:

soap=“http:

///wsdl/soap/”

xmlns=“http:

///wsdl/”>

///XX/10/xmlschema”>

type=“tns:

stockquoteporttype”>

transport=“http:

///soap/http”/>

soapaction=“http:

//example/getlasttradeprice”/>

myfirstservice;

它包含了以下的关键信息:

消息的描述和格式定义可以通过xml文档中的;

和;

标记来传送。

标记中表示了消息传送机制。

标记指定了编码的规范。

标记中表示服务所处的位置。

wsdl在uddi中总是作为一个接口描述文档。

因为uddi是一个通用的用来注册wsdl规范的地方,uddi的规范并不限制任何类型或者格式描述文档。

这些文档可能是一个wsdl文档,或者是一个正规的包含导向文档的web页面,也可能只是一个包含联系信息的电子邮件地址。

现在java提供了一个javaapiforwsdl规范。

它提供了一套能快速处理wsdl文档的方法,并且不用直接对xml文档进行操作,它会比jaxp更方便,更快速。

soap

当商业用户通过uddi找到你的wsdl描述文档后,他通过可以simpleobjectaccessprotocol调用你建立的web服务中的一个或多个操作。

soap是xml文档形式的调用商业方法的规范,它可以支持不同的底层接口,象http或者smtp。

之所以使用xml是因为它的独立于编程语言,良好的可扩展性以及强大的工业支持。

之所以使用http是因为几乎所有的网络系统都可以用这种协议来通信,由于它是一种简单协议,所以可以与任何系统结合,还有一个原因就是它可以利用80端口来穿越过防火墙。

soap的强大是因为它简单。

soap是一种轻量级的,非常容易理解的技术,并且很容易实现。

它有工业支持,可以从各主要的电子商务平台供应商那里获得。

从技术角度来看,soap详细指明了如何响应不同的请求以及如何对参数编码。

一个soap封装了可选的头信息和正文,并且通常使用httppost方法来传送到一个http服务器,当然其他方法也是可以的,例如smtp。

soap同时支持消息传送和远程过程调用。

以下是一个soap请求。

post/stockquotehttp/

host:

content-type:

text/xml;

charset=“utf-8”

content-length:

nnnn

soapaction:

”some-uri”

soap-env=“http:

///soap/envelope/”

〖5〗〖6〗〖7〗〖8〗〖9〗〖10〗〖11〗〖12〗〖13〗〖14〗〖15〗

soap-env:

encodingstyle=“http:

///soap/encoding/”/>

5

sunw;

jaxr

为了支持uddi在java平台上的功能,javaapisforxmlregistries允许开发者来访问注册中心。

值得注意的是,jaxr并不是建立web服务必需的,你可以利用其他常用的xmlapis来直接集成这些协议。

jaxr是一个方便的api,它提供了javaapi来发布,查找以及编辑那些注册信息。

它的重点在于基于xml的b2b应用,复杂的地址本查找以及对xml消息订阅的支持等web服务。

它也可以用来访问其他类型的注册中心,象ebxml注册中心。

这些对web服务的注册信息进行的操作,可以使用当前的一些web服务工具来完成。

另外,当jaxp提供了一致并具有针对性的api来完成这些操作,这将使开发变得更加容易。

jax/rpc

为了使开发人员专注于建立象soap那样的基于xml的请求,jcp正在开发基于rpc的javaapi。

jax/rpc是用来发送和接收方法调用请求的,它基于xml协议,象soap,或者其他的象xmlp。

jax/rpc使你不用再关注这些协议的规范,使应用的开发更快速。

不久,开发人员就不用直接以xml表示方法调用了。

目前有很多第三方实现了soap,开发人员可以在不同的层次上调用soap,并选择使用哪一种。

将来,jax/rpc会取代这些apis并提供一个统一的接口来构造以及处理soaprpc请求。

在接收一个从商业伙伴那里过来的soap请求的时候,一个javaservlet用jax/rpc来接收这个基于xml的请求。

一旦接收到请求后,servlet会调用商务方法,并且把结果回复给商业伙伴。

jaxm

当从商业合作伙伴那里接收一个web服务的请求时,我们需要javaapi实现一个servlet来处理ebxml消息,就象我们用jax/rpc来处理soap请求一样。

javaapiforxmlmessaging是集成xml消息标准的规范。

这个api是用来推动xml消息处理的,它检测那些预定单的消息格式以及约束。

它控制了所有的消息封装机制,用一种直观的方式分割了消息中的信息,象路由信息,发货单。

这样,开发人员只要关注消息的有效负载,而不用去担心那些消息的重复处理。

目前的开发人员用jaxp来实现jaxm将要提供的功能,jaxm将会提供一套非常具有针对性的api来处理基于xml的消息传送。

这将大大简化开发人员的代码,并使它们具有统一的接口。

jaxm和jax/rpc的差别在于处理消息导向的中间件以及远程过程调用的不同。

jaxm注重于消息导向,而jax/rpc是用来完成远程过程调用的。

以下是图解。

请注意,在jaxm和jax/rpc技术成熟之前,开发人员还是依赖于第三方的soapapis,象apachesoap,idooxoap,以及glue。

当jaxm和jax/rpc正式发布后,它将为当前不同的soap和ebxml消息提供统一的接口。

就象jdbc位多种不同的数据库提供统一的接口。

jaxb

xml绑定技术可以把xml文档和java对象进行自由转换。

用jaxb,你可以在后台的ejb层,把xml文档转换成java对象。

同样你也可以把从ejb中取出的java对象转换成xml文档返回给用户。

jaxb接口提供了比sax和dom更高级的方法来处理xml文档。

它提供的特性可以在xml数据和java类之间互相映射,提供了一个简单的方法来转换xml数据。

它比逐个解析标记更简单。

建立weservice的步骤

在建立weservice的时候,有三个主要步骤:

1.建立客户端联接

为了允许applets,applications,商业合作伙伴,浏览器和pdas使用web服务。

2.实现web服务

包括工作流,数据传送,商业逻辑以及数据访问。

这些功能是隐藏在web服务后,并且为客户端工作的。

3.联接后台系统

这个系统可能包括一个或多个数据库,现存的企业信息系统,商业合作伙伴自己的系统或者web服务,以及在多个系统中共享的数据。

基于j2ee的web服务的核心构架:

rmi

是在java中使用remotemethodinvocation的最初的方法,rmi使用包

rmi-iiop是rmi的一个特殊版本,rmi-iiop可以和corba兼容,rmi-iiop使用包和

jaf

开发者可以使用jaf来决定任意一块数据的类型、封装对数据的访问、寻找合适的操作、实例化相关的bean来执行这些操作等。

例如,javamail就是使用jaf根据mime类型来决定实例化那一个对象。

ejb

组件实现代码的限制

ejb组件的约束

ejb的开发者并不需要在ejb的组件实现代码中编写系统级的服务,ejb提供商/开发

者需知道并且严格地遵守一些限制,这些限制与开发稳定的和可移植的ejb组件的利益有

关。

以下是你应该回避使用的一些java特色,并且在你的ejb组件的实现代码中要严格限

制它们的使用:

1.使用static,非final字段。

建议你在ejb组件中把所有的static字段都声明为final型的。

这样可以保证前后一致的运行期语义,使得ejb容器有可以在多个java虚拟机之间分发组件实例的灵活性。

2.使用线程同步原语来同步多个组件实例的运行。

避免这个问题,你就可以使ejb容器灵活的在多个java虚拟机之间分发组件实例。

3.使用awt函数完成键盘的输入和显示输出。

约束它的原因是服务器方的商业组件意味着提供商业功能而不包括用户界面和键盘的i/o功能。

4.使用文件访问/操作。

ejb商业组件意味着使用资源管理器如jdbc来存储和检索数据而不是使用文件系统api。

同时,部署工具提供了在部署描述器中存储环境实体,以至于ejb组件可以通过环境命名上下文用一种标准的方法进行环境实体查询。

所以,使用文件系统的需求基本上是被排除了。

5.监听和接收socket连接,或者用socket进行多路发送。

ejb组件并不意味着提供网络socket服务器功能,但是,这个体系结构使得ejb组件可以作为socket客户或是rmi客户并且可以和容器所管理的环境外面的代码进行通讯。

6.使用映象api查询ejb组件由于安全规则所不能访问的类。

这个约束加强了java平台的安全性。

7.欲创建或获得一个类的加载器,设置或创建一个新的安全管理器,停止jav

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

当前位置:首页 > 考试认证 > 其它考试

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

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