|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
还是要自己一点一点写代码,然后编译,改错再编译好那。还有最重要的是.net的编译环境非常好,你甚是不需要了解太多工具,对于简单的系统,你可以之了解一些语法就哦了。session
1、标准中的SESSION形貌
(PortletSessionobjectsmustbescopedattheportletapplicationcontextlevel.EachportletapplicationhasitsowndistinctPortletSessionobjectperusersession.TheportletcontainermustnotsharethePortletSessionobjectortheattributesstoredinitamongdifferentportletapplicationsoramongdifferentusersessions.)下面这段话是portlet标准里的一段。很分明的能够看出,每一个PortletApplication应当在ProcessAction和Render的时分应当具有本人公有的Session对象,来为以后用户服务。也就是说,假如某一个用户在一个PORTAL体系中操纵分歧的PORTLET,并且这些PORTLET属于分歧的PORTLETAPPLICATION,则,这个用户将操纵多个SESSION对象,用户在每一个PORTLET中操纵SESSION时,这个SESSION都将是属于该PORTLET地点的高低文的公有SESSION对象。好比,用户以后页面有三个PORTLET,每一个PORTLET都属于分歧的PORTLETAPPLICATION。则当该用户在第一个PORTLET内里有对SESSION的操纵后,该PORTLET所属的APPLICATION将为这个用户天生一个SESSION;当该用户又操纵第二个PORTLET中的SESSION时,该高低文有会对此用户发生一个新的SESSION对象;第三个仍然云云。加上PORTAL体系的SESSION,也就是该用户实践和四个SESSION在年夜交道。
别的要申明一点的是,PORTLETAPPLICATION和WEBAPPLICATION的干系。标准中有以下的界说:(Portlets,servletsandJSPsarebundledinanextendedwebapplicationcalledportletapplication.Portlets,servletsandJSPswithinthesameportletapplicationshareclassloader,applicationcontextandsession.)这申明PORTLETAPPLICATION实在就是一个WEBAPPLICATION。标准中另有一段话更是申明了这个成绩,同时也夸大了PORTLETSESSION和一般的该APPLICATION的SESSION的干系:(APortletApplicationisalsoaWebApplication.ThePortletApplicationmaycontainservletsandJSPsinadditiontoportlets.Portlets,servletsandJSPsmayshareinformationthroughtheirsession.ThePortletSessionmuststoreallattributesintheHttpSessionoftheportletapplication.AdirectconsequenceofthisisthatdatastoredintheHttpSessionbyservletsorJSPsisaccessibletoportletsthroughthePortletSessionintheportletapplicationscope.Conversely,datastoredbyportletsinthePortletSessionintheportletapplicationscopeisaccessibletoservletsandJSPsthroughtheHttpSession.IftheHttpSessionobjectisinvalidated,thePortletSessionobjectmustalsobeinvalidatedbytheportletcontainer.IfthePortletSessionobjectisinvalidatedbyaportlet,theportletcontainermustinvalidatetheassociatedHttpSessionobject.)
最初一点要申明的是如何失掉PORTLETSESSION对象。标准中有如许一个例子:PortletSessionsession=request.getSession(true);URLurl=newURL(“http://www.foo.com“);session.setAttribute(“home.url”,url,PortletSession.APPLICATION_SCOPE);session.setAttribute(“bkg.color”,”RED”,PortletSession.PORTLET_SCOPE);
比如模式、敏捷方法什么的,这些思想好,但是实施的人没有理解而且没有正确运用这些知识导致了开发周期的延长。比如说对象,通过getName()方法不能获取对象的名字。 |
|