หลังจาก Blog ตอนแรกที่เตรียม Tools กันไปแล้ว คราวนี้มาลองสิ่งที่ Developer ทุกคนต้องเจอกัน Hello World ครับ โดยผมมาพาทำในรูปแบบ Console Application ครับ
หาาาา Spring มันทำเว็บนี้ มันต้องมีคนอุทานแน่ๆ แต่จริงๆ Spring มันเป็น Platform นึงครับ ส่วนของเว็บของ MVC เป้น SubSet ใน Spring ครับ
เริ่มกันเลยดีกว่า
- ขั้นแรกสร้าง Maven Project ขึ้นมาครับ ให้มันเตรียมพวกไฟล์ Pom.xml และ Lib ที่จำเป็นมาให้
- เข้าเว็บ Google หา Spring Latest Version หรือไม่ก็เข้าไปลิงค์ที่ผมให้มาครับ
- สิงที่เราต้องการ คือ พวก Dependency เอาไปแปะในไฟล์ Pom.xml เลยครับ
org.springframework spring-context 4.2.6.RELEASE
- แปะแล้ว Save File ครับ เดี๋ยวตัว IDE มันจะไปดึง Lib ที่เกี่ยวข้องมาให้ครับ
- ตอนนี้แล้วเรามาดูโครงสร้าง Project กันดีกว่าครับ
- มาเจาะลงทีละไฟล์ครับ
- สร้าง POJO Interface และ Class กันครับ
- Interface
package com.debuggingsoft.HelloConsoleWorld.domain; public interface HelloConsoleWorld { void sayHello(String name); }
- Implement
package com.debuggingsoft.HelloConsoleWorld.domain; public class HelloConsoleWorldImpl implements HelloWorld{ public void sayHello(String name) { System.out.println("Hello "+name); } }
- Interface
- สร้าง Bean หรือถ้าใน Spring Version ใหม่ๆจะเป็น Configuration Class เป็น Java ของเดิมเป็น XML ครับ
- Java Style
package com.debuggingsoft.HelloConsoleWorld.configuration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Description; import com.debuggingsoft.HelloConsoleWorld.domain.HelloConsoleWorld; import com.debuggingsoft.HelloConsoleWorld.domain.HelloConsoleWorldImpl; @Configuration public class HelloConsoleWorldConfig { @Bean(name="helloConsoleWorldBean") @Description("This is a sample HelloConsoleWorld Bean") public HelloConsoleWorld helloWorld() { return new HelloConsoleWorldImpl(); } }
- XML Style
- Java Style
- สร้าง Main เพื่อ run as Java Application
- @Annotation Style
package com.debuggingsoft.HelloConsoleWorld; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.support.AbstractApplicationContext; import com.debuggingsoft.HelloConsoleWorld.configuration.HelloConsoleWorldConfig; import com.debuggingsoft.HelloConsoleWorld.domain.HelloConsoleWorld; public class AppMain { public static void main(String args[]) { AbstractApplicationContext context = new AnnotationConfigApplicationContext(HelloConsoleWorldConfig.class); HelloConsoleWorld bean = (HelloConsoleWorld) context.getBean("helloConsoleWorldBean"); bean.sayHello("Spring 4.x Annotation by Chatri Ngambenchawong ); context.close(); } }
- XML Config Style
package com.debuggingsoft.HelloConsoleWorld; import org.springframework.context.support.AbstractApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.debuggingsoft.HelloConsoleWorld.domain.HelloConsoleWorld; public class AppMain { public static void main(String args[]) { AbstractApplicationContext context = new ClassPathXmlApplicationContext("helloconsoleworld-config.xml"); HelloConsoleWorld bean = (HelloConsoleWorld) context.getBean("helloConsoleWorldBean"); bean.sayHello("Spring 4.x XML Config by Chatri Ngambenchawong"); context.close(); } }
- @Annotation Style
- สร้าง POJO Interface และ Class กันครับ
- ทดสอบ Run ครับ
จบแล้วครับ โดย Code ผมแปะไว้ใน Git ครับ (ได้มีโอกาสใช้สักที 555) หลายคนอาจจะงงว่า แต่ละอันที่ผมใช้ มัน คือ อะไร เดี๋ยวบทความตอนหน้า ผมอธิบายถึงแก่นของ Spring เท่าที่รู้ครับ
Discover more from naiwaen@DebuggingSoft
Subscribe to get the latest posts sent to your email.