Tìm hiểu về spring boot - Bài 1: Khởi tạo dự án

26 tháng 06, 2024 - 2255 lượt xem

Sau loạt bài về spring core, giờ là lúc chúng ta sẽ cùng nhau tìm hiểu về spring boot. Nếu chúng ta đã nắm chắc spring core rồi thì spring boot cũng không còn có gì khó hiểu cả. Trong bài này, Dũng sẽ cùng các bạn khởi tạo một dự án sử dụng spring boot nhé.

Khởi tạo module

Chúng ta sẽ khởi tạo một module có tên spring-boot-hello-world.

Cấu hình dự án

Chúng ta sẽ cần thay đổi tập tin spring-boot-hello-world/pom.xml như sau:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>vn.techmaster</groupId>
        <artifactId>mastering-spring-boot</artifactId>
        <version>1.0.0</version>
    </parent>

    <artifactId>spring-boot-hello-world</artifactId>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>3.3.1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
    </dependencies>
</project>

Ở đây có một điểm thú vị đó là chúng ta đang sử dụng spring-boot-dependencies, đây là một tiện ích của maven và spring boot nhằm cung cấp một thư viện chứa sẵn các phiên bản của một số các thư viện hay được dùng với phiên bản hiện tại của spring boot ví dụ:

<activemq.version>6.1.2</activemq.version>
<angus-mail.version>2.0.3</angus-mail.version>
<artemis.version>2.33.0</artemis.version>

Cá nhân mình rất thích tiện ích này vì vốn dĩ việc quản lý các thư viện phụ thuộc để tương thích được với nhau với spring nói riêng và các thư viện khác nói chung là cả một vấn đề nan giải.

Khởi chạy chương trình

Chúng ta có thể khởi chạy chương trình thông qua lớp HelloWorldStartUp có mã nguồn như sau:

package vn.techmaster.hello_world;

import org.springframework.boot.SpringApplication;

public class HelloWorldStartUp {

    public static void main(String[] args) {
        SpringApplication.run(HelloWorldStartUp.class);
    }
}

Kết quả chúng ta nhận được là:


  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/

 :: Spring Boot ::                (v3.3.1)

2024-06-26T08:35:41.512+07:00  INFO 1137 --- [           main] v.t.hello_world.HelloWorldStartUp        : Starting HelloWorldStartUp using Java 17.0.7 with PID 1137 (/Users/tvd12/Documents/techmaster/mastering-spring-boot/spring-boot-hello-world/target/classes started by tvd12 in /Users/tvd12/Documents/techmaster/mastering-spring-boot)
2024-06-26T08:35:41.516+07:00  INFO 1137 --- [           main] v.t.hello_world.HelloWorldStartUp        : No active profile set, falling back to 1 default profile: "default"
2024-06-26T08:35:41.737+07:00  INFO 1137 --- [           main] v.t.hello_world.HelloWorldStartUp        : Started HelloWorldStartUp in 0.68 seconds (process running for 1.215)

Chương trình của chúng ta sẽ dừng lại ngay sau khi khởi động xong vì chúng ta chưa cài đặt bất cứ thứ gì hoặc sử dụng bất cứ thứ gì ngoài thư viện spring-boot-starter.

Tổng kết

Như vậy chúng ta đã cùng nhau:

  1. Tạo và cấu hình một dự án sử dụng spring boot.
  2. Khởi chạy một chương trình đơn giản sử dụng spring boot.

Cám ơn bạn đã quan tâm đến bài viết|video này. Để nhận được thêm các kiến thức bổ ích bạn có thể:

  1. Đọc các bài viết của TechMaster trên facebook: https://www.facebook.com/techmastervn
  2. Xem các video của TechMaster qua Youtube: https://www.youtube.com/@TechMasterVietnam nếu bạn thấy video/bài viết hay bạn có thể theo dõi kênh của TechMaster để nhận được thông báo về các video mới nhất nhé.
  3. Chat với techmaster qua Discord: https://discord.gg/yQjRTFXb7a

Bình luận

avatar
DevSecOps Edu VN 2024-06-30 03:27:09.956258 +0000 UTC

có bài nào về kiến trúc java không?

Avatar
* Vui lòng trước khi bình luận.
Ảnh đại diện
  0 Thích
0