FLEX访问session

         其实这个话题我想大家都知道到怎么回事,不过我还是拿出写写,巩固一下知识,如果有人不清楚可以看一下。

            例子介绍:我的例子是用户登陆,用户第一点击登陆按钮通过验证账号密码来判断登陆是否成功(这里我假设账号密码相同为登陆成功),用户第二次点击登陆按钮通过判断session里面的账号是否为空,当然我的例子有点不恰当哈!

           现在让我们来一步一步编写代码:

           1)首先来编写LoginServlet.java

package servlet;
 
import java.io.IOException;
import java.io.PrintWriter;
 
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
10  import javax.servlet.http.HttpSession;
11   
12  public class LoginServlet extends HttpServlet {
13   
14      public void doPost(HttpServletRequest request, HttpServletResponse response)
15              throws ServletException, IOException {
16         String account  = request.getParameter("account");
17         String password = request.getParameter("password");
18         HttpSession session  = request.getSession();
19         String useraccount = (String)session.getAttribute("useraccount");
20         PrintWriter out = response.getWriter();
21         if(useraccount!=null){
22             
23             out.print("Congratulation "+useraccount+" ,You have logined  through session!");
24         }
25         else if(account.equals(password)){
26             
27             session.setAttribute("useraccount", account);
28             out.print("Congratulation "+account+",You have logined through account and password!");
29         }
30        
31         
32         
33      }
34   
35  }

下面是LoginServlet的配置文件:

 <servlet>
    <description>LoginServlet</description>
    <display-name>LoginServlet</display-name>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>servlet.LoginServlet</servlet-class>
  </servlet>
 
  <servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>
10      <url-pattern>/servlet/LoginServlet</url-pattern>
11    </servlet-mapping>

这里我来解释一下,如果通过密码账号验证登陆成功,提示祝贺你 ,你通过密码账号登陆成功,如果通过session检查登陆成功,提示你同过session登陆成功。

2)编写Flex访问selvlet ,哦我这里还是讲的通过HttpService 访问,以前看见有人通过BlazeDS来访问session,很好,有兴趣的可以去搜搜哈,有时间我也去尝试一下,如果成功我会贴出来的。

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx"   minWidth="955" minHeight="600">
    <fx:Declarations>
        <s:HTTPService id="login" url="http://localhost:8080/FlexSession/servlet/LoginServlet" showBusyCursor="true" 
                       method="post" result="loginHandler(event)"/>
    </fx:Declarations>
    <fx:Script>
10          [CDATA[
11              import mx.controls.Alert;
12              import mx.rpc.events.ResultEvent;
13     
14              private function userLogin():void{
15                  var parameter:URLVariables = new URLVariables();
16                  parameter.account = account.text;
17                  parameter.password = password.text;
18                  login.send(parameter);
19             
20              }
21              private function loginHandler(e:ResultEvent):void{
22                 mx.controls.Alert.show(e.result.toString());
23              }
24          ]]>
25      </fx:Script>
26      <s:Panel x="153" y="148" width="288" height="200" title="User Login" borderVisible="false">
27          <mx:Form x="38" y="10" width="242" height="84">
28              <mx:FormItem label="account:">
29                  <s:TextInput id="account"/>
30              </mx:FormItem>
31              <mx:FormItem label="password:">
32                  <s:TextInput id="password" displayAsPassword="true"/>
33              </mx:FormItem>
34          </mx:Form>
35          <s:Button x="185" click="userLogin()" y="105" label="Login"/>
36      </s:Panel>
37  </s:Application>

稍微解释一下,很简单的,我想大家一看就明白了,loginHandler这个函数讲提示服务器端返回的信息,下面我就操作一下

初始界面:

login1

今天.哦不能说今天,舟曲哀悼日,这里也哀悼一下,死者安息,生者坚强吧,我还是把主题设置成灰色吧,

不多说了,

然后输入用户名 innerp 密码 innerp  登陆  提示:

login2

大家看看提示哈 通过密码账号登陆成功  然后我再次点击登陆按钮:

login3

在看看提示,恭喜innerp你通过session登陆成功。好啦,讲完了,很简单。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值