Ví dụ về mùa xuân - Hello World
Hãy để chúng tôi bắt đầu lập trình thực tế với Spring Framework. Trước khi bắt đầu viết ví dụ đầu tiên bằng cách sử dụng Spring framework, bạn phải đảm bảo rằng bạn đã thiết lập đúng môi trường Spring như đã giải thích trong Chương Thiết lập Môi trường - Spring . Chúng tôi cũng giả định rằng bạn có một chút kiến thức về Eclipse IDE.
Bây giờ chúng ta hãy tiến hành viết một ứng dụng mùa xuân đơn giản, nó sẽ in "Hello World!" hoặc bất kỳ thông báo nào khác dựa trên cấu hình được thực hiện trong tệp Cấu hình Đậu Mùa Xuân.
Bước 1 - Tạo dự án Java
Bước đầu tiên là tạo một Dự án Java đơn giản bằng Eclipse IDE. Làm theo tùy chọnFile → New → Project và cuối cùng chọn Java Projectwizard từ danh sách wizard. Bây giờ đặt tên cho dự án của bạn làHelloSpring bằng cách sử dụng cửa sổ thuật sĩ như sau:
Khi dự án của bạn được tạo thành công, bạn sẽ có nội dung sau trong Project Explorer -
Bước 2 - Thêm Thư viện Bắt buộc
Bước thứ hai, chúng ta hãy thêm Spring Framework và các thư viện API ghi nhật ký chung vào dự án của mình. Để làm điều này, hãy nhấp chuột phải vào tên dự án của bạnHelloSpring và sau đó làm theo tùy chọn sau có sẵn trong menu ngữ cảnh - Build Path → Configure Build Path để hiển thị cửa sổ Java Build Path như sau:
Bây giờ sử dụng Add External JARs nút có sẵn dưới Libraries để thêm các JAR cốt lõi sau từ thư mục cài đặt Spring Framework và Common Logging -
commons-logging-1.1.1
spring-aop-4.1.6.RELEASE
spring-aspects-4.1.6.RELEASE
spring-beans-4.1.6.RELEASE
spring-context-4.1.6.RELEASE
spring-context-support-4.1.6.RELEASE
spring-core-4.1.6.RELEASE
spring-expression-4.1.6.RELEASE
spring-instrument-4.1.6.RELEASE
spring-instrument-tomcat-4.1.6.RELEASE
spring-jdbc-4.1.6.RELEASE
spring-jms-4.1.6.RELEASE
spring-messaging-4.1.6.RELEASE
spring-orm-4.1.6.RELEASE
spring-oxm-4.1.6.RELEASE
spring-test-4.1.6.RELEASE
spring-tx-4.1.6.RELEASE
spring-web-4.1.6.RELEASE
spring-webmvc-4.1.6.RELEASE
spring-webmvc-portlet-4.1.6.RELEASE
spring-websocket-4.1.6.RELEASE
Bước 3 - Tạo tệp nguồn
Bây giờ chúng ta hãy tạo các tệp nguồn thực tế trong HelloSpringdự án. Đầu tiên, chúng ta cần tạo một gói có têncom.tutorialspoint. Để làm điều này, nhấp chuột phải vàosrc trong phần trình khám phá gói và làm theo tùy chọn - New → Package.
Tiếp theo chúng ta sẽ tạo HelloWorld.java và MainApp.java các tệp trong gói com.tutorialspoint.
Đây là nội dung của HelloWorld.java tập tin -
package com.tutorialspoint;
public class HelloWorld {
private String message;
public void setMessage(String message){
this.message = message;
}
public void getMessage(){
System.out.println("Your Message : " + message);
}
}
Sau đây là nội dung của tệp thứ hai MainApp.java -
package com.tutorialspoint;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainApp {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml");
HelloWorld obj = (HelloWorld) context.getBean("helloWorld");
obj.getMessage();
}
}
Hai điểm quan trọng cần lưu ý sau đây về chương trình chính:
Bước đầu tiên là tạo bối cảnh ứng dụng nơi chúng tôi đã sử dụng API khung ClassPathXmlApplicationContext(). API này tải tệp cấu hình bean và cuối cùng dựa trên API được cung cấp, nó sẽ đảm nhận việc tạo và khởi tạo tất cả các đối tượng, tức là các bean được đề cập trong tệp cấu hình.
Bước thứ hai được sử dụng để lấy đậu cần thiết bằng cách sử dụng getBean()phương pháp của bối cảnh đã tạo. Phương thức này sử dụng bean ID để trả về một đối tượng chung chung, đối tượng này cuối cùng có thể được ép vào đối tượng thực. Khi bạn có một đối tượng, bạn có thể sử dụng đối tượng này để gọi bất kỳ phương thức lớp nào.
Bước 4 - Tạo tệp cấu hình Bean
Bạn cần tạo tệp Cấu hình Bean, là tệp XML và hoạt động như một chất kết dính các hạt đậu, tức là các lớp lại với nhau. Tệp này cần được tạo trongsrc thư mục như được hiển thị trong ảnh chụp màn hình sau -
Thông thường các nhà phát triển đặt tên tệp này là Beans.xml, nhưng bạn được độc lập để chọn bất kỳ tên nào bạn thích. Bạn phải đảm bảo rằng tệp này có sẵn trong CLASSPATH và sử dụng cùng tên trong ứng dụng chính trong khi tạo bối cảnh ứng dụng như được hiển thị trong tệp MainApp.java.
Beans.xml được sử dụng để gán các ID duy nhất cho các bean khác nhau và để kiểm soát việc tạo các đối tượng với các giá trị khác nhau mà không ảnh hưởng đến bất kỳ tệp nguồn Spring nào. Ví dụ: bằng cách sử dụng tệp sau, bạn có thể chuyển bất kỳ giá trị nào cho biến "message" và bạn có thể in các giá trị khác nhau của message mà không ảnh hưởng đến các tệp HelloWorld.java và MainApp.java. Hãy để chúng tôi xem nó hoạt động như thế nào -
<?xml version = "1.0" encoding = "UTF-8"?>
<beans xmlns = "http://www.springframework.org/schema/beans"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id = "helloWorld" class = "com.tutorialspoint.HelloWorld">
<property name = "message" value = "Hello World!"/>
</bean>
</beans>
Khi ứng dụng Spring được tải vào bộ nhớ, Framework sẽ sử dụng tệp cấu hình ở trên để tạo tất cả các bean được xác định và gán cho chúng một ID duy nhất như được định nghĩa trong <bean>nhãn. Bạn có thể dùng<property> để chuyển các giá trị của các biến khác nhau được sử dụng tại thời điểm tạo đối tượng.
Bước 5 - Chạy chương trình
Khi bạn đã hoàn tất việc tạo tệp cấu hình nguồn và tệp, bạn đã sẵn sàng cho bước này, đó là biên dịch và chạy chương trình của bạn. Để thực hiện việc này, hãy giữ cho tab tệp MainApp.Java hoạt động và sử dụngRun tùy chọn có sẵn trong IDE Eclipse hoặc sử dụng Ctrl + F11 để biên dịch và chạy MainAppứng dụng. Nếu mọi thứ đều ổn với ứng dụng của bạn, điều này sẽ in ra thông báo sau trong bảng điều khiển của Eclipse IDE:
Your Message : Hello World!
Xin chúc mừng, bạn đã tạo thành công Đơn đăng ký mùa xuân đầu tiên của mình. Bạn có thể thấy sự linh hoạt của ứng dụng Spring ở trên bằng cách thay đổi giá trị của thuộc tính "message" và giữ nguyên cả hai tệp nguồn.