ホームページ >Java >&#&チュートリアル >Firebase Realtime Database でタイムスタンプを効率的に保存および取得するにはどうすればよいですか?
コントロール パネルを介して Firebase Realtime Database に新しいデータを追加する場合、多くの場合、ユーザーは以下を含める必要があります。現在の日付と時刻。このデータは、ユーザー アクティビティの追跡、ログの管理、エントリの並べ替えとフィルター処理に役立ちます。
推奨される方法は、現在の日付と時刻を TIMESTAMP として保存することです。 Firebase は、書き込み操作中に子値として使用されるときにサーバー側のタイムスタンプを自動的に生成する ServerValue.TIMESTAMP 定数を提供します。
Java を使用してデータに TIMESTAMP を含めるには、次のコードを使用します。
DatabaseReference ref = FirebaseDatabase.getInstance().getReference(); Map<String, Object> map = new HashMap<>(); map.put("timestamp", ServerValue.TIMESTAMP); ref.child("yourNode").updateChildren(map);
Java で TIMESTAMP を Long として取得するには、次のコマンドを使用します。コード:
public static String getTimeDate(long timestamp) { try { DateFormat dateFormat = getDateTimeInstance(); Date netDate = new Date(timestamp); return dateFormat.format(netDate); } catch (Exception e) { return "date"; } }
モデル クラスでは、タイムスタンプ フィールドは次のように表す必要があります:
public class YourModelClass { private Map<String, String> timestamp; public YourModelClass() {} // Public getters and setters for timestamp }
ServerValue.TIMESTAMP を使用する場合、タイムスタンプはデータベースに表示されるのは、書き込み操作が完了しました。
別のアプローチ現在のタイムスタンプを取得するには、Cloud Functions for Firebase を使用します。これは、次のコードで実行できます:
exports.currentTime = functions.https.onRequest((req, res) => { res.send({"timestamp": new Date().getTime()}) });
この関数をクラウドでホストすると、ユーザーの操作なしでサーバーのタイムスタンプを取得できます。
以上がFirebase Realtime Database でタイムスタンプを効率的に保存および取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。