
The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications

framework ของจาวาที่มีมาก่อนหน้านี้ (เช่น Struts เป็นต้น) ผูกพันธ์กับ Enterprise Java Bean (EJB) มากเกินไป (ผมก็ไม่เคยเขียน EJB) เข้าใจว่าเมื่อ EJB มีความสามารถมากขึ้นก็จะซับซ้อนขึ้นเรื่อยๆ (คลาสถูกถ่ายทอดหลายลำดับชั้น) ผู้สร้าง Spring ต้องการลดความซับซ้อนของ EJB จึงได้คิด Spring Framework ขึ้น (ตัดสินใจไม่เอา EJB) เขาต้องการจาวาคลาสธรรมดาอย่างที่ธรรมดาสุดๆ และเรียกจาวาคลาสธรรมดาสุดๆนั้นว่า POJO...

เมื่อฝึกเขียนจาวา เรียนรู้จาวา เราอาจยังไม่รู้จัก interface ทว่าผมอยากบอกว่าแท้จริงแล้วจาวานั้นเต็มไปด้วย interface มันเป็นข้อกำหนดประการหนึ่งที่ทำให้คลาสถูกบังคับให้เกิดพฤติกรรม มาถึงจุดนี้บางคนก็งงว่าคลาสนิยามพฤติกรรมของตัวเองได้ จะมี interface อีกทำไม ก็ขอย้ำว่า เพื่อบังคับให้เกิดพฤติกรรม หรือก็คือ กติกา นั่นเอง...

Model, Repository และ Service Concept...

Sample Project กับ Model, Repository และ Service...

เราคงทราบกันแล้วว่า interface มีความสำคัญอย่างไร และในโอกาสนี้เราจะเริ่มใช้งานไฟล์ XML กับ setter methods เพื่อฉีดออบเจ็กต์...

เราคงทราบกันแล้วว่า interface มีความสำคัญอย่างไร และในโอกาสนี้เราจะเริ่มใช้งานไฟล์ XML กับ setter methods เพื่อฉีดออบเจ็กต์...

XML กับ Default Constructor และ Constructor...

XML กับ Default Constructor และ Constructor...

Injection เหล่าคลาสโดยการใช้ Autowire...

Stereotype Annotations...

ต่อจากคราวก่อนที่เรากล่าวถึง Stereotype Annotations, เขาคือผู้ช่วยที่จะทำให้โค้ดฝั่ง XML น้อยลงและเพิ่มโค้ดฝั่งจาวาเพียงเล็กน้อยเท่านั้นผ่านสิ่งที่เรียกว่า annotation ถามว่าสถานที่หรือ layer เช่นไรควรจะวาง @Component หรือวาง @Service หรือวาง @Repository?...

ใช้ @Configuration annotation มาจัดการความเป็น context หมายถึงบอกให้รู้ว่าไฟล์จาวาข้างต้นนี้จะเป็นที่ประกาศหรือนิยาม bean ต่างๆ...

เพราะจาวาบีนคือพื้นฐานที่โปรเจ็กค์จำเป็นต้องมีเสมอ และ part ที่ผ่านมาได้แสดงให้เห็นว่าเราสามารถ configuration บีนทั้งหมดด้วยภาษาจาวา ใช่ครับ เรายังไม่ได้ใช้ autowire กันเลย...

แม้กำหนดหรือไม่กำหนด singleton scope และเราขอออบเจ็กต์ service จาก spring มาถึงสามครั้ง ออบเจ็กต์ที่ได้คือออบเจ็กต์ตัวเดียวกันทั้งหมดครับ...

prototype scope จะให้ออบเจ็กต์ใหม่เสมอในแต่ละครั้งที่ร้องขอ...

น้องคณะคนหนึ่งถามผมเกี่ยวกับเรื่องนี้ว่า เราจะใช้ spring มาจัดการ config เข้ากับ hibernate โดยสร้างเป็นโปรเจ็กต์เล็กๆได้อย่างไร...
เจอ blog นี้แล้ว สุดยอดเลย อ่านเข้าใจง่ายดี
ตอบลบผมมีพื้นฐาน Java นิดหน่อย กำลังศึกษา Spring
มี part ต่ออีกไหมครับ
ตอบลบคิดว่ามีครับ แต่พักนี้ไม่ค่อยได้จับ Spring ว่างๆก็แวะมาชมใหม่นะครับ
ลบขอบคุณครับ get ขึ้นเยอะ
ตอบลบเดี๋ยวอาทิตย์หน้าผมมาต่อให้นะครับ ดองไว้นานเลย ขอบคุณเพื่อนๆที่ยังเข้ามาอ่านกันนะ
ตอบลบทำไมผมเจอเพจนี้ช้าไป เฮ้อออ ขอบคุณมากครับพี่แชรืความรู้
ตอบลบขอบคุณมากที่ช่วยแชร์ความรู้ครับ
ตอบลบหนูไม่เช้าใจเลยค่ะ ว่า framework คืออะไร
ตอบลบรบกวนอธิบายให้ดูฟังหน่อยได้มั๊นคะ ผ่าน facebook ก็ได้ค่ะ
ขอบคุณล่วงหน้าน้าค้า
https://www.facebook.com/kor.kluai