Dalam Pangkalan Data Masa Nyata Firebase, mengekalkan cap masa yang tepat adalah penting untuk membuat pesanan, menjejak perubahan dan memastikan integriti data. Apabila menambah nilai baharu melalui panel kawalan pangkalan data, anda mungkin mahu menangkap tarikh dan masa semasa secara automatik. Artikel ini menerangkan cara untuk mencapai ini menggunakan ServerValue.TIMESTAMP.
Amalan terbaik ialah menyimpan cap masa anda sebagai jenis data TIMESTAMP menggunakan ServerValue.TIMESTAMP. Ini memastikan pangkalan data menetapkan cap masa secara automatik apabila nilai baharu ditambah.
DatabaseReference ref = FirebaseDatabase.getInstance().getReference(); Map map = new HashMap(); map.put("timestamp", ServerValue.TIMESTAMP); ref.child("yourNode").updateChildren(map);
Apabila mendapatkan semula cap masa, ia akan disimpan sebagai nilai Panjang. Untuk mendapatkan tarikh dan masa dalam format yang boleh dibaca manusia, anda boleh menggunakan kaedah berikut:
public static String getTimeDate(long timestamp){ try{ DateFormat dateFormat = getDateTimeInstance(); Date netDate = (new Date(timestamp)); return dateFormat.format(netDate); } catch(Exception e) { return "date"; } }
Edit: Untuk menyimpan cap masa dengan betul dalam kelas model, anda boleh menentukan medan jenis Map
public class YourModelClass { private Map<String, String> timestamp; @ServerTimestamp public void setTimestamp(Map<String, String> timeStamp) {this.timestamp= timestamp;} public Map<String, String> getTimestamp() {return timestamp;} }
Pendekatan lain ialah mencipta Fungsi Awan dalam Firebase yang mengembalikan cap masa pelayan semasa. Anda kemudian boleh mendapatkan cap masa ini daripada kod bahagian hadapan anda.
exports.currentTime = functions.https.onRequest((req, res) => { res.send({"timestamp":new Date().getTime()}) })
Kaedah ini menyediakan cara yang konsisten dan boleh dipercayai untuk mendapatkan cap masa pelayan tanpa interaksi pengguna.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Cap Masa Secara Automatik pada Entri Pangkalan Data Masa Nyata Firebase?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!