/spring-boot-personnel-management

๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ผ ์ธ์‚ฌ ๊ด€๋ฆฌ ์‚ฌ์ดํŠธ (๊ด€๋ฆฌ์ž)

Primary LanguageJavaMIT LicenseMIT

Personnel Management(์ธ์‚ฌ ๊ด€๋ฆฌ ๊ด€๋ฆฌ์ž ์‚ฌ์ดํŠธ)


Overivew

  • ์ธ์‚ฌ๋‹ด๋‹น์ž๊ฐ€ ๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ์—…๋ฌด์— ํ•„์š”๋กœ ํ•  ๊ฒƒ ๊ฐ™์€ ์ผ๋ถ€ ๊ธฐ๋Šฅ๋“ค์„ ๊ตฌํ˜„ํ•˜์˜€๋‹ค
  • ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง์›๋“ค์˜ ์ •๋ณด๋“ค์— ๋Œ€ํ•ด์„œ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๊ณ  ์ง์›๋“ค์˜ ์ถœ๊ทผ ์ƒํƒœ๋ฅผ ํ•œ๋ˆˆ์— ์‰ฝ๊ฒŒ ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ๋„๋ก ํ‘œํ˜„ํ•˜์˜€๋‹ค
  • ๊ฐ ์ง์›๋“ค์— ๋Œ€ํ•œ ๊ธ‰์—ฌ๊ด€๋ฆฌ์™€ ์ง„ํ–‰์ค‘์ธ ๋˜๋Š” ์ง„ํ–‰๋˜์—ˆ๋˜ ์—…๋ฌด๋“ค์— ๋Œ€ํ•ด์„œ ๋ณผ ์ˆ˜ ์žˆ๊ณ  ๊ฐ ์—…๋ฌด์— ๋Œ€ํ•ด ์ง์›๋“ค์— ์ ์ˆ˜ ๋˜๋Š” ์ฝ”๋ฉ˜ํŠธ๋ฅผ ๋‹ฌ์•„ ์„ฑ๊ณผ๊ด€๋ฆฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค
  • ์ง์›๋“ค์— ๋Œ€ํ•ด์„œ ์ธ์‚ฌ๋ฐœ๋ น์„ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ํ•ด๋‹น ๋‚ ์งœ๊ฐ€ ๋˜๋ฉด ์ž๋™์œผ๋กœ ์ธ์‚ฌ ์ด๋™์ด ์ด๋ฃจ์–ด์ง€๋ฉฐ ํ˜„์žฌ๊นŒ์ง€ ์ด๋ฃจ์–ด์ง„ ์ธ์‚ฌํ˜„ํ™ฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค

Usage

React

  • package.json ์ˆ˜์ • (ํ”„๋กœ์ ํŠธ ๋‚ด์˜ fronted ํด๋” ๋‚ด์— ์กด์žฌ)

"proxy": http://<ํ•ด๋‹น์ฃผ์†Œ>:8080/
ex) "proxy": http://localhost:8080/
  • ์ข…์†์„ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ ๋ฐ ํ”„๋ก ํŠธ๋‹จ ์„œ๋ฒ„ ์‹คํ–‰

1. npm install
2. npm start

Spring Boot

  • application.yaml ์ˆ˜์ • (/src/main/resources ํด๋” ๋‚ด์— ์กด์žฌ)

spring:
  datasource:
    url: <ํ•ด๋‹น DB ์ฃผ์†Œ>
    username: <DB ID>
    password: <DB PW>
    driver-class-name: <ํ•ด๋‹น DB ๋“œ๋ผ์ด๋ฒ„>
    ex) driver-class-name: org.h2.driver (H2)
        driver-class-name: com.mysql.cj.jdbc.Driver (MYSQL)
  • Build And Run

1. ./gradlew build -x test
2. cp GeoLite2-City.mmdb build/libs
3. java -jar -Djava.net.perferIPv4Stack=true build/libs/<์ƒ์„ฑ๋œ jar ํŒŒ์ผ>
4. localhost:8080/init ์ ‘์†  // ๋”๋ฏธ๋ฐ์ดํ„ฐ ์ƒ์„ฑ

Preview

์ „์ฒด์ ์ธ ๋ทฐ

๋ชจ๋“ ๋ทฐ

๊ทผํƒœ

๊ทผํƒœ

์ง์›

์ง์›

์ธ์‚ฌํ˜„ํ™ฉ

์ธ์‚ฌํ˜„ํ™ฉ


๊ธฐ๋Šฅ ๋ชฉ๋ก

๋กœ๊ทธ์ธ

No ๊ธฐ๋Šฅ ์„ค๋ช…
1 ๋กœ๊ทธ์ธ ๋กœ๊ทธ์ธ ์‹œ jwt ํ† ํฐ ๋ฐœ๊ธ‰ ๋ฐ jwtํ† ํฐ์„ ์ด์šฉํ•˜์—ฌ ๋กœ๊ทธ์ธ ์‹œ๋„
2 ๋กœ๊ทธ์•„์›ƒ -

๊ทผํƒœ๊ด€๋ฆฌ

No ๊ธฐ๋Šฅ ์„ค๋ช…
1 ์กฐํšŒ ์ถœ๊ทผ, ํ‡ด๊ทผ, ๊ฒฐ๊ทผ, ์ง€๊ฐ ๋“ฑ ์ƒํƒœ๋ณ„ ์กฐํšŒ, ๋‚ ์งœ ๋˜๋Š” ์‚ฌ์› ์ด๋ฆ„์„ ํ†ตํ•œ ์กฐํšŒ
2 ์ตœ์‹ ํ™” ๋งค์ผ ์ž์ •์— ํœด๊ฐ€, ๋ณ‘๊ฐ€ ๋“ฑ ๊ทผํƒœ ๊ธฐ๋ก ๋™๊ธฐํ™”
3 ์ถœํ‡ด๊ทผ ์ถœ๊ทผ ๋˜๋Š” ํ‡ด๊ทผ์‹œ ์‹œ๊ฐ„๊ณผ ํ•ด๋‹น ์ง์› ์ƒํƒœ ๋ณ€๊ฒฝ

๊ธ‰์—ฌ๊ด€๋ฆฌ

No ๊ธฐ๋Šฅ ์„ค๋ช…
1 ์กฐํšŒ ์‚ฌ์› ์ด๋ฆ„์„ ํ†ตํ•œ ์กฐํšŒ
2 ๊ธ‰์—ฌ ์ˆ˜์ • -

์—…๋ฌด๊ด€๋ฆฌ

No ๊ธฐ๋Šฅ ์„ค๋ช…
1 ์กฐํšŒ ์—…๋ฌด๋ช…, ์ง์›์ด๋ฆ„, ๋ถ€์„œ๋ช…์„ ํ†ตํ•œ ์กฐํšŒ
2 ์—…๋ฌด ์ถ”๊ฐ€ -
3 ์—…๋ฌด ์ˆ˜์ • -

์„ฑ๊ณผ๊ด€๋ฆฌ

No ๊ธฐ๋Šฅ ์„ค๋ช…
1 ์กฐํšŒ ์—…๋ฌด๋ช…, ์ง์›์ด๋ฆ„, ๋ถ€์„œ๋ช…์„ ํ†ตํ•œ ์กฐํšŒ
2 ์„ฑ๊ณผ ์ˆ˜์ • ๊ฐ ์—…๋ฌด์— ๋Œ€ํ•ด์„œ ์„ฑ๊ณผ์ ์ˆ˜์™€ ์ฝ”๋ฉ˜ํŠธ๋ฅผ ๋งค๊น€

์ง์›๊ด€๋ฆฌ

No ๊ธฐ๋Šฅ ์„ค๋ช…
1 ์กฐํšŒ ์ง์›์ด๋ฆ„, ๋ถ€์„œ๋ช…์„ ํ†ตํ•œ ์กฐํšŒ
2 ์ง์› ์ถ”๊ฐ€ -
3 ์ง์› ์ˆ˜์ • -

์ธ์‚ฌํ˜„ํ™ฉ๊ด€๋ฆฌ

No ๊ธฐ๋Šฅ ์„ค๋ช…
1 ์กฐํšŒ ์ง์›์ด๋ฆ„, ์ง๊ธ‰, ๋ถ€์„œ๋ช…์„ ํ†ตํ•œ ์กฐํšŒ
2 ์ธ์‚ฌ ๋ฐœ๋ น ์›ํ•˜๋Š” ๋‚ ์งœ์— ์›ํ•˜๋Š” ๋ถ€์„œ์™€ ์ง๊ธ‰์œผ๋กœ ์ธ์‚ฌ ๋ฐœ๋ น ๋“ฑ๋ก
3 ์ตœ์‹ ํ™” ๋งค์ผ ์ž์ • ์ธ์‚ฌ ๋ฐœ๋ น์ด ํ•„์š”ํ•œ ์ง์›๋“ค ์ธ์‚ฌ ์ด๋™

Develop Enviroment

  • Java jdk 11
  • Spring Boot 2.4.1
  • Gradle
  • H2 Database
  • npm 6.14.5

Technical Stack

  • Spring Boot
  • JPA
  • Spring Security
  • JWT

Contributors

  • Back-End

    • ํ•˜์ฃผํ˜„
      • ๋กœ๊ทธ์ธ
      • ๊ทผํƒœ
      • ์ง์›
      • ์ธ์‚ฌํ˜„ํ™ฉ
    • ์†ก์˜ˆ์€
      • ๊ธ‰์—ฌ
      • ์—…๋ฌด
      • ์„ฑ๊ณผ
      • ํ”„๋กœํ•„
  • Front-End

    • ๊น€๋‹ค์œค
    • ๋ณด์€