1.1 JSP పరిచయం
సర్వ్లెట్ వ్రాయడానికి రెండు ప్రసిద్ధ మార్గాలు ఉన్నాయి: అత్యవసరం మరియు ప్రకటన . మేము ఇప్పటికే మొదటిదానితో వ్యవహరించాము - ఇది వాస్తవానికి, సర్వ్లెట్. రెండవది JSP (జావా సర్వర్ పేజీలు) అని పిలుస్తారు మరియు మేము ఇప్పుడు దానితో పరిచయం చేస్తాము.
సర్వ్లెట్ JSP ఉదాహరణ:
<html>
<body>
<% out.print(2*5); %>
</body>
</html>
మేము ఉపయోగించిన క్లాసిక్ సర్వ్లెట్తో చాలా పోలి ఉండదు, అవునా? ఇది నిజం. JSP అనేది జావా కోడ్ ఇన్సర్ట్లతో కూడిన HTML పేజీ (ఆకుపచ్చ రంగులో హైలైట్ చేయబడింది) .
మీరు చూడండి, మీరు సర్వ్లెట్లో చాలా జావా కోడ్ మరియు తక్కువ HTML కోడ్ని కలిగి ఉంటే, మీరు క్లాసిక్ సర్వ్లెట్ని ఉపయోగించడం మరింత సౌకర్యవంతంగా ఉంటారు . అయితే సర్వర్ ద్వారా రెండు లైన్లు మాత్రమే మార్చబడే పెద్ద HTML పేజీ మీకు అవసరమైతే ఏమి చేయాలి?
ఈ సందర్భంలో, ఈ HTML పేజీని సృష్టించడం మరియు దానిలోని సర్వర్లోని జావా కోడ్ను ఏదో ఒకవిధంగా అమలు చేయడం చాలా సులభమైన విషయం.
1.2 JSPలను కంపైల్ చేయడం
మరొక ఉదాహరణ చూద్దాం:
<html>
<body>
<%
double num = Math.random();
if (num > 0.95) {
%>
<h2>You are lucky, user!</h2><p>(<%= num %>)</p>
<%
}
%>
</body>
</html>
మేము యాదృచ్ఛిక సంఖ్యను పొందుతాము మరియు అది 0.95 కంటే ఎక్కువ ఉంటే, మేము "మీరు అదృష్టవంతులు, వినియోగదారు!" అనే వచనాన్ని ముద్రిస్తాము.
జావా కోడ్ ఇక్కడ నీలం రంగులో హైలైట్ చేయబడింది . సాధారణ (హైలైట్ చేయబడలేదు) - HTML కోడ్ మరియు ఎరుపు - సేవా ట్యాగ్లు , జావా కోడ్ ఎక్కడ ఉందో మరియు HTML ఎక్కడ ఉందో అర్థం చేసుకోవడంలో సహాయపడతాయి.
మీరు విచిత్రమైనదాన్ని గమనించారా? మూసివేసే కర్లీ బ్రేస్ "}"
మరొకదానిలో ఉంది "code block"
. అటువంటి కోడ్ వ్రాయడానికి సరైన మార్గం ఏమిటి? అది కూడా ఎలా పని చేస్తుంది?
సమాధానం చాలా సులభం :)
వెబ్ సర్వర్, అది JSP ఫైల్ను కనుగొన్న తర్వాత, దానిని క్లాసిక్ సర్వ్లెట్గా కంపైల్ చేస్తుంది. పై JSP పేజీ ఆధారంగా, ఈ సర్వ్లెట్ రూపొందించబడుతుంది:
public class HelloServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws Exception {
PrintWriter out = response.getWriter();
out.print("<html> ");
out.print("<body>");
double num = Math.random();
if (num > 0.95) {
out.print("<h2>You're lucky user! </h2><p>(" + num + ")</p>");
}
out.print("</body>");
out.print("</html>");
}
}
వెబ్ కంటైనర్ ఇప్పుడే సర్వ్లెట్ కోడ్ను రూపొందించింది, ఇక్కడ HTML టెక్స్ట్గా మారింది మరియు జావా కోడ్ ఇన్సర్ట్లు సాధారణ జావా కోడ్గా మారాయి!
GO TO FULL VERSION