[swift] ObjectMapper를 사용하여 Swift 객체에 다중 필드를 매핑하는 방법은 무엇인가요?

Swift에서 ObjectMapper는 JSON 데이터와 Swift 객체 간의 매핑을 쉽게 처리할 수 있는 도구입니다. 다중 필드를 매핑하는 경우에도 ObjectMapper는 아주 유용합니다.

다중 필드를 매핑하기 위해 ObjectMapper의 map 또는 mapArray 메서드를 사용합니다. 이 메서드는 JSON 데이터와 매핑할 Swift 객체의 타입을 인자로 받습니다. 다음은 다중 필드를 매핑하는 간단한 예시입니다.

import ObjectMapper

class Person: Mappable {
    var name: String?
    var age: Int?
    
    required init?(map: Map) {
        
    }
    
    func mapping(map: Map) {
        name <- map["name"]
        age <- map["age"]
    }
}

let jsonString = "{\"name\": \"John\", \"age\": 30}"
let person = Mapper<Person>().map(JSONString: jsonString)

print(person?.name) // Output: John
print(person?.age) // Output: 30

위의 예시에서는 Person 클래스에 nameage라는 두 개의 필드가 있습니다. mapping 메서드에서 nameage 필드를 각각 map["name"]map["age"]에 매핑하여 값을 할당합니다.

JSON 문자열을 Mapper<Person>().map(JSONString: jsonString)을 통해 Person 객체로 매핑하면 name 필드는 “John”으로, age 필드는 30으로 매핑됩니다.

다중 필드를 매핑하는 방법은 이와 같이 간단하게 처리할 수 있습니다. ObjectMapper를 사용하면 객체와 JSON 데이터 간의 매핑 작업을 편리하게 수행할 수 있습니다.

참고: GitHub - ObjectMapper