簡體   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