BeanUtils.copyProperties(dest, orig);

มา copyProperties ด้วย Bean Utility กันเถอะ

มา Copy Bean กันเถอะ

อินี่มันคืออะไร

มันก็คือฟังก์ชันสำหรับ copy attribute ของ Class หนึ่งไปอีก Class ได้อย่างชิวๆ ไม่ต้องมานั่ง .set attribute นู่นนี่นั่นให้ปวดกบาล

หลักการใช้งาน

BeanUtils.copyProperties(Object dest,Object orig) ตัวนี้มี Parameter ที่เป็น Object ที่ต้องส่งเข้ามาสองตัวด้วยกัน 
dest — เป็น Object ต้นทางที่มีข้อมูลของ Attribute ที่เราต้องการจะ copy
orig — เป็น Object ปลายทางที่เราต้องการให้เอา Attribute มาใส่

ข้อควรระวังในการใช้งาน

เนื่องจากเป็นการ copyProperties โดยการดูจากชื่อดังนั้น Data type ของตัวแปลต้นทางและปลายทางต้องเป็น type เดียวกัน เช่นต้นทางเป็น String ปลายทางต้องเป็น String แต่ถ้าต้นทางเป็น Long แล้วตัวรับเป็น String แบบนี้ทำไม่ได้นะ error เด้งขึ้นมาว่า IllegalArgumentException แน่นอนจ้า วิธีการเลี่ยงก็คือไปเปลียนชื่อใน Object ขารับให้ไม่เหมือนต้นทาง แล้วค่อยมา Set ใส่เองทีหลังก็ได้แล้ว อิอิ

อันนี้เป็น Model ต้นทาง
อันนี้เป็น DTO ปลายทาง
Show your support

Clapping shows how much you appreciated LOOKPOR!’s story.