jsp页面是怎么支持多用户手机访问jsp页面的?为什么多用户可以手机访问jsp页面一个jsp页面,原

:转载时请以超链接形式标明文章原始出处和作者信息及本声明
通俗地讲,JSP就是内嵌Java(脚本)代码的网页。具体到实际系统环境中,当客服端通过浏览器请求一个JSP页面时,JSP页面不会原封不动的传送给浏览器,它将首先被服务器编译处理成为一个servlet,然后执行这个servlet来完成浏览器的请求。因此,就决定了JSP具有Servlet的特性(服务器端特性) 和Web特性(客户端特性)。在默认条件下,Servlet/JSP是以多线程模式执行的,当然也允许多个客户端同时访问、获取一个JSP页面。在实践中对应于这两种特性也就有不同的JSP同步需求。我们现在就分别讨论之。 一、对于某一时刻要求实施同步技术的JSP页面 &一层&架构系统中较容易碰到,比如在一个系统中通过一个JSP页面去读并且写服务器硬盘文件,这时就需要同步JSP页面,否则就会产生混乱。为了避免出现同一刻有多用户同时访问一个JSP页面,在JSP规范中通过指令元素isTheadSafe 来设定JSP是否支持多线程(默认是支持多线程的),在JSP中加入如下语句可以关闭JSP的多线程支持:(在网上看到srx81兄在《Servlet及JSP中的多线程同步问题》谈到在Tomcat 4.1.17版本中不支持这一指令元素的BUG,本人没有弄到这一版本的tomcat,未能测试,希望大家在实践时多加注意)。由于对应的是JSP的servlet特性,当然也可以采用其它的Java同步方法来进行单线程保护,比如在脚本元素中使用synchronized关键字进行同步。 使用此类方法实现JSP页面同步需要注意由于这一方法只是在某一时刻JSP的同步,所以使用涉及到于整个page范围的实例变量与页面元素时要遵守&用前打招呼(声明),用完洗干净(释放)&的原则,如下: 例一: 例二: 在例一中由于对非同步的JSP实例变量处理不够彻底,所以在实际应用中虽然可以对JSP实例变量的操作实现同步,但如srx81兄所言, &并不能阻止一个线程使用另外一个线程修改后的&脏的&实例变量&。 实践中,如例二这样处理后已经完全可以满足某一时刻对JSP页面的同步。 补充几句,具体到一个系统中,如果要求同步的还有通过JSP传递出去的参数,就要全盘考虑整个架构中的同步与多线程问题(比如采用同步的hastable来进行层间数据传输),此外还要总体考虑同步带来的&瓶颈&与效率低下问题。 二、对于某一时段内要求实施同步技术的JSP页面 这是对应于JSP的Web特性的,即指同一时段内只能有一个客户端访问该JSP页面。简单说来就是当有一人访问某一JSP页面时,其他人就不能访问这一JSP页面,情况很类似于数据独占和数据锁。这种情况在大多系统开发中都可能碰到。具体说来又细分为两种情形: A、涉及数据更新的JSP页面同步 此类情况主要考虑的就是数据的安全性,所以一般就直接套用数据并发策略(如数据锁),但是要注意目前是基于JSP的Web特性来实施同步的,对应Web特性有两个问题:Web的不稳定性、Web与服务器的弱耦合通讯。如果直接使用数据锁方案就会出现问题,我们可以设想,有一个用户进入JSP页面,同时触发同步的数据锁,此后的所有用户都不能在进入到此JSP页面(因为得不到数据),直到该用户离开此JSP页面,再触发条件释放数据锁。但是如果这个用户掉线或者当机了,那个释放数据锁的触发条件将不会传给服务器,那个数据锁就会永远不被释放,形成可怕的死锁。解决的方法当然很多,比如定时检测数据锁的占用情况,并释放不在线用户占用的数据锁。 就个人实践来说,我更喜欢采用&版本同步&的方案,这一方案相较而言更安全简单。简单说来就是在数据表中添加一个&版本号&字段,用户进入JSP页面时同时读取当前记录&版本号&字段,进行更新操作时除了要满足正常条件外还需要满足先前取出的&版本号&与%
历史上的今天:
引用地址:
黄金圣斗士
huihui:沙漠俊:chinaren0001:::Anynote 个人信息管理系统 v1.2.0_支持多用户
为鼓励上传资源,我们采用积分下载方式,希望您能发布更多更好的资源互相分享
1.上传软件或电子书,源码,资料等,审核后即获2积分;如发布时设了下载需积分,其他用户下载后你将获得相应积分
2.当您首次注册时,可以获送10个下载积分,供您下载资源和熟悉网站下载的使用
3.发现资源有误或其他问题,通过举报按钮反馈后我们将奖励积分
4.您可以在论坛通过发帖等方式获取
5.参加本站可以在有效期内不限次数下载
6.您也(1元=10积分)或
7.我们会不定期举办各种活动,参加活动可以获取积分,请关注下载频道首页公告。
您可能遇到这些“伪问题”:
1.资料无法解压:
请确保所有分卷均下载完毕,如果有未知后缀文件,请搜索相应解压软件;
2.chm文件无内容:
您的电脑锁定了这一文件,请右击文件属性,点击右下方“解除锁定”,关闭文件后再打开;
3.下载不下来:
请尝试重新下载(重新下载不扣积分);
4.杀毒软件报毒:
黑客安全及破解类软件容易报毒,但可正常使用,如担心安全请谨慎使用。
Anynote是一个基于extjs3.3、struts1.3.10、spring2.5、ibatis-2.3.4构建的个人信息管理(支持多用户)。主要功能包括:1、待办事项;2、日常笔记;3、器;4、个人相册;5、账目理财。 最新动态Anynote目前最新版本为1.2.0,较上一版本更新内容如下: 账目管理模块添加了账本功能,一个用户可以创建管理多个账本; 笔记模块,删除了笔记分类管理页面,用树形菜单替代,通过右键可以对分类进行增删改; 待办事宜列表中,未处理事项显示黑色,当超过处理时间时显示为红色,默认按照状态分组; setting.properties配置文件中增加了开放注册配置项setting.openRegister,用于控制登陆页面是否显示注册链接 后台代码进行了优化 修改了一些缺陷
您对本软件有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力
下载地址:
您正在下载:Anynote 个人信息管理系统 v1.2.0_支持多用户
热门最新推荐
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。
(window.slotbydup=window.slotbydup || []).push({
id: '2467142',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'SSH新手上路:如何在有登录验证的项目中单独访问指定的JSP页面
[问题点数:40分,结帖人mhsfw007]
SSH新手上路:如何在有登录验证的项目中单独访问指定的JSP页面
[问题点数:40分,结帖人mhsfw007]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2014年10月 Java大版内专家分月排行榜第二2014年9月 Java大版内专家分月排行榜第二2014年8月 Java大版内专家分月排行榜第二
2016年1月 Java大版内专家分月排行榜第三2014年12月 Java大版内专家分月排行榜第三2014年11月 Java大版内专家分月排行榜第三
2014年10月 Java大版内专家分月排行榜第二2014年9月 Java大版内专家分月排行榜第二2014年8月 Java大版内专家分月排行榜第二
2016年1月 Java大版内专家分月排行榜第三2014年12月 Java大版内专家分月排行榜第三2014年11月 Java大版内专家分月排行榜第三
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。如何从一个jsp文件中访问另一个jsp中的方法
如何从一个jsp文件中访问另一个jsp中的方法比如说:我在一个jsp页面中定义了一个js方法 function a(){}在另一个jsp页面中我想用a(),我怎么引过来呢? 谢谢!!!
09-11-04 &匿名提问
jsp文件可以作为js,如果调用另外一个jsp页面的javascript方法,可以直接把另外一个jsp文件用&script language=&javascript& type=&text/javascript& src=&other.jsp&&&/script&标签引入即可。
请登录后再发表评论!jmeter 多用户登录多步骤访问系统
jmeter 多用户登录多步骤访问系统
Jmeter是一个性能测试工具,同loadrunner类似,他功能较多,我们常用的功能是用jmeter模拟多浏览器对网站做压力测试。
下载jmeter地址 :http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi
我们一般的网站,在进入业务功能前先需登录,然后才能访问业务功能。下面介绍如何用jmeter登录系统再对主业务做压力测试。
1 运行jmeter
2 左边树将出现测试计划、工作台两根节点。
3 选择测试计划,按右键-》添加-》threads(users)线程组
线程组能设置以多少个线程并发做压力测试。
在”循环次数”设置不选择永远,循环次数设置1。
4现在先介绍如何设置登录http请求,选择线程组,右键――添加――》sampler-―》http 请求。
http请求即模仿浏览器的访问。
在“服务器名称或ip”设置127.0.0.1,端口号设置:8080,“方法”设置post,路径设置网站登录的地址,如“/exam/operatorAction”。
登录需传入用户、密码。在“同请求一起发送参数”列表中添加参数。参数值根据web应用设置。如login_user=0001;login_password=1;actFlag=login
5 登录成功后,网站一般将跳入主页面。在jmap中可做判断,判断是否登录后按预想进入主页面(此步骤也可不设)。选择4中的“http请求“,右键――》添加――》断言――》响应断言。“Apply to”设置Main smaple only;“要测试的响应字段”设置“url样本”;“模式匹配规则”设置“包括”,“要测试的模式”增加页面跳转到的主页面,如:“studentMain.jsp”
6 一般网站登录后,在tomcat中生成了session,之后访问其他页面将无需再次登录,前提是浏览器需支持cookie。在jmap中也同样,如要继续访问其他页面,还需做下面关键的设置。
选择“线程组”――》右键――》添加――》配置元件――》Http cookie管理器。加了此步骤后,http请求将具备cookie功能,即登录成功后访问其他页面将不会跳转到登录页面重新登录。
7 对目标页面反复压力测试。
7.1 如何使被测页面反复访问达到测压效果。选“线程组”―》右键――》逻辑控制器――》循环控制器。循环次数中选择“永远”。
7.2 选择刚加的“循环控制器”,右键――》添加――》sampler-―》http 请求,按4步骤设置ip、端口,http请求方法为“get”,路径为被压力测试的url,如:“exam/business/studentExam.action.StudentExamAction?action=goIntoMockExam”。
按上面的设置后,已完成配置,可做压力测试。只需点菜单“运行”――》启动,即运行压力测试。
8 jmeter提供了许多压力结果查看工具。是压力测试时非常好的分析工具。下面几种查看工具可有选择的添加。
8.1察看结果树。他记录每次请求发送数据、响应返回数据。选择“线程组”――》右键――》添加――》察看结果树。
8.2 用表格查看结果。可查看每次请求的响应时间等。选择“线程组”――》右键――》添加――》用表格查看结果。
8.3 Summary Report。可查看平均响应时间、最长响应时间等。
发表评论:
TA的最新馆藏

我要回帖

更多关于 如何访问jsp页面 的文章

 

随机推荐