Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara menyimpan respons Dari server saya, dan Bagaimana saya bisa mengakses data itu

Karena solusi asli telah diposting, saya akan fokus pada cara yang lebih lama &lebih membosankan yang menurut saya merupakan cara yang tepat untuk menangani gajah di dalam ruangan. Ini akan membantu Anda dalam jangka panjang.

Buat kelas Singleton karena hanya ada satu pengguna yang masuk dalam satu waktu.

SharedUser.h

#import <Foundation/Foundation.h>
@interface SharedUser : NSObject

@property (strong, nonatomic) NSString* userId;
@property (strong, nonatomic) NSString* userName;
@property (strong, nonatomic) NSString* subscriptionStatus;
@property (strong, nonatomic) NSString* registerDate;
@property (strong, nonatomic) NSString* expiryDate;
+(SharedUser*) getInstance;

@end

SharedUser.m

#import "SharedUser.h"

@implementation SharedUser



static SharedUser * sharedInstance;



+(SharedUser*) getInstance
{
    @synchronized(self)
    {
        if(sharedInstance == nil)
        {

            sharedInstance = [[SharedUser alloc] init];
            sharedInstance.userName = @"";
            sharedInstance.userId = @"";
            sharedInstance.subscriptionStatus = @"";
            sharedInstance.registerDate = @"";
            sharedInstance.expiryDate = @"";
            return sharedInstance;
        }
        else
        {
            return  sharedInstance;
        }

    }
}

Ubah tanggapan Anda menjadi NSDictionary .

NSDictionary *json_dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];;//From Santosh Reddy's Answer

Isi Instance bersama Anda dengan atribut hasil:

[SharedUser getInstance].userId = [json_dict objectForKey:@"user_id"];
[SharedUser getInstance].userName = [json_dict objectForKey:@"username"];
[SharedUser getInstance].subscriptionStatus = [json_dict objectForKey:@"subscription_status"];
[SharedUser getInstance].registryDate = [json_dict objectForKey:@"register_date"];//Better to use NSDate type instead of NSString
[SharedUser getInstance].expiryDate = [json_dict objectForKey:@"expiry_date"];

Sekarang atribut pengguna Anda akan tersedia di mana saja di Aplikasi. Anda hanya perlu mengimpor SharedUser.h ke UIView yang diinginkan , UIViewController &ketik berikut untuk mengakses data Anda:

NSString *userId = [SharedUser getInstance].userId;

Perhatikan juga bahwa saya menggunakan pola tunggal karena saya berasumsi bahwa Anda hanya perlu menangani satu atribut pengguna yang akan digunakan di beberapa pengontrol tampilan selama rentang waktu. Jika Anda membutuhkan banyak pengguna yang disimpan, buat kelas model pengguna yang serupa dan isi dengan cara yang sama. (Hanya saja, jangan membuat mereka lajang).

Saya juga menyarankan Anda untuk membaca seri tutorial Ray Wenderlich di:

1. Desain Berorientasi Objek
2. Pola Desain
3. Pengantar pola desain iOS



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Membuat DATETIME dari DATE dan TIME

  2. PHP, MySQL:Terima email, pencarian otomatis di DB &kirim email berdasarkan hasil

  3. MySQL Split Comma Dipisahkan String Ke Tabel Temp

  4. Menyimpan Nomor Jaminan Sosial

  5. Bisakah saya memasukkan tanggal di mySQL dalam format DD-Senin-YY?