Spring3.2+Struts2.3+Mybatis3.2整合使用(注解使用)
0.包结构:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWUAAAF4CAIAAAADr3+pAAAgAElEQVR4nO2d/1MTxwP3+WucznSmnY7jL5nR0tFW6thaSLUqtiLUMwlfdJBiCBHUFoo6lbP80KJWqF9SR1u/fKqp39ApPgpq1ProB3kIUz4Ita1BtCpOLDr7/BC47F32kr0kJJvc+zU7Dhd2LyvZfXF7yb7JIanF5XINBYJKcbvd9KHL5eI9kVfKscj+qewqAFnDNSM8evQo1Mp71jd475lSCCE5ye3W+fPnm5qaolRwOp1DgWDo66FA0O2upQ+dTifvM8EXAHAjoi86OjpeffXVadOmRalTva6aFkRtrcoX1euqoz6DV8qhUHzhly2Tj0lepaZFliVNReoMFlmmjRM+8+RjftmSI3m9kro9AJmIcL4IyWLx4sXRfVFVVUUvQFavXl1aWlpeXv7TsVNDgWBVVZV+U68U1gHxSso09svS5HwOV/FKijz8smWiKn0Gv2xRzkBfq4Q0MVkh/IQAZDBi+UKRxZIlS6L44uLFi0/8p0evtT9/0H/q1EmbzVZWVub7v/6TZy84HI6ysrKysrLS0tKffvqJ0VizAFEfRlxhaBRgkf36Z1BftUxeTyjiACDjEcgXtCyi++LFs4eDBwrHBg7cPbT8xfjz8vLyob8ePh9/ORZ8OTAUuOO/2+O/23H+/zgcDkZjvdlOXyiE57hBXzBWHPAFyB4E8kVTU9M0isbGRr2age7W/uOVtUtf+/1Y2cPbR/fv3z/6ZFxT5/6jf+12O6u1zmqCmu1+2RLt+iLaeoRe6YSXMfAFyA4E8gUn42OjfbsXDF7a+MErOU96tvr3fDh8d+DGrf9XV1fnpnDVutesWeN2uxmnoG9Khu9WhtciFkmKdn2hrqu638m4YwpfgOwh83xxr1Me+rlorKfuyNa8YO+GgR8LR24cqqqq+u9//ztCcf/+/Z07d7J9kVzwjiwwDZnnizvtix77nM96vmipmDHe3/TPleo+zwo7C6fT+eTJkynogl+2sN5gASDbyTxfXN/+5qPu6pcDzcOXal8ONN8/V9bz/ZLy8rKUdYAQ1boDsgDmIfN8Ebh94vKWGV2Nr4eKT84d7TufsmcHwMxkni8AAOkCvgAA8AJfAAB4gS8AALzAFwAAXuALAAAv8AUpKiqaqlOHt8ADkA2Y0Reaj4EWFhbSh8n8CDl8AbILM/oiadmfbLDBDGQtmemLnBwUlDQU0wNfoKBwF9OTyb5Qwxn8SSKyP2trVcsT/exP3YBP9S0Kaj2iyunSpAJHyQcF4gFfEEKyxhecwZ+EEDr4U5JWStJKq9VqtVpttlU2m81ut9nt9ijvmGgDcRjhFyxfaKsxv0Hl8QDRgC8IIdnhi7iDP0MXFHa7nb6+WLNmDbsxM+Azfl9EZn7CFwIDXxBCssMXcQd/EkKGAsGaGtWfPqpYXcFurBvwGf5jJbImEDzKeoT9JwjgC1GBLwgh2eELTiKDP8mLfyN9UVamF73DDPikH6YsEQrSUb21Sv+5AfpB+CITgC8IIabyBTP4U/GFUuwOZqo4MDfwBSHEVL5gBn8WWAtKSooLrAVKsdltU9FlkNnAF4QQU/mCGfxJCEl19ifIROALQoipfIHgTxA/8AUhxFS+ACB+MOQIIfAFAFxgyBFC4AsAuMCQI4TAFwBwgSFHCIEvAOACQ44QAl8AwAWGHCEEvkiEBtsn8TTLgr/nrtr/Yo4sMTGGXNqBLwxwYUtx5+biztC/m4tLZ0+nD7u2O7jOkmpfROQDJh4YCF+YFbP74uLFi0+fPuWs3NFQfPNw3R1vw60j9V07HE1LZ988vL7X23DrSP3Fbx3nGvhyxuGLTAS+IITAFx6P58CBAyMjIzyVT21YPnhlR6DXM+TbdeOQa2/lwsHLrYFez9C1XT7PujMbP+Z6SvgiE4EvCCHwhcfjuX///s6dO4eHh2NWPuFe1ndevnt1Z/+vX1/Z91nLp/MmDjtbutsrf1m/VL8pvZk9R7WFXbvF3SvlWGRZ0lSkzmCRZUmT7aeuHPKBV5p4KKov4ukA/Q3aF5E9ySLgC0IIfOHxeAghIyMjsiz39fVFr3xs3ZLuvU7fwbrufTUd21duWpjbtdfpO1h3eX/N2W0lx2sW67SjM3Xo5BzdQNCIRE/6DHTOlyY+I1Qn5ADlCSklaAM44usA/V9QfMHsSRYBXxBC4IuQLwghf/7558aNG0dHR/VqKsGftzqONi+fW58/07Ugtz5/5oaCWc1FebvLC+y5b7DfMdEsQNSHEb/gWQk6emdQ/8qf/MWuma4x1iMJdUDxBbsnWQR8QQiBL0K+ePDgQfTrCzr4czz45MZ/Np9tKa3Ln3X1p003vVt/O9Z4rsXRtmr+g7//YjTWm2zMQFCjvmDMS25fJN4B2hfZZgg18AUhBL7weDyBQCDm/QtN8Ofo/y74fnDW589S7nd2ta3dX/qeTmud1YRuIGhkQl+U9Qi9TAivIrh8kZwOROaYKj3JIuALQgh8wfP+SGTwZ/Cfe13ta5uL8pT7nZ07Vu+R5umegr4VGL5byQwE1Un0pOqq7ncybljyr0eMdID9X6DudzJ6kkXAF4QQ+ILn8xfM4M8zX5W0VVi79zqvHaq/vN918sui3SV5SelSbLL+4l9A4AtCCHzBAzP485tlb29aNOebZW8r5bsV70xZF/yyhfXuBEgZ8AUhBL7gITL48/buD58GhisXzHkaGFbK87HHU9gJ6mofskgD8AUhBL7gQS/4k/1uCMhK4AtCCHwBABcYcoQQ+AIALjDkCCHwBQBcYMgRQuALALjAkCOEwBcAcIEhRwiBLwDgAkOOEAJfJIJ58ztNiBhDLu3AFwbI3PxO1oe8lEAdwAF8QQiBL0yS32mxWDTPOfF5UfiCE/iCEAJfmCW/U9ZsUvXLFk2uH4gKfEEIgS/Mk9/p1TSyyH5thh5fT9j71uPuXoYAXxBC4AuT5HdKXvoc1COGe6JbM97uZQjwBSEEvjBTfufkpNeJ8+PqCbNmQt3LEOALQgh8Ya78zskVhvbXP39PmDUT6l6GAF8QQuALk+V3hn7jq25QGOuJbs24u5chwBeEEPjCbPmdqgNvHD1h1kykexkCfEEIgS+Q35l8BO9efMAXhBD4ggfkd8ZC8O4lA/iCEAJf8ID8ztgI3r3EgS8IIfAFD8jvBPBFCPgCAA4w5Agh8AUAXGDIEULgCwC4wJAjhMAXAHCBIUcIgS8A4AJDjhACXwDABYYcIQS+SIQ48ztTSXgfOkgMMYZc2oEvDJCc/M4pQLWvixCiiAK+SBbwBSEEvkhDfudUoBVGZu7pEhn4ghACX6Qhv3NKUAsDukg68AUhBL5IZ34nPau1+8yjZF5KEr3GmNwMqo2gYGRNaE9L7SOlWmfl7tLEgS8IIfBFOvM72b7gyLxUT/SJR5mSiHpa+pvKHxyALtjAF4QQ+CKd+Z1MX3BlXtLBWBFROPynDef+WmS/V5p4CLpgAV8QQuCLdOd3siY2R+ZlaFozg7TYcVq6p1Wbwgtd6ABfEELgi3Tmd1JvdupkYepnXvpli0WSNJM78i+ZqdYjkaclftlisYTXPJF/Bg1MAF8QQuCLtOZ3hlNmdLIwo2VesnKs6KzdiHbMvzNEiQof7ooGfEEIgS/SkN+ZpDuKuDGZUuALQgh8wUOS8zuTMtHxCYsUA18QQuALHpKc35mwL9R/RASkBPiCEAJf8ID8TgBfhIAvAOAAQ44QAl8AwAWGHCEEvgCACww5Qgh8AQAXGHKEEPgCAC4w5Agh8AUAXGDIEULgi0TIgPxOkCzEGHJpB74wgLD5nWDKgS8IIZntCxSUFBfTA1+goHAX05OZvkgeqcnvVG8lV+8bn9xOwtxuDoBQwBdTn98ZuZc0MoAT+01BJgBfTH1+58SGUmYmnxLAGVkHAOGAL6Y+v3OC0IIjHMAXGcCpqQOAaMAXU5/f6ZflyFg9TQAnsw4AggFfpCK/Mxzfqf6jAPSVBLMOAEJhdl+kIb9zEgRwgozD7L7gIcn5nSGw7AAZCHwRmyTndyKAE2Qs8EVskN8JQAj4AgDAC3wBAOAFvgAA8AJfAAB4gS8AALzAFwAAXuALUlRUxFcRH7ECZseMvrCrKSwspA/dbrdOO/gCmJ0s8QXPNhAFl8s1FAgqxe1204cul0unHXwBzE6W+IJnm6mC0+kcCgRDXw8Fgm53LX3odDp12sEXwOxkjy/4Yzir11XTgqitVfmiel21TruQL3T3pocIbzllBHJ6pRyLLEvamgBkCNnjC8Idw1lVVUUvQGprVcuTqqoqnXYhAVBzPxylp8x95RrEL0uTj6lqTn6pDv0FICPIKl8QIzGcp06dlKSVkrTSarVarVabbZXNZrPbbXa7XecdE816ZPIwfG2hvcSIuMLQmAW+ABlGVvnCUAzni/HnoQsKu91OX1+sWbNGp7W+LyInvl+20Fmd8AXICrLHF3HEcBJChgLBmhrV7c+K1RU6rf2yJbwcoQ7C6w1CiFeSvERlBnVN+AJkMNnjizhiOMmLfyN9UVZWpnMCv2zJkSTW7U7Grc3wQxZJwvUFyA6yxBdxx3AqvlCK3WFPTZ8ByDiyxBc8MGM4C6wFJSXFBdYCpdjstnT3FABBMZEvImM4e75fQggpL9dbgAAAVJjIF3oxnAAATkzkCwBAgsAXAABe4AsAAC/wBQCAF/gCAMALfAEA4AW+IA22T7jrTnzKW5KV3eheCRk6wDSY0RcXthR3bi7uDP27ubh09nT6sGu7Q69heKOpH74AZiRLfGEov7Ojofjm4bo73oZbR+q7djials6+eXh9r7fh1pH6i986zjXoxoWzdq4rvkBaH8h+ssQXhvI7T21YPnhlR6DXM+TbdeOQa2/lwsHLrYFez9C1XT7PujMbP9ZrCF8Ak5M9vuDP7zzhXtZ3Xr57dWf/r19f2fdZy6fzJg47W7rbK39Zv5TZiorRkryqCBzJS39zwiiRiZ5U/Cc2soPMJHt8QbjzO4+tW9K91+k7WNe9r6Zj+8pNC3O79jp9B+su7685u63keM1ivYbh6wutL4j6+kIn0ZOO/wQgA8kqXxCO/M61BXMdb01v+Ci3raKgefnc+vyZrgW59fkzNxTMai7K211eYM99Q+8dE15fsBM9sWABGU9W+SJmfichJHDvj7ZV7/sOf95zetv1o41nW0rr8mdd/WnTTe/W3441nmtxtK2a/+Dvv5htDfiCseKAL0DGkz2+4MnvDLHPsWDwSmvofqfvB2d9/izlfmdX29r9pe/pNTSyHolI9IQvQOaTPb7gf3+kfeV85X5nV/va5qI85X5n547Ve6R5eg2j+mLys1yhGjqJnvAFyGiyxBeGPn+xa8W73Xud1w7VX97vOvNVSVuFVTk8+WXR7pK8Ke0qAJlLlvjCEK3L5nyz7G2lbFqkOvxuxTvp7iAAgmJGXwQfjz4NDCulcsEc+vD52ON0dxAAQTGjLzTovRsCANAAXwAAeIEvAAC8wBcAAF7gCwAAL/AFAIAX+AIAwAt8QYqKdAO1AAA0meCLnBwUFFGKuYEvUFCMFHOTOb7g4/z5801NTdHrOJ3OoUAw9PVQIOh219KHTqcz7p6CbAa+yDJfdHR0vPrqq9OmTYterXpdNS2I2lqVL6rXVeu080o5Ftk7sVFd8oZztMLhOLrb2MORW7EeJ8j+FBT4Ipt8EZLF4sWLY/qiqqpqKBBUSm2tiz6sqqrSaUdN19CM1ubg+GVpcjKHE3PUsZ2xH0f2p6jAF1njC0UWS5Ysie6LJ/7To9fanz/oP3XqpCStlKSVVqvVarXabKtsNpvdbrPb7TrvmNAzWe/ryCsMTUyOSgGMx5H9KSzwRXb4gpZFdF+8ePZw8EDh2MCBu4eWvxh/HrqgsNvt9PXFmjVrdFrH8oVftuREBnAZ9wWyP8UEvsgOXzQ1NU2jaGxs1KsZ6G7tP15Zu/S134+VPbx9lBAyFAjW1Khuf1asrtBpHcsX1GN+2aJad9A3LWI8juxPUYEvssMXnIyPjfbtXjB4aeMHr+Q86dnq3/MhefFvpC/Kysp0ThBzPRJei1gkSXV9IUXe1tR7HNmfogJfmMoX9zrloZ+LxnrqjmzNC/ZuGPixcOTGIcUXSrE77Ik/F4XeVIcCMg34wlS+uNO+6LHP+azni5aKGeP9Tf9cqe7zrCiwFpSUFBdYC5Ris9sSfy4K+CJbgC9M5Yvr29981F39cqB5+FLty4Hm++fKer5fQggpL9dbgCQF+CJbgC9M5YvA7ROXt8zoanw9VHxy7mjf+cRPC8wCfGEqXwCQEBiH8AUAvGAcwhcA8IJxCF8AwAvGIXwBAC8Yh/AFALxgHMIXidBg+ySeZuwdZRlF+L/glczzIRJRx2EqgS8McGFLcefm4s7Qv5uLS2dPpw+7tju4zpJqX0R8MCzxT4rBF2bF7L64ePHi06dPOSt3NBTfPFx3x9tw60h91w5H09LZNw+v7/U23DpSf/Fbx7kGvpxx+CJDgS/gC4/Hc+DAgZGREZ7KpzYsH7yyI9DrGfLtunHItbdy4eDl1kCvZ+jaLp9n3ZmNH3M9JXyRocAX8IXH47l///7OnTuHh4djVj7hXtZ3Xr57dWf/r19f2fdZy6fzJg47W7rbK39Zv1S/qTo2SxW4p9m67pVyLLIckQwaPoNFlmnjxAz7jOqLeDpAf4P2RWRPsgv4Ar7weDyEkJGREVmW+/r6olc+tm5J916n72Bd976aju0rNy3M7drr9B2su7y/5uy2kuM1i3XaaSJwqBAuRt6nV1JF+YXzQlVTPDxdY4Z9UkoIEyVwNGYH6P+C4gtmT7IL+AK+CPmCEPLnn39u3LhxdHRUr+bagrmOt6Y3fJTbVlHQvHxuff5M14Lc+vyZGwpmNRfl7S4vsOe+wX7HRLMAUR9G/ILXTDxtcpeqClfYZ4z1SEIdUHzB7kl2AV/AFyFfPHjwIOb1ReDeH22r3vcd/rzn9LbrRxvPtpTW5c+6+tOmm96tvx1rPNfiaFs1/8HffzFa6k02dt6nQV/EDvvU90XiHaB9kYWGUANfwBcejycQCHDev9jnWDB4pTV0v9P3g7M+f5Zyv7Orbe3+0vd02umsJth5n6zpGm09EjPsU98XyelAlNjR7AK+gC8MvT/SvnK+cr+zq31tc1Gecr+zc8fqPdI83Zb0rcDw3Upm3idzuqrqqu53xg77jLIeMdIB9n+But/J6El2AV/AF4Y+f7Frxbvde53XDtVf3u8681VJW4VVOTz5ZdHukrwp6qQWM1z8Cwh8AV8YonXZnG+Wva2UTYtUh9+teGfKntkvW1jvToBUIsw4TCPwhQGCj0efBoaVUrlgDn34fOzxFD43dbUPWaQHYcZhGoEv4of9bgjIVkQdh6kEvgCAD4xD+AIAXjAO4QsAeME4hC8A4AXjEL4AgBeMQ/gCAF4wDuGLRDBvfqc5EXUcphL4wgCZm9/J+pCXEqgD+BBmHKYRs/vCJPmdFotF85wTnxeFL/iBL+ALs+R3yppNqn7Zosn1A7GAL+AL8+R3ejWNLLJfm6HH1xP2vnX+7mUs8AV8YZL8TslLn4N6xHBPdGtydy9jgS/gC/78zif+06PX2p8/6L/VcTQz8zsnJ71OnB9XT5g1jXUvY4Ev4AvO/M4Xzx4OHigcGzhw99Dy8eCTG//ZnJH5nZMrDO2vf/6eMGsa617GAl/AF5z5nYHu1v7jlbVLX/v9WNnD20dH/3chM/M7Q7/xVTcojPVEtyZ/9zIW+AK+4Hl/ZHxstG/3gsFLGz94JedJz1b/ng+D/9zL0PxO1YE3jp4waxrqXsYCX8AXPJ+/uNcpD/1cNNZTd2RrXrB3w8CPhSM3DiG/UxfBuxc38AV8wcOd9kWPfc5nPV+0VMwY72/650p1n2cF8jspBO9ekkj3OBQB+CI217e/+ai7+uVA8/Cl2pcDzffPld3e/SHyO1UI3r2kkO5xKALwRWwCt09c3jKjq/H1UPHJuaN95wnyO81GusehCDwySKiVuXwBACEYh4TAFwDwgnEIXwDAC8YhfAEALxiH8AUAvGAcwhcA8IJxCF8kQpz5nakkvA8dJIyo4zCVwBcGSE5+5xSg2tdFCFFEAV8kEWHGYRoxuy/SkN85FWiFkfnhNAICX8AXacjvnBLUwoAupgL4Ar5IZ34nPau1+8w1ezHoSE5JotcYk5tBtREUjCgM7WmpfaRU62zdXZo48AV8kc78TrYvOCI51RN94lGmJKKelv6m8gcHoAtd4Av4gj+/c23BXMdb0xs+ym2rKEhOfifTF1yRnHQwVkQUDv9pw7m/FtnvlSYegi50gC/gC878TkJI4N4fbave9x3+vOf0tutHG5OU38ma2LEjOSemNTNIix2npXtatSm80IU+8AV8wZnfGWKfY8HgldbQ/c4k5HdSb3bqZGHqRXKGZrokaSZ35F8yU61HGFGaftlisYTXPJF/Bg2EgS/gC0Pvj7SvnK/c70xGfmc4ZUYnC1MvknPylNrJTWftRrRjRmlSosKHu2IAX8AXhj5/sWvFu0pgZ/z5nUm6o4gbk6kGvoAvDNG6TBXYGWd+Z1ImOj5hkXqEGYdpBL4wQPDxKB3YGWd+Z8K+UP8REZAqhBmHaQS+iB/kd5oLUcdhKoEvAOAD4xC+AIAXjEP4AgBeMA7hCwB4wTiELwDgBeMQvgCAF4xD+CIRMiC/EyQRUcdhKoEvDCBsfidIBcKMwzRidl9kSX4nSAHwBXyRLfmdYOqBL+CL1OR3qreSq/eNT24nYW43BwIBX8AXqcjvjNxLGhnAif2m4gNfwBepyO+c2FDKzORTAjgj6wDBgC/gi1Tkd04QWnCEA/giAzg1dYBYwBfwRSryO/2yHBmrpwngZNYBQgFfwBepye8Mx3eq/ygAfSXBrAMEAr6AL9KQ3zkJAjgzDPgCvjBEcvI7Q2DZkXEIMw7TSOb4AgVFhGJu4AsUFCPF3GSCLwAAYgBfAAB4gS8AALzAFwAAXtLqi7Tfu0JBEbYICXyBgiJkERIBfJFuiopSm4uljr8AQIsY84KJGX1hV1NYWEgfut3uqX16+AJEB75gk6afi8vlGgoEleJ2u+lDl8uV+i4BEAa+YDMFP5fz5883NTVFr+N0OocCwdDXQ4Gg211LHzqdzuR2CQBjwBdskv1z6ejoePXVV6dNmxa9WvW6aloQtbUqX1Svq9ZryIrYDG9DD0dZWHIkr1fKycmxSBK19phYiKh2mkU2j3wEmAz4gk1Sfy4hWSxevDimL6qqqugFSG2tanlSVVXFbsbYUUpvSVe+HbLKZM1wlckK4fNoEjD0TghMBnzBJnk/F0UWS5Ysie6LJ/7To9fanz/oP3XqpCStlKSVVqvVarXabKtsNpvdbrPb7TrvmEREbIYvBegrAs08p/O/FZ9IXsIKwGCfEJgM+IJNkn4utCyi++LFs4eDBwrHBg7cPbT8xfjz0AWF3W6nry/WrFkT9dmoiE124o32uiBUKxTYqfo+0xcwBIAv2CTp59LU1DSNorGxUa9moLu1/3hl7dLXfj9W9vD2UULIUCBYU6O6/VmxuoLdmBGx6ZVUdzJCX7JCfNVRnfR6RFm3yBMGijwhMBnwBZvU/lzGx0b7di8YvLTxg1dynvRs9e/5kLz4N9IXZWVlemdgRGwyboFG3nfwyxZNE7puZGvkeJob+IJNan8u9zrloZ+LxnrqjmzNC/ZuGPixcOTGIcUXSrE77CnrEgAM4As2qf253Glf9NjnfNbzRUvFjPH+pn+uVPd5VhRYC0pKigusBUqx2W0p6xIADOALNqn9uVzf/uaj7uqXA83Dl2pfDjTfP1fW8/0SQkh5ue4CBIA0AF+wSe3PJXD7xOUtM7oaXw8Vn5w72nc+Zc8OAC/wBRuBfy4ApA2B5wV8AYBgCDwv4AsABEPgeQFfACAYAs8L+AIAwRB4XsAXAAiGwPMCvoifBtsn8TTLgk1l4f+CV8LH1pOOwPMCvjDAhS3FnZuLO0P/bi4unT2dPuza7uA6S6p9wdr/luAkhy+mFIHnhdl9cfHixadPn3JW7mgovnm47o634daR+q4djqals28eXt/rbbh1pP7it45zDXw54/AFiI4A80IPs/vC4/EcOHBgZGSEp/KpDcsHr+wI9HqGfLtuHHLtrVw4eLk10OsZurbL51l3ZuPHXE8JX4DoCDAv9IAvPPfv39+5c+fw8HDMyifcy/rOy3ev7uz/9esr+z5r+XTexGFnS3d75S/rl+o3VSdnqTL3NLvXvVKORZaliHwt5QwWWaaNEz1AVPZH90U8HaC/QfsCyaNJQoB5oQd84SGEjIyMyLLc19cXvfKxdUu69zp9B+u699V0bF+5aWFu116n72Dd5f01Z7eVHK9ZrNNOk4KTE070lCYnVriKV1LmbvgvldBn8MsWerrGChCllRBm8gni6QD9X1B8geTR5CHAvNADvvCEvvjzzz83btw4OjqqV3NtwVzHW9MbPsptqyhoXj63Pn+ma0Fuff7MDQWzmovydpcX2HPfYL9jolmAqA8jfsFrJh4r+E855AoQjbEeSagDii+QPJpEBJgXesAXHkLIgwcPYl5fBO790bbqfd/hz3tOb7t+tPFsS2ld/qyrP2266d3627HGcy2OtlXzH/z9F6Ol3mSjLxRUIX1GfBE7QFTfF4l3gPYFDJEsBJgXesAXnkAgwHn/Yp9jweCV1tD9Tt8Pzvr8Wcr9zq62tftL39Npp7OaoOYYldjHmq7R1iMxA0T1fZGcDkRmkSJ5NDEEmBd6wBcG3h9pXzlfud/Z1b62uShPud/ZuWP1Hmmebkv6VmD4bmV4KWCRpGi/3tV1Vfc7YweIRlmPGOkA+79A3e9E8miyEGBe6GF2Xxj6/MWuFe9273VeO1R/eb/rzFclbRVW5fDkl0W7S/KmtKthcPGf3QgwL/Qwuy8M0bpszjfL3lbKpkWqw+9WvDNlz+yXLax3J0BWIvC8gN7QnTQAAAivSURBVC8MEHw8+jQwrJTKBXPow+djj6fwuamrfcgiyxF4XsAX8cN+NwSABBF4XsAXAAiGwPMCvgBAMASeF/AFAIIh8LyALwAQDIHnBXwBgGAIPC/gCwAEQ+B5AV/Ej3nzO8GUIvC8gC8MkLn5nawPeSmBOkAwBJ4XZveFSfI7LRaL5jknPi8KXwiIAPNCD7P7wiz5nbJmk6pftmhy/YAwCDAv9IAvzJLf6dU0ssh+bYYeX0/Y+9b5uwdiIcC80AO+MEV+p+Slz0E9YrgnujW5uwdiIcC80AO+4M3vfOI/PXqt/fmD/lsdRzMzv3Ny0uvE+XH1hFnTWPdALASYF3rAF1z5nS+ePRw8UDg2cODuoeXjwSc3/rM5I/M7J1cY2l///D1h1jTWPRALAeaFHvAFV35noLu1/3hl7dLXfj9W9vD20dH/XcjM/M7Qb3zVDQpjPdGtyd89EAsB5oUe8EXs90fGx0b7di8YvLTxg1dynvRs9e/5MPjPvQzN71QdeOPoCbOmoe6BWAgwL/Qwuy94Pn9xr1Me+rlorKfuyNa8YO+GgR8LR24cQn6nLoJ3T3wEmBd6mN0XPNxpX/TY53zW80VLxYzx/qZ/rlT3eVYgv5NC8O5lGgLPC/giNte3v/mou/rlQPPwpdqXA833z5Xd3v0h8jtVCN69zELgeQFfxCZw+8TlLTO6Gl8PFZ+cO9p3niC/E0wRAs8L+AIAwRB4XsAXAAiGwPMCvgBAMASeF9nui9BToBgqIL0I/CrAFyjwhWAI/CqYwxeAE/y4REDgVwG+iJ+iIr5ArfBm8LjxSqn5OLXAI9VECPwqwBcGsKspLCykD91uN7sZfAEMIfCrYHZfGMrvdLlcQ4GgUtxuN33ocrmS0WMm8IWZEPhVMLsvDOV3Op3OoUAw9PVQIOh219KHTqczwc7qA1+YCYFfBfjCQH5n9bpqWhC1tSpfVK+rZjfTJNB4J7ZaTGbk0XsuqOhN1R5w+MJMCPwqwBcG8jurqqroBUhtrWp5UlVVxW6m8gUVlpOjzdPURm+qAjLhC9Mg8KsAXxjO7zx16qQkrZSklVar1Wq12myrbDab3W6z2+3sd0zYCXfMr/WibuALMyHwqwBfGM7vfDH+PHRBYbfb6euLNWvWsBvDF8AQAr8K8EU8+Z2EkKFAsKZGdfuzYnUFu7FBX6gz7rAeMR8CvwrwRTz5neTFv5G+KCsrY7c3en0hRdzuhC9MhcCvgtl9EXd+p+ILpdgd9oS7m+4/6iPwSDURAr8KZvcFD8z8zgJrQUlJcYG1QCk2uy3h7sIXQOhXAb6ITWR+Z8/3Swgh5eU6C5D4gS+A0K8CfBEbvfzOLETgkWoiBH4V4AtAgR+XCAj8KsAXgAI/LhEQ+FWALwAFflwiIPCrYA5foBgqIL0I/CrAFyjwhWAI/Cpkuy8AyDgEnhfwRfw02D5JdxdikYQoQJByBJ4X8IUBLmwp7txc3Bn6d3Nx6ezp9GHXdke6OhYOyphkQhTwRSYi8Lwwuy8M5Xd2NBTfPFx3x9tw60h91w5H09LZNw+v7/U23DpSf/Fbx7kGvrjwqUArjHR/ThQkggDzQg+z+8JQfuepDcsHr+wI9HqGfLtuHHLtrVw4eLk10OsZurbL51l3ZuPHU91bfdTCgC4yGgHmhR7whYH8zhPuZX3n5btXd/b/+vWVfZ+1fDpv4rCzpbu98pf1S/WbhiM5w3Gd9KxWzfBwZUaup0WS6DXG5FZ4WhjqfD/d01I76qnW9D57kBYEmBd6wBcG8juPrVvSvdfpO1jXva+mY/vKTQtzu/Y6fQfrLu+vObut5HjNYp12ql/+Xim6L+j5qjwaketJTfSJR5mSiHpa+psWiyVCIiBNCDAv9IAvDOd33uo42rx8bn3+TNeC3Pr8mRsKZjUX5e0uL7DnvsF+x0QzBZnhe3TynhqL7I9YYCinoHN0Juvwn3byu17JIvu90sRD0EW6EWBe6AFfGM7vHA8+ufGfzWdbSuvyZ139adNN79bfjjWea3G0rZr/4O+/GI2N+oIxYbU3JELTmpn2qXow9mnVpvBCFwIgwLzQA76IJ79z9H8XfD846/NnKfc7u9rW7i99T6e19t4C5YuJ2amO6qQXL4z7EBMPWCRJM7n9siVHWVgQdTvmaYlftlgs4TWPujFIEwLMCz3gi3jyO4P/3OtqX9tclKfc7+zcsXqPNE/3FPStRllS3cYMPSpJ6msNTYAn4w2P8H2QMJSMItsxTqsOGMaHNQRBgHmhh9l9EXd+55mvStoqrN17ndcO1V/e7zr5ZdHukjyup0zSHUXcmMxaBJgXepjdFzww8zu/Wfb2pkVzvln2tlK+W/EO1+mSMtHxCYssRuB5AV/EJjK/8/buD58GhisXzHkaGFbK87HHXKdL2Bf0n1IEWYjA8wK+iI1efif73RAAEkTgeQFfACAYAs8L+AIAwRB4XsAXAAiGwPMCvgBAMASeF/AFAIIh8LyALwAQDIHnBXwRPxmQ3wkyEYHnBXxhAGHzO0FWIfC8MLsvsiS/E2QTAswLPczui2zJ7wRZhADzQg/4IhX5neqt5Op945PbSZjbzYEZEWBe6AFfTH1+Z+Re0sgATuw3BQoCzAs94Ave/M61BXMdb01v+Ci3raLAWH7nxIZSZiafEsAZWQeYFQHmhR7wBVd+JyEkcO+PtlXv+w5/3nN62/WjjQbyOycILTjCAXyRAZyaOsCkCDAv9IAvuPI7Q+xzLBi80hq632kgv9Mvy5GxepoATmYdYE4EmBd6wBcG3h9pXzlfud9pKL8zHN+p/qMA9JUEsw4wIwLMCz3M7gtDn7/YteJdJbAz/vzOSRDACdgIMC/0MLsvDNG6TBXYGWd+ZwgsO4AeAs8L+MIAwcejdGBnnPmdCOAE0RF4XsAX8YP8TjAlCDwv4AsABEPgeQFfACAYAs8LAXyBgoISWYQEvkBBEbIISbJ88f8B4ntL4o6x9CkAAAAASUVORK5CYII=" alt="" />
配置文件结构:
aaarticlea/png;base64,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" alt="" />
1.spring配置文件
applicationContext-dao.xml (配置连接池,mybatis会话工厂,扫描mybatis文件的包,扫描action包与扫描service包,事务的控制)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd "> <!-- 0.连接池属性设置读取指定的properties文件 -->
<context:property-placeholder location="classpath:db.properties" /> <!-- 1.将连接池放入spring容器 -->
<bean name="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="jdbcUrl" value="${jdbc.url}"></property>
<property name="driverClass" value="${jdbc.driver}"></property>
<property name="user" value="${jdbc.username}"></property>
<property name="password" value="${jdbc.password}"></property>
</bean> <!--2. 配置 Mybatis的会话工厂 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 数据源 -->
<property name="dataSource" ref="dataSource" />
<!-- 配置Mybatis的核心 配置文件所在位置 -->
<property name="configLocation" value="classpath:mybatis/sqlMapConfig.xml" />
</bean> <!-- 3.1 mapper代理配置方法一 这种方法需要大量重复的配置代理对象 MapperFactoryBean:根绝mapper接口生成代理对象
<bean id="selectUser" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="cn.qlq.core.dao.SelectUser"></property>
<property name="sqlSessionFactory" ref="sqlSessionFactory"></property> </bean> --> <!-- 3.2通过MapperScannerConfigurer扫描进行批量生成代理对象 遵循规范:mapper.java和mapper.xml名字一样且在同一个目录下
自动扫描出来的代理对象的id为mapper类类名(首字母小写) -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- 指定扫描的包名,如果有多个,用半角逗号分隔 -->
<property name="basePackage" value="danger.mapper"></property>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean> <!-- 4.配置事务管理器 -->
<!-- 事务核心管理器,封装了事务操作,依赖于连接池 -->
<bean name="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"></property>
</bean> <!-- 5.开启注解管理aop事务 -->
<tx:annotation-driven /> <!-- 与struts2整合的配置 -->
<!-- 扫描Action基本包 -->
<context:component-scan base-package="danger.action"></context:component-scan> <!-- 扫描service -->
<context:component-scan base-package="danger.service"></context:component-scan> <!-- 事务模板对象,依赖于事务核心管理器 -->
<bean name="transactionTemplate"
class="org.springframework.transaction.support.TransactionTemplate">
<property name="transactionManager" ref="transactionManager"></property>
</bean> <!-- ················开始使用XML管理事务························ -->
<!-- 配置事务通知(无论哪种方式都要用到事务的核心管理器) -->
<tx:advice transaction-manager="transactionManager" id="firstTx">
<tx:attributes>
<!--以方法为单位,指定方法应用事务什么属性 isolation:隔离级别 read-only:只读属性 propagation:传播行为 -->
<!-- 企业中运用通配符命名规则。两套增删改查(8种) -->
<tx:method name="save*" isolation="DEFAULT" read-only="false"
propagation="REQUIRED" />
<tx:method name="persist*" isolation="DEFAULT" read-only="false"
propagation="REQUIRED" />
<tx:method name="delete*" isolation="DEFAULT" read-only="false"
propagation="REQUIRED" />
<tx:method name="remove*" isolation="DEFAULT" read-only="false"
propagation="REQUIRED" />
<tx:method name="update*" isolation="DEFAULT" read-only="false"
propagation="REQUIRED" />
<tx:method name="modify*" isolation="DEFAULT" read-only="false"
propagation="REQUIRED" />
<tx:method name="get*" isolation="DEFAULT" read-only="true"
propagation="REQUIRED" />
<tx:method name="find*" isolation="DEFAULT" read-only="true"
propagation="REQUIRED" />
</tx:attributes>
</tx:advice> <!-- 配置织入 -->
<aop:config>
<!-- 配置切点表达式 -->
<aop:pointcut expression="execution(* cn.xm.exam.service.*.*.*ServiceImpl.*(..))"
id="texPc" />
<!-- 配置切面:切点+通知 advice-ref:通知名称 pointcut-ref:切点名称 -->
<aop:advisor advice-ref="firstTx" pointcut-ref="texPc" />
</aop:config>
</beans>
2.struts配置:
struts.xml (主配置文件,需要放在src下)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <constant name="devMode" value="true"></constant>
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<constant name="struts.action.extension" value="action" />
<constant name="struts.objectFactory" value="spring"></constant> <!-- 解决还乱全被struts拦截没匹配的action -->
<package name="error" extends="struts-default">
<default-action-ref name="notFound" />
<action name="notFound" class="danger.action.sys.ErrorAction">
<result>/404.jsp</result>
</action>
</package> <!-- 乔利强写的 -->
<include file="struts/struts_json.xml"></include>
<include file="struts/queryView.xml"></include>
<!-- 马非写的 -->
<include file="struts/struts_rechecktable.xml"></include>
<include file="struts/struts_sys.xml"></include> </struts>
struts_sys.xml (普通struts配置)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"> <struts>
<package name="user" extends="struts-default" namespace="/">
<action name="user_*" class="userAction" method="{1}">
<result name="login_success">/main/hdReview.jsp</result>
<result name="login_error">/login/login.jsp</result>
</action> </package> </struts>
struts_json.xml (JSON格式的配置)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"> <struts>
<constant name="struts.devMode" value="true"></constant>
<package name="json_package" extends="json-default"> <!-- 查询隐患详细信息 -->
<action name="queryDetailInfo" class="danger.action.queryView.QueryDetailInfo">
<result name="success" type="json">
<param name="root">result</param>
</result>
</action> <!-- 查询统计隐患信息 -->
<action name="queryDangerTongji" class="danger.action.queryView.TongjiDangerAction">
<result name="success" type="json">
<param name="root">result</param>
</result>
</action> </package>
</struts>
3.mybatis配置
sqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration> <!-- 只需要定义个别名,这个应该有 -->
<typeAliases>
<package name="danger.mapper" />
</typeAliases>
<!-- 动态代理也不需要配置这个扫描,留着也行 -->
<mappers>
<!-- 原始DAO开发使用这个手动加载xml -->
<package name="danger.mapper" />
</mappers> </configuration>
4.使用方法:
1. mapper层
aaarticlea/png;base64,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" alt="" />
接口与xml放在同一包下
接口:
package danger.mapper.dangerManage.custom; import java.sql.SQLException;
import java.util.List;
import java.util.Map; import danger.bean.dangerManage.Danger; public interface DangerCustomMapper { /**
* 组合条件查询隐患
*
* @param map
* @return
* @throws Exception
*/
public List<Danger> findDangerByCondition(Map<String, Object> map) throws SQLException; /**
* 根据条件查询满足条件的总数
*
* @param map
* @return
* @throws Exception
*/
public Integer getDangerCountByCondition(Map<String, Object> map) throws SQLException; /**
* 统计信息的时候根据开始时间和结束时间,单位和级别,类型查询满足条件的总数
*
* @param map
* 开始时间,结束时间,单位,级别,类型查询
* @return
* @throws SQLException
*/
public Integer getDangerCountByCondition2(Map<String, Object> map) throws SQLException; /**
* 统计信息的时候根据开始时间和结束时间,单位和级别,类型查询满足条件的记录
*
* @param map
* 开始时间,结束时间,单位,级别,类型查询
* @return
* @throws Exception
*/
public List<Danger> findDangerByCondition2(Map<String, Object> map) throws SQLException; }
xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- namespace命名空间,作用就是对sql进行分类化管理,理解sql隔离 注意:使用mapper代理方法开发,namespace有特殊重要的作用 -->
<mapper namespace="danger.mapper.dangerManage.custom.DangerCustomMapper"> <!-- 查询分页 -->
<sql id="query_page_limit">
<if test="index!=null">
LIMIT #{index},#{currentCount}
</if>
</sql>
<!-- 查询隐患的条件 -->
<sql id="query_danger_where">
<if test="checkunit!=null">
and checkunit=#{checkunit}
</if>
<if test="manager!=null">
and manager=#{manager}
</if>
<if test="startTime!=null">
and findTime > #{startTime}
</if>
<if test="endTime!=null">
and findTime<#{endTime}
</if>
<if test="dangergrade!=null">
and dangergrade=#{dangergrade}
</if>
<if test="address!=null">
and address like '%${address}%'
</if>
<if test="content!=null">
and content like '%${content}%'
</if>
<if test="type!=null">
and type=#{type}
</if>
<if test="dangerstatus!=null">
and dangerstatus=#{dangerstatus}
</if>
</sql> <select id="findDangerByCondition" resultType="danger.bean.dangerManage.Danger"
parameterType="hashmap">
SELECT * FROM `danger`.`danger`
<where>
<include refid="query_danger_where"></include>
</where>
<include refid="query_page_limit"></include>
</select> <select id="getDangerCountByCondition" resultType="int"
parameterType="hashmap">
SELECT count(dangerId) FROM `danger`.`danger`
<where>
<include refid="query_danger_where"></include>
</where>
</select> </mapper>
2.service使用
实现类上声明service层,内部注入mapper。接口声明service也可以@service("queryService") 相当于给service起个名字,注入可以用autowired,也可以用resource
aaarticlea/png;base64,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" alt="" />
3.action层使用(声明控制层,注入service对象,action要是多例)
aaarticlea/png;base64,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" alt="" />
struts.xml配置action(两种方式)
1.使用spring扫描出来的别名(控制层打注解)
aaarticlea/png;base64,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" alt="" />
2.如果Action对象不交给spring管理(控制层不打注解),class要写类名全路径
aaarticlea/png;base64,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" alt="" />
web.xml 配置spring随项目启动与struts过滤器
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>danger</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener> <!-- 404页面 -->
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/applicationContext-*.xml</param-value>
</context-param>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> </web-app>
Spring3.2+Struts2.3+Mybatis3.2整合使用(注解使用)的更多相关文章
- 开发基础框架:mybatis-3.2.8 +hibernate4.0+spring3.0+struts2.3
一:项目下载地址(点击 Source code(zip)) https://github.com/fzxblgong/frame_2014-12-15/releases 版本:v1.2大小:20M 二 ...
- Struts2.3.4.1+Spring3.2.3+Hibernate4.1.9整合
java教程|Struts2.3.4.1+Spring3.2.3+Hibernate4.1.9整合教程并测试成功一.创建项目二.搭建struts-2.3.4.11.struts2必须的Jar包(放到W ...
- Spring3 + Spring MVC+ Mybatis 3+Mysql 项目整合(注解及源码)
Spring3 + Spring MVC+ Mybatis 3+Mysql 项目整合(注解及源码) 备注: 之前在Spring3 + Spring MVC+ Mybatis 3+Mysql 项目整合中 ...
- Spring3系列4-多个配置文件的整合
Spring3系列4-多个配置文件的整合 在大型的Spring3项目中,所有的Bean配置在一个配置文件中不易管理,也不利于团队开发,通常在开发过程中,我们会按照功能模块的不同,或者开发人员的不同,将 ...
- struts2+hibernate-jpa+Spring+maven 整合(1)
1.0.0 struts2 与 spring 的整合. 1.1.0 新建maven工程 , 编写pom.xml ,这里只需要简单的添加 一个组件就够了: 在myeclipse 生成的pom.xml 添 ...
- struts2 + spring + mybatis 框架整合详细介绍
struts2 + spring + mybatis 框架整合详细介绍 参考地址: https://blog.csdn.net/qq_22028771/article/details/5149898 ...
- Struts2+Hibernate4+Spring4框架整合搭建Java项目原型
收藏 http://www.cnblogs.com/mageguoshi/p/5850956.html Struts2+Hibernate4+Spring4框架整合搭建Java项目原型
- Mybatis整合通用Dao,Mybatis整合通用Mapper,MyBatis3.x整合通用 Mapper3.5.x
Mybatis整合通用Dao,Mybatis整合通用Mapper,MyBatis3.x整合通用 Mapper3.5.x ============================== 蕃薯耀 2018年 ...
- SpringMVC-Mybatis整合和注解开发
SpringMVC-Mybatis整合和注解开发SpringMVC-Mybatis整合整合的思路在mybatis和spring整合的基础上 添加springmvc.spring要管理springmvc ...
随机推荐
- python系列2之数据类型
目录 Python数据类型 python的运算符 Python的循环与判断语句 python练习 Python作业 一. Python的数据类型 1. 整型(int) <1>. 赋值 ...
- Android 中运行时权限获取联系人信息 Demo
代码比较简单... AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <m ...
- python基础之内置函数补充、匿名函数、递归函数
内置函数补充 python divmod()函数:把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b) 语法: 1 divmod(a, b) #a.b为数字,a为除数 ...
- java线程安全总结 - 2 (转载)
原文地址:http://www.jameswxx.com/java/%E7%BA%BF%E7%A8%8B%E5%AE%89%E5%85%A8%E6%80%BB%E7%BB%93%EF%BC%88%E4 ...
- Android 用Chrome浏览器打开url 自定义样式
1.效果预览 1.1.真实效果就是从某一个APP,打开一个url,跳转到谷歌浏览器,返回之后,又回到之前的APP 1.2.说明一下条件 1.手机上必须要安装谷歌浏览器 2.手机上的默认浏览器 ...
- 19,django组件之contenttype(一)
django组件之contenttype(一) 方式1:适用于1张表和另一张表要关联的时候. 1.路飞学成表设计: 2.将2个价格策略表合并1张表. 3.如果再加一张表,那价格策略表的表结构会发生改变 ...
- [原]sencha touch之表单二(注册页面)
接着上一篇的登陆页面,来一个最简单的注册页面,几乎包含了常用的field Ext.application({ id:'itKingApp', launch:function(){ var formPa ...
- Webpack标准配置
let htmlWebpckPlugin= require('html-webpack-plugin');//该组件能将src下面提定的html文件与打包后在js文件打包在一起module.expor ...
- 静态html引入js添加随机数后缀防止缓存
在web项目开发中,页面引入js被修改时,为避免浏览器缓存引起的问题,在引入js时,给js名后面加上随机数,以保证每次都发送新的请求. 在jsp中,一般通过后台取随机数即可,代码如下: <scr ...
- PowerDesigner如何将一个包里的表拷贝到另一个表以后在视图中也可以显示?
第一步:选中PhysicalDiagram_1 第二步:点击:“ Symbol”按钮, 第三步:点击“Show Symbols”,出现如下界面 第四步:选中State.