- Java: 17
- SpringBoot: 3.2
- MySQL: any
- Spring Web
- Spring Security
- Spring Data JDBC
- Spring Integration Test
- /web 內的 WebPage 沒有權限管控, 方便測試 WebPage
- /web/hello 範例頁
- controller 位於 src/main/java/com.exmple.../controller/WebHomeController
- view page 位於 src/main/resources/templates/index.html
- 功能介於 JDBC 與 Spring Data 之間
- JDBC: 使用 SQL query, 回傳結果為簡單的 DataRow
- Spring Data: 類似 .NET Entity Framework
- Spring Data JDBC: 強調簡化 Spring Data, 主要是以 DDD (Domain Driven Desgin) 的需求來設計。
- 參考說明: Spring Data JDBC
- 打閞設定檔: src/main/resources/application-test.properties
spring.datasource.url=jdbc:mysql://localhost/auto
spring.datasource.username=root
spring.datasource.password=henge
spring.sql.init.mode=always
logging.level.com.example.jdbcsecurity=TRACE
logging.level.org.springframework.jdbc=DEBUG
- 確認資料庫已存, i.e., auto, 同時 spring.sql.init.mode=always
- 執行主程式
- 執行後, 資料庫表格與資料應可建立完成, 產生資料的SQL檔: schema.sql, data.sql
- 打閞設定檔: src/main/resources/application-test.properties, 修改spring.sql.init.mode=never
spring.datasource.url=jdbc:mysql://localhost/auto
spring.datasource.username=root
spring.datasource.password=henge
spring.sql.init.mode=never
logging.level.com.example.jdbcsecurity=TRACE
logging.level.org.springframework.jdbc=DEBUG
-
測試網站
- 使用者:
- username: admin, password: admin, role: admin
- username: henge, password: henge, role: user
- 可用Url:
- 使用者:
-
整合測試