仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 489|回复: 11
打印 上一主题 下一主题

[学习教程] 发布一篇J2EE使用程序的Web层形态复制

[复制链接]
小魔女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:29:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
其实产生见解的过程就是训练自己发现问题,分析问题的能力。根据以上的认识我想谈下传统的学习与通过视频独立学习的优缺点:
年夜多半具有必定主要性的Web使用程序都请求保护某种会话形态,如用户购物车的内容。怎样在聚集服务器使用程序中办理和复制形态对使用程序的可伸缩性有明显影响。很多J2SE和J2EE使用程序将形态存储在由ServletAPI供应的HttpSession中。本文作者剖析了形态复制的一些选项和怎样最无效地利用HttpSession以供应好的伸缩性和功能。
不论正在构建的是J2EE仍是J2SE服务器使用程序,都有大概以某种体例利用JavaServlet——多是间接地经由过程像JSP手艺、Velocity大概WebMacro如许的暗示层,也大概经由过程一个基于servlet的Web服务虚现,如Axis大概Glue。ServletAPI供应的一个最主要的功效是会话办理——经由过程HttpSession接口举行用户形态的认证、生效和保护。
会话形态
几近每个Web使用程序都有一些会话形态,这些形态有大概像记着您是不是已登录这么复杂,也多是您的会话的更具体的汗青,如购物车的内容、之前查询了局的缓存大概20页静态问卷表的完全呼应汗青。由于HTTP协定自己是无形态的,以是必要将会话形态存储在某处并与扫瞄会话以某种体例相干联,使得下次哀求统一Web使用程序的页面时能够简单地猎取。侥幸的是,J2EE供应了几种办理会话形态的办法——形态能够存储在数据层,用ServletAPI的HttpSession接口存储在Web层,用有形态会话bean存储在EnterpriseJavaBeans(EJB)层,乃至用cookie大概埋没表单字段将形态存储在客户层。不幸的是,会话形态办理不妥会带来严峻的功能成绩。
假如使用程序可以在HttpSession中存储用户形态,这类办法一般比其他办法更好。在客户端用HTTPcookie大概埋没表单字段存储会话形态有很年夜的平安风险——它将使用程序的一部份内部内容表露给了非受信托的客户层。(一个初期的电子商务网站将购物车内容(包含代价)存储在埋没表单字段中,从而能够很简单被不法使用,让任何懂得HTML和HTTP的用户能够以0.01美圆购置任何商品。噢)别的,利用cookie大概埋没表单字段很凌乱,简单堕落,而且懦弱(假如用户克制在扫瞄器中利用cookie,那末基于cookie的办法就完整不克不及事情)。
在J2EE使用程序中存储服务器端形态的其他办法是利用有形态会话bean,大概在数据库中存储会话形态。固然有形态会话bean在会话形态办理方面有更年夜的天真性,可是在大概的情形下,将会话形态存储在Web层仍旧有优点。假如营业对象是无形态的,那末一般能够仅仅增加更多Web服务器来扩大使用程序,而不必增加更多Web服务器和更多EJB容器,如许的本钱一样平常要低一些而且简单完成。利用HttpSession存储会话形态的另外一个优点是ServletAPI供应了一种会话生效时关照的简单办法。在数据库中存储会话形态的本钱大概难以接受。
servlet标准没有请求servlet容器举行某品种型的会话复制大概耐久性,可是它倡议将形态复制造为servlet主要存在来由(raisondetre)的主要部分,而且它对作为举行会话复制的容器提出了一些请求。会话复制能够供应大批优点——负载均衡、伸缩性、容错和高可用性。响应地,年夜多半servlet容器撑持某种情势的HttpSession复制,可是复制的机制、设置和工夫是由完成决意的。
HttpSessionAPI
复杂地说,HttpSession接口撑持几种办法,servlet、JSP页大概其他暗示层组件能够用这些办法来跨多个HTTP哀求保护会话信息。会话绑定到特定的用户,可是在Web使用程序的一切servlet中共享——不特定于某一个servlet。一种思索会话的有效办法是,会话像一个在会话时代存储对象的Map——能够用setAttribute按名字存储会话属性,并用getAttribute提取它们。HttpSession接口还包括会话保存周期办法,如invalidate()(它关照容器应抛弃会话)。清单1显现HttpSession接口最经常使用的元素:
清单1.HttpSessionAPI
publicinterfaceHttpSession{
 ObjectgetAttribute(Strings);
 EnumerationgetAttributeNames();
 voidsetAttribute(Strings,Objecto);
 voidremoveAttribute(Strings);
 booleanisNew();
 voidinvalidate();
 voidsetMaxInactiveInterval(inti);
 intgetMaxInactiveInterval();
 ...
}
实际上,能够跨聚集分歧性地完整复制会话形态,如许聚集中的一切节点都能够服务任何哀求,一个复杂的负载均衡器能够以轮询体例传送哀求,避开有妨碍的主机。不外,这类严密的复制有很高的功能本钱,而且难于完成,当聚集靠近某一范围时,还会有伸缩性的成绩。
一种更经常使用的体例是将负载均衡预会话类似性(affinity)分离起来——负载均衡器能够将会话与毗连相干联,并将会话中今后的哀求发送给统一服务器。有良多硬件和软件负载均衡器撑持这个功效,而且这意味着只要主毗连主机和会话必要妨碍转移到另外一台服务器时才会见复制的会话信息。
<p>
但是对于JAVA技术类的学习,我觉得大课堂反而会影响自身独立思考的过程,因为上课的时候,老师讲课的速度很快为了不遗漏要点,通常会仔细的听,
活着的死人 该用户已被删除
沙发
发表于 2015-1-21 08:20:59 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
蒙在股里 该用户已被删除
板凳
发表于 2015-1-25 11:15:01 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
柔情似水 该用户已被删除
地板
发表于 2015-1-26 22:36:07 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
愤怒的大鸟 该用户已被删除
5#
发表于 2015-2-6 15:25:01 | 只看该作者
是一种使用者不需花费很多时间学习的语言
变相怪杰 该用户已被删除
6#
发表于 2015-2-9 17:59:12 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
海妖 该用户已被删除
7#
发表于 2015-2-27 14:52:06 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
分手快乐 该用户已被删除
8#
发表于 2015-3-2 08:44:20 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
飘灵儿 该用户已被删除
9#
发表于 2015-3-2 20:23:25 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
爱飞 该用户已被删除
10#
发表于 2015-3-11 05:59:14 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
金色的骷髅 该用户已被删除
11#
发表于 2015-3-17 22:01:48 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
飘飘悠悠 该用户已被删除
12#
发表于 2015-3-25 03:13:16 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 17:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表