- Java 1.8+
- Maven 3+
- Modern Web browser : because web interfaces are implemented with HTML5 / Vue.js
mvn test
- To check test coverage: open
./target/jacoco-ut/index.html
in web browser.
mvn spring-boot:run
- Open
http://localhost:8080
in your web browser.- Default User: ID=
test
Password=test
.
- Default User: ID=
- (Run
mvn spring-boot:run
) - Open
http://localhost:8080/swagger-ui.html
to check Swagger-UI.
- Can create new user, change password of user and activate/deactive user account,
- See
admin-controller
-section of Swagger definition. - Default Admin: ID=
admin
Password=admin
- If you really needs to add new admin account, please add an entry in
./src/main/resources/db/migration/hsqldb/V1.001__create_users.sql
like one foradmin
. (Currently adding admin account through API-endpoint is not supported)
- See
curl -v -XPOST http://admin:admin@localhost:8080/v1/admin/new-user/foobar
: creates new deactivated user account with random-generated-password.curl -v -XPATCH http://admin:admin@localhost:8080/v1/admin/activate-user/foobar\?activeness\=true
: activate account.curl -v -XPOST http://admin:admin@localhost:8080/v1/admin/user-password/foobar -dfoobar -H"Content-Type: text/plain"
: set password
- Spring Boot
- Flyway : Hibernate DDL 자동생성 대신에 직접 스키마 생성하고 마이그레이션 가능하도록 적용.
- Spring Security : 로그인 기능을 위해 사용
- Guava, Commons-io, Commons-lang3 : Java 기본 라이브러리로 사용
- SpringFox Swagger2 : Swagger2
- Javafaker : 간단히 랜덤 아이디, 이메일 등 생성하기 위해 사용
- JaCoCo : Test Code Coverage Report 생성위해 Maven 플러그인으로 사용
- HSQLDb : 애플리케이션 디비로 인메모리 디비 구현으로 사용
- JUnit 4, Mockito, Assertj : 테스트케이스 작성에 사용, spring-boot-starter-test 의존성으로 사용 및 WebMVC등을 위한
spring-*-test
등도 함께 사용