From 4ca8cb1de98b55122807982c996093ac77a9adec Mon Sep 17 00:00:00 2001 From: Chenx221 Date: Mon, 19 Jun 2023 21:45:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B7=B2=E7=9F=A5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Chenx221 --- project2/README.md | 4 +- .../controller/CourseController.class | Bin 5682 -> 5823 bytes .../controller/PersonController.class | Bin 4958 -> 5194 bytes .../chenx221/controller/ScoreController.class | Bin 7472 -> 7486 bytes .../controller/StudentController.class | Bin 10191 -> 9950 bytes .../controller/SystemController.class | Bin 4101 -> 4108 bytes .../controller/TeacherController.class | Bin 7917 -> 7933 bytes .../chenx221/controller/UserController.class | Bin 8431 -> 8436 bytes .../chenx221/controller/ViewController.class | Bin 1842 -> 1631 bytes .../CustomAuthenticationSuccessHandler.class | Bin 2351 -> 1282 bytes .../cyou/chenx221/mapper/ScoreDao.class | Bin 631 -> 792 bytes .../cyou/chenx221/mapper/StudentDao.class | Bin 838 -> 918 bytes .../chenx221/mapper/impl/ScoreDaoImpl.class | Bin 1991 -> 2368 bytes .../chenx221/mapper/impl/StudentDaoImpl.class | Bin 2478 -> 2756 bytes .../service/CustomUserDetailsService.class | Bin 2785 -> 2936 bytes .../cyou/chenx221/service/ScoreService.class | Bin 1497 -> 1848 bytes .../chenx221/service/StudentService.class | Bin 2010 -> 2259 bytes .../WEB-INF/classes/mapper/ScoreMapper.xml | 24 +- .../WEB-INF/classes/mapper/StudentMapper.xml | 23 +- .../WEB-INF/classes/spring-security.xml | 38 ++- .../WEB-INF/views/course/courseList_s.jsp | 173 ++++++++++++ .../WEB-INF/views/course/courseList_t.jsp | 42 +-- .../views/course/courseQueryResult.jsp | 36 +-- .../views/course/courseQueryResult_s.jsp | 150 ++++++++++ .../views/course/courseQueryResult_t.jsp | 40 +-- .../WEB-INF/views/course/courseopv2.jsp | 36 +-- .../WEB-INF/views/course/courseopv2_s.jsp | 262 ++++++++++++++++++ .../WEB-INF/views/course/courseopv2_t.jsp | 161 +---------- .../views/{ => dashboard}/dashboard.jsp | 0 .../views/{ => dashboard}/dashboard_s.jsp | 5 +- .../views/{ => dashboard}/dashboard_t.jsp | 16 +- .../WEB-INF/views/fail.jsp | 2 +- .../WEB-INF/views/login.jsp | 8 +- .../WEB-INF/views/{ => person}/person.jsp | 40 ++- .../WEB-INF/views/person/person_s.jsp | 244 ++++++++++++++++ .../WEB-INF/views/{ => person}/person_t.jsp | 44 +-- .../WEB-INF/views/{ => score}/scoreList.jsp | 36 +-- .../WEB-INF/views/score/scoreList_s.jsp | 180 ++++++++++++ .../WEB-INF/views/{ => score}/scoreList_t.jsp | 42 +-- .../views/{ => score}/scoreQueryResult.jsp | 0 .../views/{ => score}/scoreQueryResult_t.jsp | 14 - .../WEB-INF/views/{ => score}/scoreopv2.jsp | 36 +-- .../WEB-INF/views/{ => score}/scoreopv2_t.jsp | 42 +-- .../views/{ => student}/studentList.jsp | 0 .../views/{ => student}/studentListQuery.jsp | 0 .../{ => student}/studentListQuery_t.jsp | 40 +-- .../WEB-INF/views/student/studentList_s.jsp | 178 ++++++++++++ .../views/{ => student}/studentList_t.jsp | 42 +-- .../views/{ => student}/studentMod.jsp | 0 .../views/{ => student}/studentMod_t.jsp | 16 +- .../{ => student}/studentQueryResult.jsp | 0 .../{ => student}/studentQueryResult_t.jsp | 14 - .../views/{ => student}/studentinfomodv2.jsp | 0 .../{ => student}/studentinfomodv2_t.jsp | 42 +-- .../WEB-INF/views/success.jsp | 2 +- .../WEB-INF/views/{ => system}/settings.jsp | 0 .../{ => teacher}/teacherQueryResult.jsp | 0 .../views/{ => teacher}/teachermanage.jsp | 0 .../WEB-INF/views/{ => user}/usermanage.jsp | 6 +- .../CustomAuthenticationSuccessHandler.java | 26 +- .../service/CustomUserDetailsService.java | 4 + .../src/main/resources/mapper/ScoreMapper.xml | 10 +- .../src/main/resources/spring-security.xml | 38 ++- .../web/WEB-INF/views/course/courseList_s.jsp | 2 +- .../web/WEB-INF/views/course/courseList_t.jsp | 2 +- project2/web/WEB-INF/views/person/person.jsp | 4 +- .../web/WEB-INF/views/person/person_s.jsp | 4 +- .../web/WEB-INF/views/person/person_t.jsp | 4 +- .../web/WEB-INF/views/score/scoreList_s.jsp | 2 +- .../web/WEB-INF/views/score/scoreList_t.jsp | 2 +- .../web/WEB-INF/views/score/scoreopv2_t.jsp | 2 +- .../WEB-INF/views/student/studentList_s.jsp | 2 +- .../WEB-INF/views/student/studentList_t.jsp | 2 +- 73 files changed, 1514 insertions(+), 628 deletions(-) create mode 100644 project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseList_s.jsp create mode 100644 project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseQueryResult_s.jsp create mode 100644 project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseopv2_s.jsp rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => dashboard}/dashboard.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => dashboard}/dashboard_s.jsp (94%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => dashboard}/dashboard_t.jsp (88%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => person}/person.jsp (85%) create mode 100644 project2/out/artifacts/project2_war_exploded/WEB-INF/views/person/person_s.jsp rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => person}/person_t.jsp (81%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => score}/scoreList.jsp (82%) create mode 100644 project2/out/artifacts/project2_war_exploded/WEB-INF/views/score/scoreList_s.jsp rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => score}/scoreList_t.jsp (76%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => score}/scoreQueryResult.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => score}/scoreQueryResult_t.jsp (89%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => score}/scoreopv2.jsp (93%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => score}/scoreopv2_t.jsp (90%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentList.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentListQuery.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentListQuery_t.jsp (85%) create mode 100644 project2/out/artifacts/project2_war_exploded/WEB-INF/views/student/studentList_s.jsp rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentList_t.jsp (76%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentMod.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentMod_t.jsp (93%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentQueryResult.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentQueryResult_t.jsp (87%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentinfomodv2.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => student}/studentinfomodv2_t.jsp (90%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => system}/settings.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => teacher}/teacherQueryResult.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => teacher}/teachermanage.jsp (100%) rename project2/out/artifacts/project2_war_exploded/WEB-INF/views/{ => user}/usermanage.jsp (98%) diff --git a/project2/README.md b/project2/README.md index ab520f7..be834dc 100644 --- a/project2/README.md +++ b/project2/README.md @@ -85,8 +85,8 @@ - 学生信息修改页(过时) [Get] - admin,teacher - studentMod|studentMod_t - - ~/modinfo [Post] - - 学生信息修改 + - ~/modinfo + - 学生信息修改 [Post] - admin,teacher - *Redirect*.infomodv2|*Redirect*.infomodv2_t - ~/infomodv2 diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/CourseController.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/CourseController.class index 076765b4de067ecd503b2cf7de58fc77aecf6ae9..e3f0fb339e4f2d70929430ffa13c903e274a2b4d 100644 GIT binary patch literal 5823 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 Dt`2(r literal 5682 zcmb_g>w6Pb9)71yGNDZi1Y0dPwFveWA_Y+z#0AQw*m5aQ7hJ_OnU-Lhsgp@dcXh2= zTtvJqiYu%LA_(e2y%q#7-}HI*pV%*?)KB|ypWR2-eb1c9Bxz^6`|Pt1C7C&M&hPTR z@9%fcjsaJ>vAC{^JJzzd&(SqGv6(Qq=F>J4w}KA^=+1-{jZRKi@NptP>O zYXZZn4-{r?$^s=mZ zxgSdu_%n9a<)}lwiiQ9h(WGF$ZuExJ!c=dMK~M&DLc~-(-~!UOA%IaPXNo%JcT4zI;jHUyEd7W@<@}V93dGqkqoyd(q_bu z6+}ggcQ=N<-el2_Cv>)xRPqSY=m%Vz`kF5$CS~slQy{Scx zNS}ZG>S*@d$?;R~PF(&t`}OgOvmeQEKej8FYiRL=!8XuhV;@eWdh|X$KG3Y9Q$bB} zVHN;Vh8@@?n#yhkcTcZ2y9(>OMEVa0@JsAr`iT@3WaiReST_y!qDCH>l=}FU>)9h` za=<)F08^P{vJCt1xQb{1-G~*Jv(*aN?X)K|(IkagRE)WT*y{(mSd=4?*iDRnbMxX$ zlJOhgULJqrOUZZ{da++cB7g&Uf?CTrowk&z^=bwsJ`hc2v~4{Ks)e?u%wU1-K%c;n zy`iNLL)%28V2usp)Da15e*jN{J_DKlcr>r7>0zbb*xGKJnqm&t0R?NPK9v9nUAc?i zUUBv1?4`G|Z(sD|psSOdY=5m_gOsg{D@)qKm1Sy@kR=~CPmYW~e<=IH7k)gYVBYxY z^An?IsrMV#$8Io&S4XplF5b9$?dAv9g#LaTz%v+DFq3_1M@BP-qyj03(6kbiz!x^L z=a^N@s$RQxEOVV&I+G--b(5{R_RC0p7nQr7J)9A>CsNwhOkcNV?22|LITCEwW6@++ z)JTYXd(dOy(dD3ykZmZ2xF>>L<|CMI`7li#`maBAH5?Ury zOQMY-1!X(g`(oP0geb=<*+uiO14~8eiZ11L!sNl)&~%d(%F|Wuje@Fi??i5l*mBDk zn`-x99>o28;}Mz*idPt3`FZWd^Bf)F-9~?H5YCpnj}0u6N9h?!_Y4L9vO5$4@JR$>j(x|7&aC$U9#Vt4X&Poz`oq$5X; zaYUp;LHsCQ`rLAPi@BV@NzN2v5oC&JHsy0^@zi*}LuDwqILAE20p6Q91q5E&9@3l_zd zV78RDA{GE1TB@}G@Hzm?^1HgQD0RD)#X){zxC#Puic$yyH*^ARSlg6X@!PNzW zq5$5-SsSyz@mmx?kHBT#7#`d@?;WV2?=ib67zwVIs9eA%`|*aAo+^*$jCi^#*p_=* zU*$PDX+gDE{*as?%BO?n6Wk^sEwzecDHS8Yn1RiNw2h_l5DTN7%IVW5=GxrYqRl;t>GV zc*f90F$MR^#AU*=TLrCIXm4blk&Jk z|8Y_Dg^IW&#bC+8k;&zPL6O`i_*5!FxreE#Om3tx_^UBIb^>0dy~(-kSWxmFf;Aqp z8_&_dSHQ5~DtZJI$ri5#g?9}4N?({iR-pu81&8JeV* zmFyBglJNDBwiJK=(b;vLWHA~nzcjYM#2#eu7zQ}wAcpwwSv+MyyqWp5QdL4XKCako zfhY(ZabO>DU>|W{AF)&=HklEN0NGw=!B<{3=O-+soRm3##~c?jJ}V+)oyU@rRi6Km z42Plff}zi4;R=SHaTt1v42gy`T+rvdHQw(qlPE6EH8pqo8o$TfrteX`;FL|lZzSfF zs>Nc-8K}wysChb7i%#xzPq+AJe|e41Uh!v)>`k!YBmG7pD^VTXlbhlOE>g<+e80J#>MqL;R2TCLMZ%X2MO zRi}x{XUE96=m4AHW9hSrmX*!@nQ{75_<6@aMMa%xt|k0QhJQb^45mITl@C?^j4-uv deDQy0y98s5xdc}%Z$VyN<^7jbfoxUR{so;IE7Sl0 diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/PersonController.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/PersonController.class index 30ece77631f4334b20d3b4b2470d4235514af30f..778ed67aa1722ccac81cbaeb725dce5c3c3900bb 100644 GIT binary patch delta 1759 zcmZWp>3>sI5Ir|}?Msu_qz$DuKuc+WhAxCIvXrGlSxRkMX^UkM>Z3fmkR~Nb3n&{tI9zX)JC zemiYHCgOHvB40xRrU*E@j9A@3Bw~bOE#aVHL!p4SwWYanO^3d-uP3z4jv{zf%+@dm za|N<`^+DYq)I(kV)>xz`)FqH^>>1F5QGuzx##`3r9lb_pZ0Wo$HuwZG`;AC69P&#M z42NteVd`X>n4x!e80;TH~d#B7-VKV?+K0)gyAs)1Nf&|j}dy90W^9e!9H zs6w@h+chl2A_2cSBy!At%XBl%;&v`Ujf$ljmSMSo*Q~I4&3en`l3Ib=I`@YM{KOI3 zS6Nx%?+^Ee{Tri3#EuoP%Fikdby#g)v-k>DV6BFASS^qdHDW6V^_U*XfDP+4G~iA% z+gjxaph-ou^t#Jzw$?dY(5j+M!$#aKP@KT@XWA6=iglgXWV)2RneEu3VXJJ2oec>X z(Wu^KxY@I98n&auT&t|f(*@MNq{V?w>{MZB*o7|hgwpEhL9dG48iMFEMOwG51z`>S z*kkTV>vcvEQ!$`nP^Pa+rS}!=V>_F|g}Zu!Mq$M0GPvTARK@-mA@74v%@=k#*M0IIK7?+3_tdtGFV||IYL}FNv$> zAI=8ly1*P$cNLg@PSvX77jwI-HlMUZ;2F}DPWddQLYao=V1a3lyQasFQRjq}-|4i? zKnC*hJa4)50PJ`HFH*{r1KNLL3A}{kG7{|<7(=0~oj~U1^KgwID^PYBnWgTWvN7aZ z(LQOI(Nyl9If7Zok?xKc50|^=r7oqz?($*AutK7mODw=F<}HE?UU;}?v#BjdF&4l_ zuIF)HOA}~IlDQ|**5YNnLbMK4V=7)H#@VdzHJ+?^ol#w|-hf9%QTzsSDI5uooP6;H ze{XJuh~h1tmf>wiW_@Ad{VYlBpVY5UAv)RnxK%)3AtqEv9A(zct*?rSx8g_57o2!6eh2R|cpLKY9(4+zdhtF!APJ;klI9_t#3{nDVLv{^N2K{< z+U1xeHJ?x;>E1nb0;Y!pbE+DEy~Am(1ONPTMh+A@lc959v>OQ6M_i^ayUxGh_^F>h?@*xNt9cZsFkJ4 zN+hw?ofyZj@HOu?-oN4RdtBpf8o@{T@A5->298kv MNcj_f#;@@F4V&g+3jhEB delta 1511 zcmZ9L`BPI@6vsa|dE`Oz2pB1fLW;%(S&WDZ#id1xf)dmMT5ClkJ`qHMB;wN66uYT>)Pi zOH9fwDyY=Ix{~Ef6|=fe#Eyo$584CAmoKjl561dp;m)`{Fq|xF|n)FuVNZm%o z%)aPwG~6E@=m|F+@3sdMy|Do=8)&iE#7u>^$4*4-cs$x;2Lx}cMT9o}m(etPtHL~- z@%Xrlc9RZ^PPXgqS?&J2*=cf*#V+nug!G6i(4(F#{YzGBb^~1&d)TWNc>4VN=r-AJ zVbi1pS0=73*rUjAi~6bv*xv7@fnJL~4(UHVEx|P$wiuvI;7f}c_+H8w zv^c_$-feaU8b~-;4>>o7Esk+qUo$uPPja8h{T2^!O0mkRd2w0xb+tIRJrV6b6p0RY zMECXECQnNf)9kb-hI$92uN6A#Uvjb5d)n|{^71ufCYK#j#`VwsYwC(VlebBIr+>>U zH-1nA_3wE>9m)@u$VgBmg+h<456WuDn#Bk%PV27xxygsb=Ep7nx#BA(hY}u^Q=vqF zmq&P1R%hqK`d==^V?6F;5`RK+I9ZA($lZCFyfN}4mDkCw2ozMND0H(UP&_JrH%`TX z)Pi~Vk|NbSLKKNqowB8wBvWOJd4eaUtdAMo!c$W0j6`Ll{-(&}Y#N$h{Ljeu>@HNC z=VVvG^HMMk-RwQ@l!7`6bMXu_TMzCa4luxZWr-rkfvQS&>mS z#tMn6EizK9c2POb9iwexY`(%~s5dGDTO8LmL3e>2@e059{a`RUKn}nyh9_ zxw8~4#JJ_=LeBAmB=2B0FN)2On;~A}2dYiZGz0?ujI?@w%}3hH&JJS4?7g zbCPEf!AJOg4mgOQK!8on}8EyLaULuH4Q{;62`VvMDiq;27h4D9cBj zk~SQvd?KqOm1?0jSvyU6ihdWZnYj>)j1!+^PPRu=oKTEPo&pxJSUAiGsW3g=7O`#? z;kJq=BCl~vnx1kYphSfGu~c-4H78AlBkSr(Dhf!J@ToAR(y|JmZb}AM8t&ON)=8+J z{Rir_*glsMUr0h1Urt4QC1oLSAZHOQ7v)PaA*VUg{63lEH=dk)PRiz6PYzf4 Io*yat7x`ltH2?qr diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/ScoreController.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/ScoreController.class index 5824c593fa97d2cfe34a8d11052db2c5b5ffec8e..c095aac621cb1c6888967e87c2de0926062c4f5a 100644 GIT binary patch literal 7486 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 ZpubSBEc{hwk&~;x@%ir*tSaO`{tJnB)@%R( literal 7472 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 V-_88LRn_s%&(p_J_7hj$j%VLAZ+gJ ze@P7+Q5?hw5=WDNQpVts1}Qpn4@sZ)jt3?GEUJ#17g1j&kmHGhkRnyys8OOznGx^I usPH9pg>gDN!-`&)Xj9tTMEI1xj)+}8=+UCjlmQE2E5`gVVZ+pntCu@+&m&;~ delta 206 zcmWNLyJ`Yq6okKD5H)KMV&OfmcikdE)QH9#5)dWCJ2r}fT_CMsW0yj(+ajf}5ZLFj z(dQ67oaSTB%rFQ2SO32$<+L2Ot5bPRyS5GZ(D36SAQvJ@m=~UD5;gy{ODe&GXl_yj zNu!ey%E~uK2ZO%wlvnHMcBxW9tVNzEiS>;*WieF9Q>D&3AJiBK&1kTef^S-EXj`Yp mu*!EO`Y9{Eh%h9^NJ3-UOz27fLP9^HZJ4uT$)1&Ic+PjKp&&8< diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/TeacherController.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/TeacherController.class index ddf86c294f0fa87a246f4c363b99b6c2783b4469..438c3fe7502d526b90149ea1d911651a46b63167 100644 GIT binary patch delta 387 zcmX|-Nhri|6vscm8DwM)S!PDbz7#20CyXUz5D{f(#!ylkTb7{+hp}Jm%~{sJtY;3c za#qe<-IRCI_w?TTzW4pU@3-aGa+#+yM7r#~{Z9K>mX@!x_!wgU%L%{2AcGMfOc*fl zJcRF>69^=cFp{K~LNcjjlSTpQRFI(!N0jK?g+eJ3N-<_iiKmQAtmFuxm`Xtv%~aD# z4GwB?QO_iGOk-o723BZfjV88*wMz@fwBn_WQ`$MFgE!gypo>qs`J#s(dXbp(;LTC`$;7uj9anEaC^ zR|l@*s+_sHDev-nz4v|Zect!a`eO}QbShS}>8#-@Nn4LBkJTFq$Aq5DgBL@YQ4k;I%uSiCR{W#Ln~e! z%;IE`Ha2KyOBDNb5}=Dyy1Af-D|!ja)EoVLGQbyud^5x^!%D}9iom5Tj4OLIZslY` zjWVg(Q~hBMk38Td3Lgf!Qpy}Q=7ng17P&aaGSjR`XB9tdY_rY|n;Z(ov1E_z^2{Eu zLiA2RGh}#F%8{%*CSKsuI1?w%$>UNxF(#;jptP=uBSbnkWTJ^hx8lK_u;1h6fhpPP K<4OB4<*9!*o=(pI diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/UserController.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/UserController.class index c208864c89fe4eb389a6f63191a34f06d71ffda1..1daea0775b6afe29e68cd4390098e42803b9974e 100644 GIT binary patch delta 19 acmaFw_{DJp7aJRYX>n?i{$_5rCsF`RSqAF> delta 14 Vcmez3_}*~?7aJqjW&yS*QUELx1o!{| diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/ViewController.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/controller/ViewController.class index eed6f7527eac2c543b7413be5b28e47976ab7554..4ed6bc86db2f85ba09757c602b4623a6ff423331 100644 GIT binary patch delta 794 zcma)4OHUI~6#ni^=?u5iBGZUsl6&YD38F^rnEd=*-k@H|~rJ zGAk2*MB@VEBQ9O|2VA)DZ@3`FGed#KM`CVr=A3)J^PTgZxo=Y64gTfl`%eHSaC?jA zQkqwF9O-#FI74jf{*M|*0vQ9x(aw-6Nq?&9y0YRgZkDBvZU!U2xG*=fDvFQSD=Qqm z=+n?|-~_S^hc?7BVV6avWH0&ddZok=mrtvr>@gf3oIA)a6gH&ej}1N4F~E>63U95j zDcqu6ytn7-7^DGqoB2{WYtmiOF-$~F=sobNuVdsNDNntm#K6#kI9WTGjCIsT=`M@_j|#8KnIbWy+dANkjc_m~0IH5h_Usu6;n_!CNG^k(wX*jAZaS&TIR3$L?5W*EV`yA#R?mTjr^T zKU6nQheN56<^i;le}rDvQM93xP6k0Bq_3FMH* y4Vo^CyBXXhSH%?3wn5!Nr-t4gbdU{kpgzreoDPMuXpdAsLwN literal 1842 zcmb_cTT|0O6#lj;H1xtHpil+mqS$f^)C*`qMey=a#G#1e@ZhBB(gxC`CL54{r7tq- zjE_F}n;gfJwp>a(49t+sWcTcz^X+%e`8I$4{rCl75zoU2KnfukMGIOPI(M`^O*J*E zpswY1xGor47Yxe~PZ*>`a#M!P5Zg2OzN@;Pu5;Iw5oQQim$o&-3?a%esvp>%su#KS zIhC4Ki`*=8M}6mV$I?ptb;S%L0?Ge$MA3;Z2BpBovgbJ55=Wj4J&9!Igj7~IhE+(* z=w^_;8e9a|a6N?HDEbg*=(nAM>Xv=SZHG?Vx1C+pGt^Z(&rOD?md`HK5D(h8gbG7fH7*;n=20h1#S7 zFCUu>!DZsk(2+4L{>CfixU-?kI6Sk=m9zh9I=SrbL-*^z2U zS0yfrcAjDG(x{a{0+n99*dXY)YgvEr#mCU1R>zoIwD(tzI>L}jG(F}>7u4Yfl@VB} zs+qy_WBoofiH>E3rteY>Dt!szQQiHjN|~;XdMp%%_Bz&-RrF+ciY{aQezty}Iuy>@ zo}=@ZhA)opdKpdo6d5L(=Hd$Oa9bRdxq2eJG=?!mKM4P61(l=n9U)64i_zFJehBuJ zCIO7roPaQH(>z*rz#WW{MQTSEdHKOpwO~mJeIfI7XzWy|R0~az&j5ua$#Z-Q%*6yI zw-De2H0^(UGBZuk+s>jZ7eb$HL{H&fjk|zEFVO!Jkq?K6eM9@|v2C1G;eSk`r(OVpy;N6J5A7dWAlM?r~NI5BwG_3 z8r3!RfHWJ9K1p&d0*bI2CFw3z&ZRvcn*M?Rp^D&`6MyI?;gmD~w?sfs@P+V5PM=F@ M=7Wcfylc3EUoW>F{Qv*} literal 2351 zcmbVNTT|Oc6#mv2y*M2^0gZ9cW80=~~*@N^Hqptq4pz z)0a;94SDTLpYzg;`_Soge^RHnBiV+CgqW$vv(kRrbM~C?-2V9I*WUo#g58N2+BC#< zw4;Mz)0IWTt4iA`K9Ia39=r09;R(~1w%Riui-N&@RT7S}O|ER$G4gh$S{9qKyb!_j zzG({2Tjq{c7LuW3-ga!2VQ3ql*h(USQyMyTB%w20dB}J8F5Mz`%0d|>rK-j6WXwivp}w*YgA zXIpp-Lk<57U)g12(JhyS84#XM;yf;B7}4=ME;955J{kg%1IT)9O3Kt$6@11CMB zctgWw9anIbq4!Wv^9X}h;@-O0CGII~+kwQmjtNXM#GMfCYw8a9*eE(_!E`h3z>$_Q=b~Jq_Lyn4zS|ZDg13bE{%IotVX28s66N4sJ4> z4n2Avz1x}xJltTGI` zPBeiU<;L(sJwIDkQ~LPgi8zzawvJ=e6ezcg0#ibqW8(>_OYzpaI_Wxd(W;n$gwMV%& zdjgk_rY@<_WV26=wd6KzXe5)62RYL^ZuRUUsqVno!xl`nb^?o|jFXmR)8(+;4Ak4& z(Pl&4BTD&RwMqNhOC{!0C$QxO_A+EoS6*@R(HgHd!rHmCYl>>n@;nU%hBIL~+pe*) zaqvZh^+FeKOpSvxRMC0Ym!`O52PrhxIsvZ*H!%$7d>V5Vv1NNUW!r+|xGJ1^lx&kP z_mX<6a20Vx4ZA|kfP$39C1j~|gI^3Rn6k94)6SqLqi6f%Gq9)O=M7qe&p;18qE)XS zz{kkZjs?X}N=TTkA`XqP{ZtJa6-HMLJuytz&`*^RACA{>j$Yb_+iSSQ@C4hz+Ze;| zNX>N&choRVLN|WFn@^xm^}bs}I)q8I}X{;|R>p zkm*1lx@aW!V~|?%5Ef}HuHr25a1Ni-_%d+;7DnLF2>TWn@f{78?{OJF(kKet&JYQ+ zSVkWA=#89g5D>g=Vk;zNAD`gUkk@^DhHbRbZIZNqL3VseG68jU zN-Rs%&q>Tn*AFf!%FIi**7Rg#;00<3EKMz{3{K830;&_%@YIB;EG@~*(f7$LF0p20 z(AV&s%*d!ec>`ksBgbS#CI>whpi%}A1_mH4${@zT$iNPC1rvif5KDkrk_=Knnhhu; H&AB;9rZ`oG7N-{FCFZ6wGKgyUWF?j*>gOcp zrRxWm6lLb6TWfkUG6(}zx}=sQX67JNPmX3PVdR>8fhj?ag^@v=L4tt+NK1lf1||k6 RFe%L-1Ekp)7#U<47yvn|AAa%T&b3FS38dK=7#XA( F7yxKr2~q$6 diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/mapper/impl/ScoreDaoImpl.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/mapper/impl/ScoreDaoImpl.class index e8fad1813e1cd6fb3bb61085a5f206a63e6244e3..5885825c4e205507a1eaebe68a0288dc1b925a68 100644 GIT binary patch delta 855 zcmaKqU2D@&7{~u7aY?PIt1VWrP@S8Qb{Aow)7nkzoSo55?Yh;stKdSZbP>8_u&aHD zehn`i^Q~S;Z$$8u_$kDHl9C-LcypfTIXu7r^K#Cw*>NuY`|tN309NtlIDMjQrm!qf z=(>K}4|ZM8w|CbLclOt(9#`1QT6>+;oOO-n7f{ec<={R1$MO&`2-i+4r_5A8+;~( zHXm*H=HdvZiZSND;MNCT%Zt7tiOK_PV<#G5Zv~xj*TmK*s@X`jR{Vx*BV1Ca-mWT1 UPEQxV!wYJ@j9Ph>e3aL~KWzkR_y7O^ delta 479 zcmaLTy-ve05Ww-j6B5G=d| z;_M>F5)zB=?A-6p@oVF4DSrQcegO*ZpW;anX?luwISyAQ>*01#e$*aTcTfb(vmkX^ z@*2Cc@0UfCjs|kJNGNN<49m>XU{7`}seqV$4kVh)cqMZnl6WXli9E8M9;0?{I+-uV znhvJgtkVud$pen%ti_2nUr{!wOzKUoyQy_fITJJ0BgsD&8xpnV*2S4Xi BD6jwk diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/mapper/impl/StudentDaoImpl.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/mapper/impl/StudentDaoImpl.class index 09974848fdb7aa70f98707e31d62f1c5751b8cd7..89ba9b22ae17b4ec53a760f562b519c959a5a16e 100644 GIT binary patch literal 2756 zcmb7_YgZdZ7{~vUP!hr>5Mrq!!Wuo4B>1rM6#Zxrkzz;+!{(L~ z@WwHTbPQ7pGI)jI#(6m8gU?{Nm96$YtT~o2+NIEp?{g_viDQ~9yPcNi@Q~$K6zI>HbDe@%6*dKO<$Sh%Ij$pgRqmr8%=<f?v{w zKnhiJfrLGFxz#;PcpUFDEMIh2F@`e3+)Z)3AgSzQD<_lr*7GdYI10uqyElJm6wtt*3 z%$~NC7B+RwrlUkU-LK}L)2UZ#qHSo7Yf)6n=ctMG)2wZf^vlB_6>1hY=u}Dzl{vW( z5iJHrpXOxQ9}W5ue`QDe-d1SGRQ6b%Qjs2;JX7f8VBInlP7nLwLBvqK(1tT5r3WPy z>BOv=uGQoZgsj_4zZ2voQjiH{SR7htw!&`Ck#6N-n;{L=;c^HslQ~sYzT3@l!p13RQeUEIKbw zU|uHXl_AU-V$PnyoWVNTmpV7eSE(fF>AXhF*(iRd2|pClHQ;&(m+VPQ;t{s#`={RO z$MkO=JM@&;hXFR@VXqVRjVS)X!tcobGyuODf@ga03~C;n;r0p8w@!oR&w#4f4U|>_ zrD;!TVdhUP4Uelz6|oe;rh8h`c!E0N81CZf&;Z==v0e;T2BUi?1Puq^vjDn=&x2&G z&|Bt1@wBeK#JiDWxmxpRioY(9=x68)n)?!81+1fqzc)Pb8zE`o#QU}BW4|WsHz#1< U8;&iX3md_=Ua5T7YcdV^A1i2gV*mgE delta 885 zcma))%TC)s6o&t?0|8@4F;R&iQ5r6RCKSviNudptqzzzN3N+=ijT9>arCAiWQoG5j zeE~m2cL+omO(m)>SkZ^+8&sUJEn_4QZ04MqIsZ5RnVItkM-l1b|F7Qw7O;0BeP^0d zGa80zRLqYxqiISQ#z+t;8KW3uP!Fn~s#>GktZRDHH0s6&>x+Eawb8ODq5cBNm={ND5 zoxbn*%A)gN5YPje%yv`WfoC)?Slz)`d4bkK5NQk}0G0N8u}HH%ssJQB#}Y-JaXmwk z@=l5+isT0`Xe?O!!G}3cl5ABU6hwWLkVgsOCCa2=#CMcu*OW0*#_v$ZkhR^bU5OSy zle+-Q_sPxNxqEOcWOUp1v*UfZUEmTjdScB0 diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/service/CustomUserDetailsService.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/service/CustomUserDetailsService.class index 6a510403e80f435de451d3d6669a4061f51dee27..0e8b63b036a04c5fbc685eeeeda925017424606e 100644 GIT binary patch delta 880 zcmX|9*-{fx5IuKha3*1h5(I=IA?%O<0|8tCK>;BOf`}SdCJP~$%}m(bQ2)TXKY(AL zxCDh#sw^$4tnv$dvdZ$^HyPu8qoS-%wy zIAv6-aG{E!G`O6c*MhU*#FE$BuBDQ5No~pqry24i;mknP&;zk>h(T;@8j(@M(8H^k zV_2Wh(3MOysArPkSXDqisL4(5X%e6SlFIJY(AWoaZbf3#u$3}GqIPqN}&!P z##Kz1n3CEZDPxlK%;^id7Sj_EZ8DRNCL&h&Fs0%WF7wY)K=Hw^;wr9jEzc+2VCXXk zy?UPK6l`fL3}j@?n+zBDH~AA=;;TwMyUVwgCiam3Qryxb1}E=RO1V>!d5^`ua-B5U zkq?#LPoQ%iZc@BO*$_p6qSd_)=JvdSyq2q(CU1jC-VO;xu;3tc%1U;s5kQbKx|i$9 z5Tf%w>KvxXFoVc$|DQBVTp=*-ehu044g~^6o3~N8i6Xye1I55P%C?%bsE}4su!(BF zy>=b-TQAW-U<+A0Sr^&S4V(b7=zWXRCY;5H`6Y|<(tBL+i)P7W78kR)@`476m?rNv zHLu_h(JaG$l+%k>ppLwTN?Ljq#^_g?LJbM3MU=k82s4Gca^mCvg~sV|XGvNG;}&?qJ|QrBw+}H1T+#vQ3i=9Dh^B{Vw?iR074QI#)a|__bJqk zXc>_zUAfZoA@nI+Se7R(x;WE+&;9Rzy3fz5?}xo#e(!w(`q|p?ep3||K|&^VHuW^< zXRfa1Fij@SHZ8O&s^_+{YtgxdRAw_4>x|~IOWEjDA(hv=u0~IoHk%0T`iHBvJIryL z6SOOQ>D202vQXH_=I6bHIcd{b!aagdWS3Kg0E#Y~YEJ0^_pEiAGbTMYXY~trlfRcf zlYW~4&MRWNLB({1G479Z!DPthB9{~c4m@hu`lT`773Z?el@jjB?LTWWqByveTu(-q zlbLjMay7r0NqdQN-R1^2b-ZlW6KBk3oC*D^Y{a;w7<5>lo95eCd9};G=w*o~Cd(zI zD|*`VS!H#t)uNv2A*)TT=@lztY$!rHXNB|!E3iE&a|Q5W%lCCjUdEKf+fofnbV>9^ z-lHPz?=W|qo@w!Z+~N;m$X$y{?nqVjx0@O6N+tIkRz*Vca$&wFQE{IK`}|+!Ew>?H zLf`ZTx8G3PQKV7qm{^BcbdMMm>E7jB2`(~NIw>-2eB|nkyVNpSe_r?|LXgebV}fq==mrLJ#T} wK~pwkPAWsrE5*-C?jrSn#K%&n#r%RUNKeM`Ir4%91dG#4K}4;x&L%Z~0G1GX5dZ)H diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/service/ScoreService.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/service/ScoreService.class index 0ff5fbf836a3f4a58b0ca46be904f7b63b232c54..bb37fe12869e27867d36da0e0cb5cb57ca853fe9 100644 GIT binary patch literal 1848 zcmai#+foxj5QhH=ft;38kSIYw5itj31@RaJ0gEzKDJ_lWeo4kKnCzx@XVJWq7h0ud z;e`+2Ls|ChMwDGbZYFc+`Fi^A-p;SzKYjvug1san7>XgPVHhI}6Gz6ep|=dPslPlp z;&sU|vMEdF( zmd^}}VWD#NLfhzcxb54MK`DhXjK?scVG?PExeKisQVrhXl6&qLqPcRutO%DhOe4df zHM#W8cDv;U(dazjzhfO)zIV^{6%8}U5|=LSv|2rGI+w3_vba*T^onq#XM9z|9OfCu z$oQ4Z?XG9;Fs$VIdpVbMO~Z98l3TaaFiyjny9ndOxuoHycTbq4ydSEH|CWXv@(dXj zzjPbil;y^5_bnNjMw>HC=lp=YJXfVH%x1}#uBc%Jw;4vy1jR6=v55f1S~bHKYTet6%0odKE(Ih!ud+%E5kYxnWk1z_ zGe*}FRnasJ>DuIGHI%;10Q|oy*dpk#qw19*+uw}gc`)? zA3#i2E!VE|eW7HY^y;$ee~qguhYT~XT~mrSuL(zx_B*C&Nka18Ll%tEZJ$I{47#pXx( z!1MQz_NbZkNN1i^Ji%=ES@V6K^$3p%qxvX>wbT2+{QB^<+albymzt;8p%T+f$Q#RxZw53=Vz8Q0)_}4tUWc zCK^28j+I$f6dP0&>r{1{VUAU0t^73+gXFr}yi6TOg~N~TaXZh{EjKFXl9~p=`~>W$ zuxjA5#=823ro{O|e`O1nTRokWwMtna$A8-fZ2@6&?sSIfNAexo88(~k;}z5}Q*Wxa zNH=4yoZzrzy5*=}lSXWb$?0v~mgp&l$(Iw1O1d|dHY^uZTnplo>QALCJK4^=>=i%T FhaWK#Cv^Y- diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/service/StudentService.class b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/cyou/chenx221/service/StudentService.class index 068398e6949d7f902ae4920ed9a2be588ca04835..9db65c668b21507b7c0a088aff84573c832c3ccb 100644 GIT binary patch literal 2259 zcma)+ZF3V<7>4hYhNeljEwoZZ5CownsdgbE3MqxYSdC_2FxcD{%zyHO z&geMx13$nY<#?anZJK2B;+LIs&YtIb-tP1K^Y7p906f9>1!ORnL)O3r%nMvRw%%B# zZ8;tD#nG{B1p@P1%2C0#z+9<(n8yP0ITQ>OVF=u5_1w^Gy_U`|)#`oIm);xIl4dgq z+tLY|@m8SV#|QhCD{!kZY;oK9_QBAW(G+=~(Q_HOS- zHpa0|q`>8Ih`M%LHSoE%S*6>38Cc35w4>`80$@i4vU_fuUX~lmkesL~=8IEQEa#6q;`6 zwd8@)omovP+KlJKrhXR!SAPhdK%K}#AQQ7ztx!<|V;32|;ZFhT;aWbhlKiqoFwCGhHbx`WX@ zO<){ryst~BOQ|giI^9!T6Dih>h@}g!3l^8|8P^%?@Qed5Aq|Da!re@Vb$dcsanWMv zE}@)z6QCcbq3iz>%5h1w&UvUKjC4KSkqT4YmSZpg2XoLt#B8kL+f+GIlA1ZO@BlseQMIWLM;NF!)H+A94m0Nf2 zTqp_$}T@5Uh$F8=yIzeP%HS9 z=IV?9?E%n61G{jAxX8avAm)8It8qVQ(SUNf$wkl( zLfQ%nq{zUHfX>-uU>|w)7siT0z!IZ|<~5mX9P(@x#gNqR%lk6syj#O;ie>DFu^7>g z*rm{e9Wh($!MqP+Ik?51y7W)=dgLvZ#yv07^U4(PwV0lYBu;o2RT67chytu&L)_wk fj`tZiFNYS@Bb3K{?|q9-sci+$pW!?-_X79@^xQrQ diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/ScoreMapper.xml b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/ScoreMapper.xml index a858bc5..a922cd0 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/ScoreMapper.xml +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/ScoreMapper.xml @@ -67,9 +67,10 @@ UPDATE score @@ -80,4 +81,21 @@ INSERT INTO score (Score, StudentID, CourseID) VALUES (#{score}, #{student.id}, #{course.courseID}); + + + + + + \ No newline at end of file diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/StudentMapper.xml b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/StudentMapper.xml index 9c67cf2..f6a1813 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/StudentMapper.xml +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/mapper/StudentMapper.xml @@ -70,9 +70,22 @@ VALUES (#{name}, #{birthday}, #{sex}, #{phone}, #{classes}) - + + + + + diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/spring-security.xml b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/spring-security.xml index b1c87ab..9c07e3e 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/spring-security.xml +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/classes/spring-security.xml @@ -20,16 +20,36 @@ - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> + + + + + + + + 课程信息查看 + + + + + + + + + + +
+ +
+ + + + +
+
+
+
+
+
+
+ +
+
+
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + +
课程ID课程名课程描述
${course.courseID}${course.courseName}${course.description}
+
+
+
+
+
+ + + + +
+
+ + + + + + + + + \ No newline at end of file diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseList_t.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseList_t.jsp index d750cef..8228271 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseList_t.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseList_t.jsp @@ -47,7 +47,7 @@ @@ -133,7 +113,7 @@
-
diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseQueryResult.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseQueryResult.jsp index 60d8e97..c715a2c 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseQueryResult.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/course/courseQueryResult.jsp @@ -47,7 +47,7 @@
- -
-
@@ -223,113 +188,7 @@
-
-
-
-
-
-
- - -
-
-
-
-
-
- - -
-
-
-
-
-
- - -
-
-
-
-
- -
-
- -
-
-
-
-
-
-
-
-
-
-
- - -
-
-
-
-
- -
-
- -
-
-
-
- -
-
- -
-
-
-
-
- - -
-
-
-
-
-
- - -
-
-
-
-
- -
-
- -
-
-
-
- -
- -
diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard.jsp similarity index 100% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard.jsp diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard_s.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard_s.jsp similarity index 94% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard_s.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard_s.jsp index 6e7d9ff..abbac8f 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard_s.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard_s.jsp @@ -41,7 +41,6 @@ diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard_t.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard_t.jsp similarity index 88% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard_t.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard_t.jsp index ab306c9..7531e20 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard_t.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/dashboard/dashboard_t.jsp @@ -40,14 +40,14 @@ 学生管理 diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/fail.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/fail.jsp index 09fefb4..0c4c583 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/fail.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/fail.jsp @@ -1,4 +1,4 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> +<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/login.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/login.jsp index 707a07b..e5679b2 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/login.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/login.jsp @@ -15,14 +15,10 @@ - - - <% if (new UsernameHelper().getCurrentUsername() != null) { - //redirect /dashboard //note: 登陆了的就别乱访问了 response.sendRedirect("dashboard"); } @@ -239,10 +235,12 @@ $('#exampleModal2').modal('show'); }); + function showNote() { alert("功能尚未实现,请联系管理员重置密码"); } - function showReg(){ + + function showReg() { document.getElementById("tab-register").click(); } diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/person.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/person/person.jsp similarity index 85% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/person.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/person/person.jsp index 4d3842a..fadd922 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/person.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/person/person.jsp @@ -39,7 +39,7 @@ diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/studentinfomodv2.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/student/studentinfomodv2.jsp similarity index 100% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/studentinfomodv2.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/student/studentinfomodv2.jsp diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/studentinfomodv2_t.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/student/studentinfomodv2_t.jsp similarity index 90% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/studentinfomodv2_t.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/student/studentinfomodv2_t.jsp index 505d919..c6daf00 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/studentinfomodv2_t.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/student/studentinfomodv2_t.jsp @@ -50,7 +50,7 @@ @@ -256,7 +236,7 @@
-
+
diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/success.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/success.jsp index 2e29ab8..6921c93 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/success.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/success.jsp @@ -1,4 +1,4 @@ -<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> +<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/settings.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/system/settings.jsp similarity index 100% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/settings.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/system/settings.jsp diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/teacherQueryResult.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/teacher/teacherQueryResult.jsp similarity index 100% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/teacherQueryResult.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/teacher/teacherQueryResult.jsp diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/teachermanage.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/teacher/teachermanage.jsp similarity index 100% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/teachermanage.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/teacher/teachermanage.jsp diff --git a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/usermanage.jsp b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/user/usermanage.jsp similarity index 98% rename from project2/out/artifacts/project2_war_exploded/WEB-INF/views/usermanage.jsp rename to project2/out/artifacts/project2_war_exploded/WEB-INF/views/user/usermanage.jsp index 4e86bb7..7cb779b 100644 --- a/project2/out/artifacts/project2_war_exploded/WEB-INF/views/usermanage.jsp +++ b/project2/out/artifacts/project2_war_exploded/WEB-INF/views/user/usermanage.jsp @@ -430,8 +430,7 @@ $('#de_button').on('click', function () { reloadka("reload"); }); - $('#exampleModal3').modal('show'); - $('#exampleModal3').on('hidden.bs.modal', function () { //针对点击modal外的情况的处理 + $('#exampleModal3').modal('show').on('hidden.bs.modal', function () { //针对点击modal外的情况的处理 reloadka("reload"); }); } else { @@ -463,8 +462,7 @@ $('#de_button').on('click', function () { reloadka("reload"); }); - $('#exampleModal3').modal('show'); - $('#exampleModal3').on('hidden.bs.modal', function () { + $('#exampleModal3').modal('show').on('hidden.bs.modal', function () { reloadka("reload"); }); } else { diff --git a/project2/src/main/java/cyou/chenx221/handler/CustomAuthenticationSuccessHandler.java b/project2/src/main/java/cyou/chenx221/handler/CustomAuthenticationSuccessHandler.java index 766e212..36a4c81 100644 --- a/project2/src/main/java/cyou/chenx221/handler/CustomAuthenticationSuccessHandler.java +++ b/project2/src/main/java/cyou/chenx221/handler/CustomAuthenticationSuccessHandler.java @@ -19,19 +19,19 @@ public class CustomAuthenticationSuccessHandler extends SimpleUrlAuthenticationS // 移除 errorMessage 属性 request.getSession().removeAttribute("errorMessage"); - Collection authorities = authentication.getAuthorities(); - for (GrantedAuthority authority : authorities) { - if (authority.getAuthority().equals("ROLE_admin")) { - response.sendRedirect("/dashboard"); - return; - } else if (authority.getAuthority().equals("ROLE_teacher")) { - response.sendRedirect("/dashboard-t"); - return; - } else if (authority.getAuthority().equals("ROLE_student")) { - response.sendRedirect("/dashboard-s"); - return; - } - } +// Collection authorities = authentication.getAuthorities(); +// for (GrantedAuthority authority : authorities) { +// if (authority.getAuthority().equals("ROLE_admin")) { +// response.sendRedirect("/dashboard"); +// return; +// } else if (authority.getAuthority().equals("ROLE_teacher")) { +// response.sendRedirect("/dashboard-t"); +// return; +// } else if (authority.getAuthority().equals("ROLE_student")) { +// response.sendRedirect("/dashboard-s"); +// return; +// } +// } // 如果没有匹配的角色,或者无法确定跳转的目标页面,则默认跳转到 "/dashboard" super.onAuthenticationSuccess(request, response, authentication); } diff --git a/project2/src/main/java/cyou/chenx221/service/CustomUserDetailsService.java b/project2/src/main/java/cyou/chenx221/service/CustomUserDetailsService.java index c8ab566..1674b7f 100644 --- a/project2/src/main/java/cyou/chenx221/service/CustomUserDetailsService.java +++ b/project2/src/main/java/cyou/chenx221/service/CustomUserDetailsService.java @@ -3,6 +3,7 @@ package cyou.chenx221.service; import cyou.chenx221.mapper.UserMapper; import cyou.chenx221.pojo.User; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.authentication.DisabledException; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; @@ -24,6 +25,9 @@ public class CustomUserDetailsService implements UserDetailsService { if (user == null) { throw new UsernameNotFoundException("X User not found with username: " + username); } + if(user.getDisabled()==1){ + throw new DisabledException("User is disabled"); + } System.out.println(user.getId()+" "+user.getUsername()+" "+user.getPassword()+" "+user.getRoles()); // 创建并返回自定义的UserDetails对象 return org.springframework.security.core.userdetails.User.builder() diff --git a/project2/src/main/resources/mapper/ScoreMapper.xml b/project2/src/main/resources/mapper/ScoreMapper.xml index 2f49b29..a922cd0 100644 --- a/project2/src/main/resources/mapper/ScoreMapper.xml +++ b/project2/src/main/resources/mapper/ScoreMapper.xml @@ -85,14 +85,16 @@ - + SELECT ScoreID, Score, st.id as student_id, st.name as name, c.CourseID, c.CourseName + FROM score s + JOIN student st ON s.StudentID = st.id + JOIN course c ON s.CourseID = c.CourseID WHERE invalid = 0 AND StudentID = #{id}; diff --git a/project2/src/main/resources/spring-security.xml b/project2/src/main/resources/spring-security.xml index b1c87ab..9c07e3e 100644 --- a/project2/src/main/resources/spring-security.xml +++ b/project2/src/main/resources/spring-security.xml @@ -20,16 +20,36 @@ - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + +
-
diff --git a/project2/web/WEB-INF/views/course/courseList_t.jsp b/project2/web/WEB-INF/views/course/courseList_t.jsp index 157f786..8228271 100644 --- a/project2/web/WEB-INF/views/course/courseList_t.jsp +++ b/project2/web/WEB-INF/views/course/courseList_t.jsp @@ -113,7 +113,7 @@
-
diff --git a/project2/web/WEB-INF/views/person/person.jsp b/project2/web/WEB-INF/views/person/person.jsp index 2808bbd..fadd922 100644 --- a/project2/web/WEB-INF/views/person/person.jsp +++ b/project2/web/WEB-INF/views/person/person.jsp @@ -146,7 +146,7 @@
-
@@ -243,7 +243,7 @@ contentType: false, // 告诉jQuery不要设置Content-Type请求头 success: function () { $('#default_avatar').hide(); // 隐藏默认头像 - $('#custom_avatar').show(); // 显示自定义头像 + $('#custom_avatar').attr('src', "/person/image").show(); $('#note').show(); // 显示提示消息 }, error: function (xhr, status, error) { diff --git a/project2/web/WEB-INF/views/person/person_s.jsp b/project2/web/WEB-INF/views/person/person_s.jsp index 0ea9474..e782b74 100644 --- a/project2/web/WEB-INF/views/person/person_s.jsp +++ b/project2/web/WEB-INF/views/person/person_s.jsp @@ -129,7 +129,7 @@
-
@@ -226,7 +226,7 @@ contentType: false, // 告诉jQuery不要设置Content-Type请求头 success: function () { $('#default_avatar').hide(); // 隐藏默认头像 - $('#custom_avatar').show(); // 显示自定义头像 + $('#custom_avatar').attr('src', "/person/image").show(); $('#note').show(); // 显示提示消息 }, error: function (xhr, status, error) { diff --git a/project2/web/WEB-INF/views/person/person_t.jsp b/project2/web/WEB-INF/views/person/person_t.jsp index aadb331..00f5330 100644 --- a/project2/web/WEB-INF/views/person/person_t.jsp +++ b/project2/web/WEB-INF/views/person/person_t.jsp @@ -132,7 +132,7 @@
-
@@ -229,7 +229,7 @@ contentType: false, // 告诉jQuery不要设置Content-Type请求头 success: function () { $('#default_avatar').hide(); // 隐藏默认头像 - $('#custom_avatar').show(); // 显示自定义头像 + $('#custom_avatar').attr('src', "/person/image").show(); $('#note').show(); // 显示提示消息 }, error: function (xhr, status, error) { diff --git a/project2/web/WEB-INF/views/score/scoreList_s.jsp b/project2/web/WEB-INF/views/score/scoreList_s.jsp index 1493d43..a69e301 100644 --- a/project2/web/WEB-INF/views/score/scoreList_s.jsp +++ b/project2/web/WEB-INF/views/score/scoreList_s.jsp @@ -110,7 +110,7 @@
-
diff --git a/project2/web/WEB-INF/views/score/scoreList_t.jsp b/project2/web/WEB-INF/views/score/scoreList_t.jsp index 158856b..c1bfcbe 100644 --- a/project2/web/WEB-INF/views/score/scoreList_t.jsp +++ b/project2/web/WEB-INF/views/score/scoreList_t.jsp @@ -113,7 +113,7 @@
-
diff --git a/project2/web/WEB-INF/views/score/scoreopv2_t.jsp b/project2/web/WEB-INF/views/score/scoreopv2_t.jsp index 64729c4..e085312 100644 --- a/project2/web/WEB-INF/views/score/scoreopv2_t.jsp +++ b/project2/web/WEB-INF/views/score/scoreopv2_t.jsp @@ -113,7 +113,7 @@ style="background-image: url('${pageContext.request.contextPath}/resources/img/jason-blackeye-nyL-rzwP-Mk-unsplash.jpg'); margin-top: -58.59px;">
- +
diff --git a/project2/web/WEB-INF/views/student/studentList_s.jsp b/project2/web/WEB-INF/views/student/studentList_s.jsp index d1f51e6..85bafc7 100644 --- a/project2/web/WEB-INF/views/student/studentList_s.jsp +++ b/project2/web/WEB-INF/views/student/studentList_s.jsp @@ -110,7 +110,7 @@
-
diff --git a/project2/web/WEB-INF/views/student/studentList_t.jsp b/project2/web/WEB-INF/views/student/studentList_t.jsp index ccaeb87..e491756 100644 --- a/project2/web/WEB-INF/views/student/studentList_t.jsp +++ b/project2/web/WEB-INF/views/student/studentList_t.jsp @@ -113,7 +113,7 @@
-