繁体   English   中英

如何在J2ME中实现会话变量?

[英]How can I implement session variables in J2ME?

是否可以在J2me中使用会话? 我正在尝试开发Blackberry应用程序。 我想从一个类(页面)中获取一些文本,并在另一个类(页面)中使用。 可能像我们在app.net中所做的那样:

Class1
{
    session("myVariable") = Textbox.Text;
}

//a new class
Class2
{
    TextBox2.Text = session("myVariable").toString();
}

任何形式的帮助我都将非常感谢。

您可以拥有存储此类“全局”变量的第三类。 您可以将这些变量设为公共和静态。 尽管这会导致代码紧密耦合。

public class GlobalVariables
{
    public static string MyVariable = "empty";
}

那你就可以...

GlobalVariables.MyVariable = Textbox.Text;

...和...

TextBox2.Text = GlobalVariables.MyVariable;

...代码中的任何地方。 尽管在通常情况下这会让人皱眉,但在尝试编写最少的快速代码以在有限的设备上运行时可能很有用。

另一个技巧是在GlobalVariables中使用一种重置方法,以将所有静态值重置为默认值,以防用户想要从应用程序内部重置应用程序。 同样,如果这是您将存储所有每个会话变量的唯一位置,则可以在此处添加RMS保存和加载方法,以将其全部保存在一个位置。

再说一次,这不是最好的做事方法……但是很简单。

当我第一次看到您的问题时,我以为这将是关于HTTP会话的,但是您似乎只是在寻找一种在应用程序中存储状态的方法。

有很多方法可以做到这一点。 要考虑的一些事情:

  • 您是否需要在应用程序运行之间保留会话数据(或其中的一些数据)?
  • 会话变量集是否固定,或者可以变化?
  • 所有变量都是“字符串”还是某些数字?

一个简单的实现可能是具有公共静态方法的类中Hashtable的实例,该方法通过调用Hashtable的put()和get()方法来获取和设置变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM