From e3ac42f29d251cc02ded922adbcc6f1fe61d64f1 Mon Sep 17 00:00:00 2001 From: Yewon2ee Date: Mon, 19 Aug 2024 04:35:14 +0900 Subject: [PATCH 1/2] submit --- src/main/resources/templates/members/loginForm.html | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/main/resources/templates/members/loginForm.html diff --git a/src/main/resources/templates/members/loginForm.html b/src/main/resources/templates/members/loginForm.html new file mode 100644 index 0000000..e69de29 From ccf2d18dca597ad819a0db60654037a7a3e16537 Mon Sep 17 00:00:00 2001 From: Yewon2ee Date: Mon, 19 Aug 2024 13:44:30 +0900 Subject: [PATCH 2/2] Add files or update files --- .gradle/7.6.1/checksums/checksums.lock | Bin 0 -> 17 bytes .gradle/7.6.1/checksums/md5-checksums.bin | Bin 0 -> 30247 bytes .gradle/7.6.1/checksums/sha1-checksums.bin | Bin 0 -> 44417 bytes .../dependencies-accessors.lock | Bin 0 -> 17 bytes .../dependencies-accessors/gc.properties | 0 .../executionHistory/executionHistory.bin | Bin 0 -> 56443 bytes .../executionHistory/executionHistory.lock | Bin 0 -> 17 bytes .gradle/7.6.1/fileChanges/last-build.bin | Bin 0 -> 1 bytes .gradle/7.6.1/fileHashes/fileHashes.bin | Bin 0 -> 19947 bytes .gradle/7.6.1/fileHashes/fileHashes.lock | Bin 0 -> 17 bytes .../7.6.1/fileHashes/resourceHashesCache.bin | Bin 0 -> 19245 bytes .gradle/7.6.1/gc.properties | 0 .../buildOutputCleanup.lock | Bin 0 -> 17 bytes .gradle/buildOutputCleanup/cache.properties | 2 + .gradle/buildOutputCleanup/outputFiles.bin | Bin 0 -> 18875 bytes .gradle/file-system.probe | Bin 0 -> 8 bytes .gradle/vcs-1/gc.properties | 0 .idea/.gitignore | 3 ++ .idea/.name | 1 + .idea/compiler.xml | 6 +++ .idea/gradle.xml | 16 ++++++++ .idea/jarRepositories.xml | 20 ++++++++++ .idea/misc.xml | 5 +++ .idea/vcs.xml | 7 ++++ .../landlog/controller/MemberController.class | Bin 2085 -> 3985 bytes .../landlog/controller/MemberForm.class | Bin 599 -> 991 bytes .../com/landvibe/landlog/domain/Member.class | Bin 990 -> 1455 bytes .../landlog/repository/MemberRepository.class | Bin 728 -> 777 bytes .../repository/MemoryMemberRepository.class | Bin 3435 -> 3969 bytes .../landlog/service/MemberService.class | Bin 2647 -> 2973 bytes build/resources/main/templates/home.html | 1 + .../main/templates/members/blogList.html | 10 +++++ .../templates/members/createMemberForm.html | 10 ++++- .../main/templates/members/loginForm.html | 17 +++++++++ .../MemoryMemberRepository.class.uniqueId0 | Bin 0 -> 3969 bytes .../compileJava/previous-compilation-data.bin | Bin 20876 -> 20918 bytes spring-summer-coding-shop | 1 + .../landlog/controller/MemberController.java | 36 ++++++++++++++++++ .../landlog/controller/MemberForm.java | 12 ++++++ .../com/landvibe/landlog/domain/Member.java | 28 ++++++++++++-- .../landlog/repository/MemberRepository.java | 3 ++ .../repository/MemoryMemberRepository.java | 9 +++++ .../landlog/service/MemberService.java | 12 ++++++ src/main/resources/templates/home.html | 1 + .../resources/templates/members/blogList.html | 10 +++++ .../templates/members/createMemberForm.html | 10 ++++- .../templates/members/loginForm.html | 17 +++++++++ 47 files changed, 230 insertions(+), 7 deletions(-) create mode 100644 .gradle/7.6.1/checksums/checksums.lock create mode 100644 .gradle/7.6.1/checksums/md5-checksums.bin create mode 100644 .gradle/7.6.1/checksums/sha1-checksums.bin create mode 100644 .gradle/7.6.1/dependencies-accessors/dependencies-accessors.lock create mode 100644 .gradle/7.6.1/dependencies-accessors/gc.properties create mode 100644 .gradle/7.6.1/executionHistory/executionHistory.bin create mode 100644 .gradle/7.6.1/executionHistory/executionHistory.lock create mode 100644 .gradle/7.6.1/fileChanges/last-build.bin create mode 100644 .gradle/7.6.1/fileHashes/fileHashes.bin create mode 100644 .gradle/7.6.1/fileHashes/fileHashes.lock create mode 100644 .gradle/7.6.1/fileHashes/resourceHashesCache.bin create mode 100644 .gradle/7.6.1/gc.properties create mode 100644 .gradle/buildOutputCleanup/buildOutputCleanup.lock create mode 100644 .gradle/buildOutputCleanup/cache.properties create mode 100644 .gradle/buildOutputCleanup/outputFiles.bin create mode 100644 .gradle/file-system.probe create mode 100644 .gradle/vcs-1/gc.properties create mode 100644 .idea/.gitignore create mode 100644 .idea/.name create mode 100644 .idea/compiler.xml create mode 100644 .idea/gradle.xml create mode 100644 .idea/jarRepositories.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/vcs.xml create mode 100644 build/resources/main/templates/members/blogList.html create mode 100644 build/resources/main/templates/members/loginForm.html create mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/MemoryMemberRepository.class.uniqueId0 create mode 160000 spring-summer-coding-shop create mode 100644 src/main/resources/templates/members/blogList.html diff --git a/.gradle/7.6.1/checksums/checksums.lock b/.gradle/7.6.1/checksums/checksums.lock new file mode 100644 index 0000000000000000000000000000000000000000..506e3238a82dccb64decc2b7c6e6bccbee701747 GIT binary patch literal 17 VcmZQ}GFr9kZah;D0~jz}0{|{t1bzSj literal 0 HcmV?d00001 diff --git a/.gradle/7.6.1/checksums/md5-checksums.bin b/.gradle/7.6.1/checksums/md5-checksums.bin new file mode 100644 index 0000000000000000000000000000000000000000..b86f990f4a068a47c626e9ef41c0cd4af68dfbed GIT binary patch literal 30247 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 literal 0 HcmV?d00001 diff --git a/.gradle/7.6.1/dependencies-accessors/dependencies-accessors.lock b/.gradle/7.6.1/dependencies-accessors/dependencies-accessors.lock new file mode 100644 index 0000000000000000000000000000000000000000..6cf48bf983d853ef8e521219446a40995650418d GIT binary patch literal 17 TcmZRcyLC$JvdYN<3{U_7G|2=B literal 0 HcmV?d00001 diff --git a/.gradle/7.6.1/dependencies-accessors/gc.properties b/.gradle/7.6.1/dependencies-accessors/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/.gradle/7.6.1/executionHistory/executionHistory.bin b/.gradle/7.6.1/executionHistory/executionHistory.bin new file mode 100644 index 0000000000000000000000000000000000000000..ba9d1868f23f84073d554e50dc83c6ac2d29fbf0 GIT binary patch literal 56443 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 literal 0 HcmV?d00001 diff --git a/.gradle/7.6.1/executionHistory/executionHistory.lock b/.gradle/7.6.1/executionHistory/executionHistory.lock new file mode 100644 index 0000000000000000000000000000000000000000..7e246be6369764d2329754cb5ed51936311e3dca GIT binary patch literal 17 TcmZQ}K4xn}(1bEso2lzu|<_gTq@Brf}Y*?eJ8EsL;AIOcINCk^V{=(p7Z?9 z*-yJKm%%VIT*WWO)0gqnLpTBhU;qq&0WbgtzyKHk17H9QfB`T72EYIq00UqE41fVJ z00#aq1|q0IbkQ(oY)#dHK`MjcxtTh!${kKR-ag-3hCUA5M1DW`v|66F?6oTg^Af_P ztz&(wI(vUXJfxBEDif!Ujzx&c}o=W!3uSn@?Or zJS2kf6?vJ>uF@`CCoqw4{V{);DBD7e>%2+0ZGl)gVIp*oAPiXD~E>M4!Ps7ytuc01SWuFaQR?02lxRU;qq&0Wbgt zzyKHk17H9QfB`T72EYIq00UqE41fVJ00zJS7ytuc01SWuFaQR?02lxRVBq;Nu!9=a zh1zUYo1xqI4y}omk%qJF)tOf={BR@JyYJq%c*id`-euQUo2=@&#Ie&ar~ds-C2p`hagPOhB63TXvT3Ivyphv$ zl6i8}TAffj1fvAAke;~W^H}!&p`7?)Ki1OLA;UI2hZ*h>Ku@ez$J)hOX?>Ne(0Vvy zbfj0^qdB(+Csb=9)=WOk8o9G%kaFxJ?a0?IZqsm9CE~jy&Y^^MG(GXNe3gA|d-S6b z4b!oHo+4S@ar2&%V2LQk`hNdR@ltJYJjakahfyM@ZK)=I^`2_4z_NgU zu3l=QNUPATu+{>)EPI{dQ z13qtSw2W6!Yb?~?C|8tVs8;5zo#R#RQAdgGqE!3KVax8TAEcrsA-6+8{r}q$R8o$Jllz8Sjl_c72)f%FCf@S8d6Ccn$@% xUvobUwwN@f?0z6_QJPjQ$0SpCjC!u_)i2;4Z_yL$_E54V|FMUXo$=2ee*>cv-s1oO literal 0 HcmV?d00001 diff --git a/.gradle/7.6.1/fileHashes/fileHashes.lock b/.gradle/7.6.1/fileHashes/fileHashes.lock new file mode 100644 index 0000000000000000000000000000000000000000..750576e4fe443c1af748588fe8f8303ebca7d4f7 GIT binary patch literal 17 TcmZSXaoZ>SE~AnG3XTE*Etmv5 literal 0 HcmV?d00001 diff --git a/.gradle/7.6.1/fileHashes/resourceHashesCache.bin b/.gradle/7.6.1/fileHashes/resourceHashesCache.bin new file mode 100644 index 0000000000000000000000000000000000000000..f6db6e16dd2d6a531cb6cd49fa9fc38fa339c48f GIT binary patch literal 19245 zcmeI%|4+#blI5#Po= znBNcK?_1nK00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##An?BkthN7;N$igi`HUaC zam{3yB`)@xX*#KcUs*!+cJ^&~GWq|YP&wrHzAF3{*DFac@prytIsKc zJ4Z|UXydV-O#`2-T(2OVXPf!8DMCJn?eYTBMdBir?qJ&o?)-hEilMRTr+>RWqfE?aCz5m+_>zC%$yv<+|)w|D0`6-@6&bol{SGSjdIS zx5u1`etXYdRG2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY>&nm~a43whWt!Pv$3?|)ab zvrVDQG^Pk=<<&OZqt~AcOLa}~{PM1qrUEyK{;rohy$IT1v8X+6XeCai+ABGk;q*d! zD)_)uPr;!s+1zdVd4sO>!WwEdcQi+aOpvA1 ziwl}pGWAu5Jv>GlWIElVq8I#=11&#ZmGxcwx_^1`h8;QdVsKZ9%28M$NYTCQ)co*D zqZi}0RwiBwjWH-4;)0pF_KEbuplfKGS(Q6~yRZ9_8>Vgry=ZV-JpFLO(R|I@y3E$7 z!ZY+j+L+y!5|~$(k>wek=9zGsUJM&G`yX$%83KxO4xcDk7fCOQRT+)#sVn@uj))7b zJu?jS!q*zp-yI)&UnIEx(c57Ci4%bvFS?7Z=c~sSKLH!j-=6>g literal 0 HcmV?d00001 diff --git a/.gradle/7.6.1/gc.properties b/.gradle/7.6.1/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 0000000000000000000000000000000000000000..d65edc0fe2b2bb787914d919ddf6ed47d73e6456 GIT binary patch literal 17 TcmZRMUE0)DrDML20Rl1rF0}*| literal 0 HcmV?d00001 diff --git a/.gradle/buildOutputCleanup/cache.properties b/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 0000000..0fad569 --- /dev/null +++ b/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Sat Aug 17 21:59:44 KST 2024 +gradle.version=7.6.1 diff --git a/.gradle/buildOutputCleanup/outputFiles.bin b/.gradle/buildOutputCleanup/outputFiles.bin new file mode 100644 index 0000000000000000000000000000000000000000..ac6c5db257817f19862b3690e3efe37536c9f0bd GIT binary patch literal 18875 zcmeI&Pe_wt9Ki8+M$Bqz2*L_M$PR*kNF*{WVG;QX;_y!dQ%Da350cR+34$(eV9+UO zR5T9*VTTnC7J;!T)MZ8>jSSf(ZSJ5$0#gsMd|%$@hj^7Fl2XhR(fOk$qWZG*_YcnvjMZQU*HjUh+u zL2p|1SJG==JljnAhc>O=9+ZA5{OR(s+2akWUzP55ef#w|)h2V + + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml new file mode 100644 index 0000000..ce1c62c --- /dev/null +++ b/.idea/gradle.xml @@ -0,0 +1,16 @@ + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..fdc392f --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..277fad1 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..40c44ba --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/build/classes/java/main/com/landvibe/landlog/controller/MemberController.class b/build/classes/java/main/com/landvibe/landlog/controller/MemberController.class index 6d0737d81e55fb06c146edb7d78387d02ce759fd..3b361150f4ce6aee7505d04461478c00b7ab0536 100644 GIT binary patch literal 3985 zcmb7GX>$}+6g@AQNl%8(!a#s=iHInZjaC$tYzSxoO+qA?sJQjaG)a@5?yd+t5=zW3)pSAGL9g&)%BK&OI) ziX^%O`Y-6~x@PJ2igr4G!6^6wU6ZD5`qKiPxuKBfyJ2Bi-vn!TTXTGGI76*o%*DH@1` z+i;7Dy;8G_nhP66sdt--eNwNBdVy#N!wN=JjAHC+uwsKNkhtKOw!ooWd`enkIMIxI z)*B^EfTAv!t&Xtha*hFPr`< zXP&Ryz9+D^+3{dsa|-L!9l}E@&R{XhPFP*sUOzVo^sMRm%=p9X7_|)NnPMqUVVSg# zq$xbgtu>W!lu82HRah3w&55BU((^bIBG5N$+QxiE_LZ}G-l8Nk>lAcrNq0@Tj)Vz+ z)uh`8;2+Q0gyGNW<+AJ;Oz*mGRft8^YQeIN4Kg-7R^Z;NgsTmR^suEk zqs%gX=Y!^Tm4+K{h_s0hU~4lFIC#yl7aXq%cXz!p2=vym2SNrV8lU`M;A1_h)pLAk zlBKZL2RGkKj||zLCFR<>J}bGr!2;bL*Rlk5w3753Hmf?)3fO7g*DPB zV7-FpTCVUg^~}7iO@U)=9bj{~G5vv!HDILU%3jpp6osIp)J2UZ!TY2Mpsf9C1gGFN zQlin@!?w|-Ni3|hJ*_oZuho`fJQNEst{Bf4&r}T056m#G2|Kvn6IRfx4&-9(Y|g1v zjm>Nxi%!KY7&E5qRs(bYc@yoI7zIXR&+yoO496#3wAL1N%yE3rclC1EtGvE0e4NH7 z_*B7X@-FzCrQ6`BX|FqLh87ZnhIl>9=mp<#FA99qOp8b{G|%&Amhm(x=g1(f8rKS3F-BDb8`-#GU=baC$>BXSe^u^YP>o!!{OSKTdvFS|qAb!?+p zg~{_%e7R2H0?&S$`-yUuL(SE-7FVqpVp{ed2$9t%Nd z&dOMa7&C$51hY3qKc>mtqXDkr&_Eqm7B7-llBC%PR|;FX=VcyM!w^bdp+sUxLHvy! z3SO;w|00FW-Z$v`I^N*7-VWM-lfSn-9wsZ~ZM;Kc5>bhxr1U_9Xl^94G#a6KM55_z zs>KsL`y?y*R1;qZ>PQ9x|0Q30uuT6un*5iNR~ihC_x4?e<~<(Sf%k( delta 661 zcmY+A+fEZv6o&uZDV^!e0KtEkm-$#!f^ZL*EC4lGH{bha=Rt#|+qc+AcE*%k- ze?=*p5HM@ykCj^appnm+h#_U;J|4(KFcnP;=+$y{zg(+Z$RMj@+QviVq@^8c24;RA z2Csw}YJU+(${%`C?uPPmGQ1=mJ?%J!&wF3@az~BIVXjcAH{=)HlT~9*?uS3bF%AO( z@(H-GVABiI@4;hcpU8qW(tOHXA2hxWYXb=L=PaWkzt6-o%rOE?zh7XUeve?FL>Dlu zgy>H*611Az`;#UBr5o~7L%yEfE_d|utoAXp*yOYH9-__@3cSEeqA0yjlu%IK1^VBe zVxXAKwBWW7ojQS@ZNV$K6Ssq0q5~sb*5ev6+(XGn$=! zmf8Og>dk*lt61wWRcRGdL@~6GEN0xv>=~vsl-x%OM)S9BUo*iWN!~Jb2PD!3iC`TY q3S!ah#eaO+!k*OWQ-@R`^~Dm#UlsMWV`m_)`@V)^H6$e!hHfjQ`6L~I!Sf-QU+vr4vnLzDx zlt$UEK&96ox~Ri-(D3j8o`4_fgsaEr(MaWoSWkjbr0qLz5wGmB=XO$RiJJj#N%B#?<{qkEy#kh*EWM#;D)rD9-V8DC40t z5#Q&*YIYn=1wIb`pWwEDGf~+=PO{VM-=|3h)4PK8-u--kNDJIo*|8oUN<%oAGDMUxh3^1D!11 zUG8aPo=Q6u}9ZUK2g-u8b%{LITbWI4?s>twxI0lIiXH-Qa2CHr^tC7d6Wv`{oV zrOnUqoT|8ampn7A`5&&}6r=gqfwg2vhXZGV4VZU9!8<$jl!*L@-Lt-v5gV7&!_MMUgSEy+T**%?yuVbCRNTdh4}s14|2 zKqW{pB>snwa0fP%(yP@tvI+#n0OD|CZEs+5*Wt+IC#D|MB`D0R!0M*@im zi3Jb9Lm~b-wsOM}Y&_>O^Pg`n{`LFEPXKSwNF#=L5{3m635CsT`_66->`}k@p>yqY zeTBqpcjWrV3h_#{ox&PYNu({T!&2DmdPDK<-MJk{F9u$}+4F|BJ8GUf!;Ujnh`Buq zw`R&MZ`3~$rL2VwY$_Ndd*~?S=X@^wu^W2jEfmDdbSOKJxRQk}If;M#L}}x#*JJcX z%N;pqxANwt-5F>-uWJw5_Sltucxd=n?v28J>)+@{3MZ90Ce1y!4;laGq}pZ)P96Ws z>z&(UX6rj+QkZ?mKVb^_N_9>}zr)L$;Ii-+gQz7LdZx=(TnG-K=)my6p)@ZL-iyQ< zCEiI*xukQrOz`wv>YCu0UZgL)+i}-qI2EvWy?%dL_vi z*x@>7&=qt7ufcf~$VYh0?_!4Eko>~S7-kukA~Sr#at0Y5)5^;Uo!u-O`B}kOlT1>h zt-y;rsgcxAnxHhF$yV`*|0teDFlCmRb|RVf@r-XsLJLfpWu{#+?X6&vftWH$y%e5D zGUb+;4kDQjqM35bOm#9fRxn9Nr%cj6g-Rq-aha(Z$yAMInw!L+cdy8FxPnP$YswVN KQ;lRX)c*hqHOsL8 literal 990 zcmaiy(P|Sx6o&uVY_e{;X=>W2Ra@JlkVJ7Wyi|K52trzgO2Erac1WiryRhB%xfCpd z7e0UwCH`k7G;14>g*h`jXTJH)+5P?J=Pv+nanOW^S^z&n9Swzzv*a>~XGu1VKaS7z zq*Q3UF_|e36>7cyD8wCv0h$rk5Gfo?^0{QEmu9T(WR_3kG@mCXi;whttP2Itqy!I_ zVh}ar@H*Wx;njn<&0%;^W1H2 z-r@@_;L&4S@YX+vuS*Vi+$D6YfQnG_B)=#o`n{1xthq+Nlm=s;ZT0wRJwE(IcE%nv zHb5~u-sS2QSBkMd_yP6Jrgb>V?*JlvgxKUPa!J@imn#9>V}<~}FxD8`0vJ5MLNIu7 zh1L?)Ap~^r2?^1{Iv+vqxnm0?0oGGo+VVFLd!O@A^yQV@`T*M;<<^+dX@5uXl`lMq zw$uhDtWti6M+@acMk%jhb(f~D=&mhJ2vVXjUC}a=PAcnFXTQ0r@EAKBZ#uPZI&H6X f+QpMqPL=LCryV-&TEcB7>D9H9>(d_1Jna7k3Wl6e diff --git a/build/classes/java/main/com/landvibe/landlog/repository/MemberRepository.class b/build/classes/java/main/com/landvibe/landlog/repository/MemberRepository.class index e0954e0e210f8500a46c26e131654e12bc9cb25b..56273ef9ada31fba12efcbf01df6431297bab1f8 100644 GIT binary patch delta 99 zcmcb?+R4Us>ff$?3=9mm43ZnU9x;k=r)B1)I90mlCT8X^GO(tC=*h1byBJv~mooVo n@G~$mumhE|GBOAQDIOqZVi06uWDsExWnhHz#eghvu#5x%_%0EL delta 51 zcmeBVyTQtJ>ff$?3=9mm4B{KP9x+a4V(MUIncU6fCo0Uq$iM@XVPX&gvP8iwF#u~9 B3A6wJ diff --git a/build/classes/java/main/com/landvibe/landlog/repository/MemoryMemberRepository.class b/build/classes/java/main/com/landvibe/landlog/repository/MemoryMemberRepository.class index ca2c90e116c7644b355bed3e8fe09d20ce00ecec..5ed0a3e0c2e5a7d41bc228e1e4dd27a677d88ab4 100644 GIT binary patch delta 1459 zcmZ`&Yi|@~6n@^>%k0b!Wi9RE3SF@myQL(hAB4z73&IDmEnq9!s+DPXr~}hw+1(b4 z*rkASQMou(LGjKdF@6x5v?(Npgv1XTKl>y6560)6*>0za?quKhyl2jNp7%ND%->H< zKdt}%&x2n9Y{#8@`km0WS_o{@QHPfebfZTgI%<{npU4W-W!k!rm=k7)W9CLX`bq^m zH@a2FKI~U}oq0 zMs8)k$Lx+X*<$+$bc!GDxJONn5AOG&4-iPFhVL03v6_+ zM(eK))y&=x|D+s>AGUMZos(WRp)H9b5T7s|J8PCKPftrGAgB8n#RSe3d2NFNp}bVT zqOW9*9PKgl{pPS^xr3@*U+0)(!&$RAz}4L8{-wU)K30=%eQc)YnvPH5s+ckG89tw# zkA+2T-^wU%=!oG<0~c{2ft&81+WIDXzmeW=4V=dX0b@@tXBA#@%wo|hs`x>m#hunx zyS=*VuF%w|idzEdiYwJ>L4l4nSj+Z}vYiUv;W-Y2cAUNlqFinFvYu=`LZ3VV8jf-` zJUaphV>}7uaE$r3`-k4SOUBk9#5KX^38Yc$A-N=&ug zuJ|(^kWacg0FbBxBruMNC4g}P_&QF|`7S0spxg0|vb<3(!d%y46&mm)@6T}8IOIP4^ma1sg#t!nC3kcoMB!B%ClX5qcnvP;5*r@vp83|&KBax=}0_8|G;8N z=5f#~Ksi9W!K3xZXR(uh(>@@;hyKVBXfsa|Q1ieB1n%*mctARLU?T^=GXSRf8WOtv z7MLoFw4ITREkkRc!<*|_4p{{s#UHGuKo2y?%FCbTPbRVWwJpc;px*v3sD@=wa)=h8 zrsR~zaH%S;-BSRpe2C$Jd1Pmi(q^Gbi6S5|&d<@{*nUL6f{*bDcX{p0+^_I2NB1fV Y{{^n&tBUnCt?&3wXWaMr5x0^07lu{mC;$Ke delta 955 zcmYk4OH&g;5Xb+M2b-PU!bl<-gosKN0SHXO=}snN7(8P8eiLvylMOQ(|!9B@_xi?#PS z?&E=mhbA83ad}wxvHHPHHF(Amz;hGVaU+PA46QLoXf5HkK?bwOvNDCkd12cbTf>6$ zmACsGhN$zMM;+a$OOL<y8t*+zuWgl&kDZQKBjR-sYY zD7sLaic+*Zn4#b-uF8XvzmMQjfZ!^6lAjRyj4p;19RH|t-N|=TlhV3E>!YVs(lr9i zRb}2wo>El7`WRfPxe~6G?j^QCZoM*ckjn=^rE;on%9JAO9m_b?zKpXUWTz6`d73sH zT31J<47$e3RRnOeI#7oq0h?Aalw84Z84@cW9rd aMQ@`4cS)@$c#0QzMIlar*LZ_PME(Kj_L7YN diff --git a/build/classes/java/main/com/landvibe/landlog/service/MemberService.class b/build/classes/java/main/com/landvibe/landlog/service/MemberService.class index 4020fe92be4827f6f4c03ce19c5d6f86bcb23cf4..d1760ac8f605dbc8b97a0ee9246729407d97576e 100644 GIT binary patch delta 942 zcmb7?O-~b16o%hBAIx-Sf=#70wIN1QZ9tQXR@C7#H&+ z?%KHF2WT)MXrgiJ(hWQJ?)(MDa|h|vR88E>x##5G=Y7vPv)lFZkn#D)yAJ>gSbbxB zm6B-&bHVlIi_b@Ew!2~?hBFp&ILl*l&JgK=umu&D zwqD73)~7n+JwvRtWIwaBE4Ek7me(7uR~=%Al-;UluWvLQhAG}JW%vuVmk+2lD-fS_ zYI9Cwjel3h_@=tq`N+UyJkelVn8VYpN{7Oj!)LWrq-sFNqJ;|gwS+=)$2ilv&9!u? zUSHl=)!^|@TEW!8$k}B`DDsG&8o5FpcR~)n3JxHGC`Kqt&<()AD6UczCleOE9iy{K zlcB(H4dVf5Q9s@SI!FRtgo(F+;!RK-6Sy9NCI}>vZZrUW(KCMNC`mIuOqlK#P@)M+ zw1XJ>k)~#f1RW-zXu<4z3+==XvJzegT7us}27se2Tyvl6Q*R|qh7L<~b1HawgNn5O zzX+Ue7s&icfcVq68SZyIJKCzm^_=nf1feLMn{jw_WnRt)Enb?JGT>MBF3E`|$zgfLYzW|`%UT|v$_bG~< c%mO`lK#Az-Aq{#S3vjVS6@x0vsG*MJPwG5y#{d8T delta 703 zcmZXR%TE(g6oEe$e)$##LV9Z;4Em$yL`0a?;Fj6t*M zL+fS9v=#NqI`;`?e-|j%0p)gr6jO{CkRXcELy7ka?{PLcs(34rMOmy_0u04iGt~B= z)2y4KE0Vm*sO-g{N|G_#@D1w7CdaKEtl=(+en+BDm1~09T3S^Y({e1Xho1Ro@~JJ= zZj1QD*xY>YsSlj_5|@?5wzcN}(|S`j2nlY*RWsb)s=Fipt{gMdJrVzyd7iQ;8Ba11 I%hc)n2L(k_O#lD@ diff --git a/build/resources/main/templates/home.html b/build/resources/main/templates/home.html index 109d59d..15a4e6f 100644 --- a/build/resources/main/templates/home.html +++ b/build/resources/main/templates/home.html @@ -6,6 +6,7 @@

Hello Spring

회원 기능

+ 로그인 회원 가입 회원 목록

diff --git a/build/resources/main/templates/members/blogList.html b/build/resources/main/templates/members/blogList.html new file mode 100644 index 0000000..d055aef --- /dev/null +++ b/build/resources/main/templates/members/blogList.html @@ -0,0 +1,10 @@ + + + +
+
+

의 블로그

+
+
+ + \ No newline at end of file diff --git a/build/resources/main/templates/members/createMemberForm.html b/build/resources/main/templates/members/createMemberForm.html index c0353f2..9bbf1a1 100644 --- a/build/resources/main/templates/members/createMemberForm.html +++ b/build/resources/main/templates/members/createMemberForm.html @@ -2,12 +2,18 @@
-
+
+
+ + +
+ +
- +
diff --git a/build/resources/main/templates/members/loginForm.html b/build/resources/main/templates/members/loginForm.html new file mode 100644 index 0000000..7fb2466 --- /dev/null +++ b/build/resources/main/templates/members/loginForm.html @@ -0,0 +1,17 @@ + + + +
+
+
+ + +
+ + +
+ +
+
+ + \ No newline at end of file diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/MemoryMemberRepository.class.uniqueId0 b/build/tmp/compileJava/compileTransaction/stash-dir/MemoryMemberRepository.class.uniqueId0 new file mode 100644 index 0000000000000000000000000000000000000000..3f5814e4116ccf3c677fded52579d0583f65d564 GIT binary patch literal 3969 zcma)9X>$}+6g_W}(3wsH!w@zh5j7+ef())K6A*|f#34ZvqeMhIGo8?+r+b+02?iDS zec#1>_lqACt3b5M@{=Ddf0N~T-JR*4Fu_34%bWYoJ@?*oZ$JM2_qRU)?8f&h5@=G; ztf2)<1X8E;89i(1_EdIw;*?SF1eWxhw(0E=Xv*}CCDDqc0#!pBG=bX-PDxr9XUqx1 zf3TdXY{e)$uIV|I+3aDX#2c>@M&)R2S)kQ5PFD@PU&&61UD{<^_Nup;o^kOriNJ5~y0aSyHDz@N81zR;_u}vTy(Hbs$reo`t zfa**RRV_=Ouo!-3VO&3&xotT~>1GYL;8yC!ubL~cb}li#?SNxh)D_*(`gUwrutUR6 z>=I~?ctl3TalMM6mju?=;RLJM5&y?rnriOXC}`@m*)v=w+F5Mtb69ft4gE)93%AO${Y z+QohLtibBJ7;AY=L!e&@{T>Z@93}zQ`^Xt8xP5Me-?L$uDu!`H!Mz%eVx+FA0|V}7 z`{@>ovnrmYIjxN=xR1>dg}<*-(P#6f>!}#U{c=`3Ah0eTdsMMp@0gUqxP}MiL}@8l zhF+1}AJT9_a&IN~18hf2E2Gcf%s&cA~2ECHbI|bbu z(<`QY4;P!glO~hBqcM6t`3Cb+`g8Re`WwtNhNvglyBH&ipcIb7uEp7>4jbM{r+7rK zuuzmgBWjh(-9Ia5Y2EPga~T(ZP09iZlh&#Ei5JMnrMMtK|6;hx3aJ4#DXMuBEbNj6 z=r!B^j&zJ*xIthjPVp)*ize9?ko4Puy<*6=5NPA*G>e=_ev5C4I}JqY_eZ?rd&lMH zL=J?dBc5KEX3K=q3ucQ&)Y=EiA6BxPnWY_b^P{%7Xzr@t*(1Rhvfa{46Ggo%7Ejkr z(R_?^T}%OGJS*!UWgWZtwQB7zSmA+09dW9af^nBAzftQOA2qhhRB=`vt=gVhGR92T zWLxgDZO7B)M~E8k%R7~+tXq~}h)F5!GfrhX>r&u`yIp*}R_}?$9Uof;<_q$n2r$?Vos&!%cyMgFIeY zhTD~Qoat&gel!RL7!zvU#!+&Qn=k&yz~$BVhTY>AHbfrKEo;Q&cQl0&X63xf!{Wyp zUdBr)d@9hhxY;$%t)I)SUubv{F9~ReY}=>|Si0*Pu7a-xHeHe5MyXQptw871O*sUE zyy7}~Oz<;n@T$twAD^dqsz~4@-+9{Qa~s!qOy=!^KB28#*}=I_ad7%is*SjN8~`zaa-c-jU$tfIt*i8qGx7 zfR*ULT1M8vXPLVow$7USPMpPKk^8eX_m6Y&iT`(h=xXk}>Ar{VGj!j*fctZC_vh-| zKZ&OpwM_A8-esLKwG{t_j@mQReG!9OE@J3Bl;$7M-1H-DoBa9)so&x|-xy%jV$X!B zCoY~QjRco(tOpw_v9 z2eo~k`(LO@emmcMb^BPy1R~kX|40J2vWsqufhB_wQmSlaZj~w8O-pH;q|T3TW-eq7 z0*wc3dSV4gLZ)5*Ne0>`6bDKJsD~Rtb<{yg0mY!m^_5y^eLg2(`R|xGb_vB_urA4_ zlmQCAK0$zO90nQ{`zqHHcnz=fE?K|9`}dc1 literal 0 HcmV?d00001 diff --git a/build/tmp/compileJava/previous-compilation-data.bin b/build/tmp/compileJava/previous-compilation-data.bin index 1a81f914cb35b6faf899fbae5670c92e761173fa..a403b7745a14de97210c88b5ed5d8f56674ca2d9 100644 GIT binary patch literal 20918 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 diff --git a/spring-summer-coding-shop b/spring-summer-coding-shop new file mode 160000 index 0000000..791030b --- /dev/null +++ b/spring-summer-coding-shop @@ -0,0 +1 @@ +Subproject commit 791030bc190158704917290ac65ac16cc3f338bb diff --git a/src/main/java/com/landvibe/landlog/controller/MemberController.java b/src/main/java/com/landvibe/landlog/controller/MemberController.java index dcc95a3..880eb4f 100644 --- a/src/main/java/com/landvibe/landlog/controller/MemberController.java +++ b/src/main/java/com/landvibe/landlog/controller/MemberController.java @@ -6,11 +6,14 @@ import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; import java.util.List; +import java.util.Optional; @Controller public class MemberController { + private final MemberService memberService; public MemberController(MemberService memberService) { @@ -26,10 +29,43 @@ public String createForm() { public String create(MemberForm form) { Member member = new Member(); member.setName(form.getName()); + member.setEmail(form.getEmail()); + member.setPwd(form.getPwd()); memberService.join(member); return "redirect:/"; } + @GetMapping(value = "/members/login") + public String loginForm() { + return "members/loginForm"; + } + + @PostMapping(value = "/members/login") + public String login(MemberForm form, Model model) { + String email = form.getEmail(); + String pwd = form.getPwd(); + Optional member = memberService.findByEmail(email); + + if (member.isPresent()) { + model.addAttribute("member",member); + return "redirect:/blogs?creatorId=" + member.get().getId(); + } else { + return "redirect:/"; + } + } + + @GetMapping(value = "/blogs") + public String blog(@RequestParam(name = "creatorId") Long creatorId, Model model) { + List member = memberService.findMembers(); + + if (member != null) { + model.addAttribute("member", member); + } + + return "members/blogList"; + + } + @GetMapping(value = "/members") public String list(Model model) { List members = memberService.findMembers(); diff --git a/src/main/java/com/landvibe/landlog/controller/MemberForm.java b/src/main/java/com/landvibe/landlog/controller/MemberForm.java index 32d7a01..c371bcf 100644 --- a/src/main/java/com/landvibe/landlog/controller/MemberForm.java +++ b/src/main/java/com/landvibe/landlog/controller/MemberForm.java @@ -10,4 +10,16 @@ public String getName() { public void setName(String name) { this.name = name; } + + private String email; + + private String pwd; + + public String getEmail(){return email;} + + public String getPwd(){return pwd;} + + public void setEmail(String email){this.email=email;} + + public void setPwd(String password ){this.pwd=pwd;} } diff --git a/src/main/java/com/landvibe/landlog/domain/Member.java b/src/main/java/com/landvibe/landlog/domain/Member.java index acadd35..26f5c08 100644 --- a/src/main/java/com/landvibe/landlog/domain/Member.java +++ b/src/main/java/com/landvibe/landlog/domain/Member.java @@ -4,13 +4,17 @@ public class Member { private Long id; private String name; + private String email; + private String pwd; - public Member() { - } - public Member(Long id, String name) { + public Member(){} + + public Member(Long id, String name, String email, String pwd) { this.id = id; this.name = name; + this.email = email; + this.pwd = pwd; } public Long getId() { @@ -28,4 +32,22 @@ public String getName() { public void setName(String name) { this.name = name; } + + + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getPwd() { + return pwd; + } + + public void setPwd(String pwd) { + this.pwd = pwd; + } } diff --git a/src/main/java/com/landvibe/landlog/repository/MemberRepository.java b/src/main/java/com/landvibe/landlog/repository/MemberRepository.java index 0034fe9..0e15c43 100644 --- a/src/main/java/com/landvibe/landlog/repository/MemberRepository.java +++ b/src/main/java/com/landvibe/landlog/repository/MemberRepository.java @@ -13,5 +13,8 @@ public interface MemberRepository { Optional findByName(String name); + Optional findByEmail(String email); + + List findAll(); } diff --git a/src/main/java/com/landvibe/landlog/repository/MemoryMemberRepository.java b/src/main/java/com/landvibe/landlog/repository/MemoryMemberRepository.java index d84e250..e323ed5 100644 --- a/src/main/java/com/landvibe/landlog/repository/MemoryMemberRepository.java +++ b/src/main/java/com/landvibe/landlog/repository/MemoryMemberRepository.java @@ -30,6 +30,15 @@ public Optional findByName(String name) { .findAny(); } + public Optional findByEmail(String email) { + return store.values().stream() + .filter(member -> member.getEmail().equals(email)) + .findAny(); + } + + public boolean validatePwd(Long id, String pwd) { + return store.get(id) != null && store.get(id).getPwd().equals(pwd); + } @Override public List findAll() { return new ArrayList<>(store.values()); diff --git a/src/main/java/com/landvibe/landlog/service/MemberService.java b/src/main/java/com/landvibe/landlog/service/MemberService.java index c4ac876..0877c63 100644 --- a/src/main/java/com/landvibe/landlog/service/MemberService.java +++ b/src/main/java/com/landvibe/landlog/service/MemberService.java @@ -28,6 +28,18 @@ private void validateDuplicateMember(Member member) { }); } + + public Optional findByEmail(String email) { + return memberRepository.findByEmail(email); + } + + + + public Optional findById(Long memberId) { + return memberRepository.findById(memberId); + } + + public List findMembers() { return memberRepository.findAll(); } diff --git a/src/main/resources/templates/home.html b/src/main/resources/templates/home.html index 109d59d..15a4e6f 100644 --- a/src/main/resources/templates/home.html +++ b/src/main/resources/templates/home.html @@ -6,6 +6,7 @@

Hello Spring

회원 기능

+ 로그인 회원 가입 회원 목록

diff --git a/src/main/resources/templates/members/blogList.html b/src/main/resources/templates/members/blogList.html new file mode 100644 index 0000000..d055aef --- /dev/null +++ b/src/main/resources/templates/members/blogList.html @@ -0,0 +1,10 @@ + + + +
+
+

의 블로그

+
+
+ + \ No newline at end of file diff --git a/src/main/resources/templates/members/createMemberForm.html b/src/main/resources/templates/members/createMemberForm.html index c0353f2..9bbf1a1 100644 --- a/src/main/resources/templates/members/createMemberForm.html +++ b/src/main/resources/templates/members/createMemberForm.html @@ -2,12 +2,18 @@
-
+
+
+ + +
+ +
- +
diff --git a/src/main/resources/templates/members/loginForm.html b/src/main/resources/templates/members/loginForm.html index e69de29..7fb2466 100644 --- a/src/main/resources/templates/members/loginForm.html +++ b/src/main/resources/templates/members/loginForm.html @@ -0,0 +1,17 @@ + + + +
+
+
+ + +
+ + +
+ +
+
+ + \ No newline at end of file