Cấu trúc và Cấu hình Dự án Mã Nguồn Mở Lavagna

Cấu trúc thư mục dự án

Dự án Lavagna có cấu trúc thư mục như sau:

lavagna/
├── bin/
│   ├── start.sh
│   └── start.bat
├── conf/
│   ├── app.properties
│   └── logging.properties
├── lib/
│   └── (các thư viện phụ thuộc)
├── web/
│   ├── css/
│   ├── fonts/
│   ├── images/
│   ├── js/
│   └── templates/
├── scripts/
│   └── (các tập lệnh khác)
├── src/
│   ├── main/
│   │   ├── java/
│   │   └── resources/
│   └── test/
│       ├── java/
│       └── resources/
└── README.md

Giải thích cấu trúc:

  • bin/: Chứa các tập lệnh để khởi động ứng dụng, start.shstart.bat tương ứng cho hệ điều hành Unix và Windows.
  • conf/: Chứa các tệp cấu hình của dự án, ví dụ app.propertieslogging.properties.
  • lib/: Chứa các thư viện (JAR) mà dự án phụ thuộc vào.
  • web/: Chứa các tài nguyên phía trình duyệt (front-end), bao gồm CSS, phông chữ, hình ảnh, JavaScript và tệp mẫu.
  • scripts/: Chứa các tập lệnh hỗ trợ khác cho dự án.
  • src/: Chứa mã nguồn của dự án, được chia thành hai phần main (mã nguồn chính) và test (mã nguồn kiểm thử).
  • README.md: Tài liệu hướng dẫn chính của dự án.

Tệp khởi động dự án

Các tệp khởi động nằm trong thư mục bin/.

start.sh (Hệ điều hành Unix)

start.sh là một tập lệnh Shell dùng để khởi động Lavagna trên các hệ thống Unix. Nội dung của nó có thể như sau:

#!/bin/bash

# Định nghĩa đường dẫn đến thư mục cài đặt Java
JAVA_HOME_DIR=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$JAVA_HOME_DIR/bin:$PATH

# Khởi động ứng dụng Lavagna
java -jar ../lib/lavagna-app.jar

start.bat (Hệ điều hành Windows)

start.bat là một tập lệnh Batch dùng để khởi động Lavagna trên Windows. Nội dung của nó có thể như sau:

@echo off

REM Định nghĩa đường dẫn đến thư mục cài đặt Java
set JAVA_HOME_DIR=C:\Program Files\Java\jdk-11
set PATH=%JAVA_HOME_DIR%\bin;%PATH%

REM Khởi động ứng dụng Lavagna
java -jar ..\lib\lavagna-app.jar

Tệp cấu hình dự án

Các tệp cấu hình chính nằm trong thư mục conf/.

app.properties

Đây là tệp cấu hình chính, chứa các cài đặt như kết nối cơ sở dữ liệu, cổng máy chủ, và cấp độ ghi log. Ví dụ:

# Cấu hình cơ sở dữ liệu
spring.datasource.url=jdbc:h2:mem:lavagna
spring.datasource.username=sa
spring.datasource.password=

# Cổng máy chủ
server.port=8081

# Cấu hình ghi log
logging.level.root=DEBUG

logging.properties

Tệp này dùng để định nghĩa cách ghi log, bao gồm định dạng, cấp độ và nơi xuất ra. Ví dụ:

log4j.rootLogger=DEBUG, file

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=./logs/lavagna.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1} - %m%n

Thẻ: Java Spring Boot H2 Database Shell Script Batch Script

Đăng vào ngày 9 tháng 6 lúc 04:24