2. 3.1 Caực khaựi nieọm cụ baỷn
2.5.2.2. So saựnh giửừa Servlet vaứ JSP
Do maừ trang JSP thi thửùc thi ủều ủửụùc biẽn dũch ra servlet cho nẽn taỏt caỷ nhửừng gỡ servlet laứm ủửụùc cuừng ủồng nghúa vụựi trang JSP laứm ủửụùc. Vieỏt trang JSP ủõi khi ủụn giaỷn hụn trang servlet vỡ khõng cần phaỷi qua bửụực ủaờng kyự vaứ biẽn dũch thuỷ cõng.
JSP coự theồ troọn laĩn maừ java vụựi caực theỷ HTML nẽn vieọc thieỏt keỏ trang JSP thửụứng ủụn giaỷn vaứ deĩ boồ sung hụn so vụựi servlet. Tuy nhiẽn ủãy cuừng laứ yeỏu toỏ khõng nẽn lám dúng ủoỏi vụựi JSP. Neỏu taọp trung taỏt caỷ maừ Java vaứo cuứng vụựi maừ HTML thỡ moọt khi dửù aựn mụỷ roọng vaứ trụỷ nẽn phửực táp taỏt nhiẽn vieọc baỷo trỡ vaứ nãng caỏp ửựng dúng Web vụựi haứng traờm trang JSP seừ raỏt khoự khaờn. Trong quaự trỡnh phaựt trieồn ửựng dúng Web theo nhoựm, vieọc troọn laĩn maừ Java vaứ HTML trong trang JSP cho thaỏy khõng hieọu quaỷ. Khoự coự theồ taựch rụứi giửừa cõng vieọc vieỏt maừ cho ửựng dúng (thửụứng laứ vai troứ cuỷa laọp trỡnh viẽn – programmer) vaứ nhoựm xãy dửùng giao dieọn (nhoựm thieỏt keỏ Web – Web designer). Maừ trang JSP ụỷ dáng thuần vaờn baỷn nẽn thửụứng khõng che ủửụùc maừ nguồn cuỷa logic chửụng trỡnh.
Vụựi servlet tuy phaỷi biẽn dũch vaứ ủaờng kyự thuỷ cõng vụựi trỡnh chuỷ nhửng buứ lái tớnh baỷo maọt cao hụn. Ta chổ cần cung caỏp cho trỡnh chuỷ Web Server baỷn servlet nhũ phãn ( file .class ) ủaừ qua bửụực biẽn dũch maứ khõng cần ủeỏn maừ nguồn cuỷa servlet ban ủầu. Maởt khaực, caực servlet coự theồ tửụng taực liẽn hoaứn vụựi nhau ủeồ táo nẽn nhửừng keỏt xuaỏt tuyứ bieỏn vaứ ủa dáng trửụực khi traỷ keỏt quaỷ về cho trỡnh khaựch. Servlet coự theồ phãn raừ caực ủụn theồ cuỷa dửù aựn vaứ phaựt trieồn ủoọc laọp nhau nhử caực thaứnh phần riẽng bieọt ủeồ raựp lái trong moọt toồng theồ chung. Maởc duứ vaọy, vieọc keỏt xuaỏt trong servlet thửụứng dửùa vaứo phửụng thửực print() hoaởc println() nẽn vieọc keỏt xuaỏt phú thuoọc vaứo laọp trỡnh viẽn vụựi haứng loát caực leọnh print() vaứ println() raỏt khoự quaỷn lyự.
Vieọc quyeỏt ủũnh sửỷ dúng trang JSP, Servlet hay keỏt hụùp caỷ hai laứ tuứy vaứo tửứng dửù aựn vaứ múc ủớch cuỷa chửụng trỡnh cần phaựt trieồn. Thõng thửụứng ủoỏi vụựi nhửừng dửù aựn nhoỷ, yẽu cầu thụứi gian nhanh, JSP laứ lửùa chón thớch hụùp nhaỏt. ẹoỏi vụựi nhửừng dửù aựn cần sửù ủoọc laọp vaứ chổ thiẽn về xửỷ lyự ta nẽn sửỷ dúng servlet. Trửụứng hụùp dửù aựn lụựn ta nẽn keỏt hụùp caỷ servlet vaứ JSP. Mõ hỡnh keỏt hụùp toỏt nhaỏt giửừa servlet vaứ JSP thửụứng ủửụùc gói laứ MCV (Model – View – Controler) trong ủoự servlet ủoựng vai troứ trung tãm ủiều khieồn (controler) ủửa ra quyeỏt ủũnh xửỷ lyự, JSP ủoựng vai troứ theồ hieọn giao dieọn hay hieồn thũ dửừ lieọu ủaừ xửỷ lyự (View). Quy trỡnh tớnh toaựn logic cuỷa ửựng dúng ủửụùc giao lái cho caực thaứnh phần JavaBean hay EJB.