📄 flexhttpsession.java
字号:
package com.QualityTrack.Version;
public class FlexHttpSession {
/*
*
//在java类中导入以下包
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import flex.messaging.*; //关键是这个包
然后在类中这样写代码
public void getSession(){ //函数名自定义什么都行
HttpServletRequest request = FlexContext.getHttpRequest();//通过这个函数就能得到httprequest对像
HttpSession session = request.getSession(); //这样就得到了httpsession
session.setAttribute("a","b");
以下就和普通操纵session一样了
}
至于为什么flex可以这样做,可能web.xml配置文件里有一些设置,但是建工程的时候都生成了,我配置文件里面什么都没动,具体原理我不太懂
<mx:RemoteObject id = "ro" destination="test" source="servlet">
<mx:method name="setCompanySession" />
<mx:method name="getCompanySession" result="getcomid(event)"/>
</mx:RemoteObject>
<mx:Script>
<![CDATA[
private function getcomid(event:ResultEvent):void{
var cid:String = event.result as String;
Alert.show(cid);
}
private function getcomsession():void{
ro.getCompanySession();
}
private function init():void{
ro.setCompanySession("名古屋");
}
]]>
</mx:Script>
<mx:Button x="222" y="309" label="detail" click="init()"/>
<mx:Button x="197" y="356" label="getsession" click="getcomsession()"/>
//后台java类返回session值的函数是这样的
public String getCompanySession()
{
HttpServletRequest request = FlexContext.getHttpRequest();
HttpSession session = request.getSession();
COMPANY_ID = String.valueOf(session.getAttribute("companyid"));
if (COMPANY_ID == null){
return "超时";
}
return COMPANY_ID;
}
*
*
*
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -