Servlet
தொழில் நுட்பம் ஆனது
வெப் பயன்பாடுகள் உருவாக்கப் பயன்படுகின்றது. இது சர்வர் சைடில் இயங்குகின்றது.
இதை பயன்படுத்தி டைனமிக் வெப் பக்கங்களை உருவாக்கலாம்.
Servlet டெக்னாலஜி ஆனது
பலமானது மற்றும்
மேம்பட்டதாகும்.
ஏனெனில் இது ஜாவா மொழியைச் சேர்ந்தது. செர்வ்லெட்டிற்கு முன்னால் CGI (Common Gateway Interface) ஸ்கிரிப்டிங்க்
மொழி சர்வர் பக்கம் பயன்படுத்தப்பட்டது. எனினும் இதில் நிறைய வசதியற்ற சூழ்நிலை
இருந்த்து எனவே செர்வ்லெட் அறிமுகப் படுத்தப் பட்டது.
செர்வ்லெட் API –யில் நிறைய இன்டெர்ஃபேஸ் மற்றும் கிளாஸ்கள்
இருந்தன.அவையாவன Servlet, GenericServlet,
HttpServlet, ServletRequest, ServletResponse முதலானவை
ஆகும்.
Servlet என்பது என்ன?
செர்வ்லட்டை கீழ் வரும் வழியாக விளக்கலாம்..
- Servlet என்பது வெப் பயன்பாடுகள் உருவாக்க உதவும் தொழில் நுட்பமாகும்.
- Servlet என்பது நிறைய இன்டெர்ஃபேஸ் மற்றும் கிளாஸ்கள் கொண்ட ஒரு API ஆகும்.
- Servlet என்பது ஒரு செர்வ்லெட் உருவாக்க உதவும் இன்டெர்ஃபேஸ் ஆகும்.
- Servlet என்பது செர்வர்களின் கொள்திறனை நீட்டுவித்து உள் வரும் கோரிக்கைகளுக்கு பதில் தருகின்றது.
- Servlet என்பது டைனமிக் வெப் பக்கங்கள் உருவாக்க உதவும் ஒரு வெப் காம்பனண்ட் ஆகும்
- .
Web Terminology
Servlet
Terminology
|
Description
|
Website: static vs dynamic
|
இது வெப் பக்கங்களின் தொகுப்பாகும். இதில் text, images,
audio மற்றும் வீடியோ எது வேண்டுமென்றாலும் இருக்கலாம்..
|
HTTP
|
இது சர்வர் மற்றும் கிளையண்ட் இடையே தொடர்பு கொள்ள உதவும்
ஒரு புரோட்டாகாலாகும்.
|
HTTP Requests
|
இது கிளையண்டிலிருந்து சர்வருக்கு அனுப்பப் படும்
கோரிக்கையாகும்.
|
Get vs Post
|
இது Get மற்றும் post இடையே உள்ள வித்தியாசம் ஆகும்.
|
Container
|
இது டைனமிக் பக்க இணையப் பக்கங்களை உருவாக்க சர்வர் பக்கம்
பயன்படுத்தப் படுகின்றது
|
Server: Web vs Application
|
இது சாஃப்ட்வேர் உருவாக்க உதவும் நெட் வொர்க் ஆதாரங்களை
நிர்வாகிக்கின்றது.
|
இது பிரவுசருக்கு அனுப்பப் படுவனவற்றின் விளக்கங்களை தரும் HTTP
header ஆகும்.
|
Steps to create a servlet example
- டாம்கேட் பயன்படுத்தி செர்வ்லெட் உருவாக்கும் படிகள்.
- டைரக்டர் ஸ்ட்ரக்சர் உருவாக்கவும்
- செர்வ்லெட் உருவாக்கவும
- செர்வ்லெட்டை கம்பைல் செய்யவும்
- deployment descriptor உருவாக்கவும்.
- செர்வரை ஸ்டார்ட் செய்து பயன்பாட்டை deploy செய்யவும்.
செர்வ்லெட்டை கீழ் காணும் மூன்று வழிகளில் ஏதாவது ஒரு முறையில்
உருவாக்கலாம்.
1. Servlet
interface ஆனதை இம்ப்லிசிட் செய்து
2. GenericServlet
கிளாஸை இன்ஹெரிட் செய்து
3. HttpServlet
கிளாஸை இன்ஹெரிட் செய்து
பெரும் பாலும் HttpServlet கிளாஸை
இன்ஹெரிட் செய்து செர்வ்லெட் உருவாக்கப்படுகின்றது. ஏனெனில்
இது doGet(), doPost(), doHead() போன்ற http
request மெத்தட்களை வழங்குகின்றது.
இங்கு apache
tomcat server பயன்படுத்தப் போகின்றோம். அதன்
படிகள்.
- டைரக்டர் ஸ்ட்ரக்சர் உருவாக்கவும்
- செர்வ்லெட் உருவாக்கவும்
- செர்வ்லெட்டை கம்பைல் செய்யவும்
- deployment descriptor உருவாக்கவும்.
- செர்வரை ஸ்டார்ட் செய்து பயன்பாட்டை deploy செய்யவும்.
- செர்வ்லெட்டை ஆக்சஸ் செய்யவும்.
Create a directory structures
directory structure defines ஆனது பிராஜெக்ட் சம்பந்தப்பட்ட ஃபைல்களை எங்கு வைப்பது ஆகும். அதிலிருந்து web container தகவல்களை பெற்றுக் கொள்ளும்.
இந்த உதாரணத்தில்
HttpServlet கிளாஸை இன்ஹெரிட்
செய்ய இருக்கின்றோம். இதில் doGet மெத்தடை இம்ப்ளிமென்ட் செய்ய இருக்கின்றோம்.
Get மெத்தட் டிஃபால்ட் ரெக்வெஸ்ட் மெத்தடாக பயன்படுகின்றது.
|
DemoServlet.java
import javax.servlet.http.*;
import javax.servlet.*;
import java.io.*;
public class DemoServlet extends HttpServlet{
public void doGet(HttpServletRequest req,HttpServletResponse res)
throws ServletException,IOException
{
res.setContentType("text/html");//setting the content type
PrintWriter pw=res.getWriter();//get the stream to write the data
//writing html in the stream
pw.println("<html><body>");
pw.println("Welcome to servlet");
pw.println("</body></html>");
pw.close();//closing the stream
}}
3) servlet கம்பைலேசன்
செர்வ்லெட்டை கம்பைல் செய்ய JAR FILE தேவைப்படுகின்றது, அது சர்வருக்கு ஏற்றாற் போல் மாறுபடும்.
Jar file
|
Server
|
1) servlet-api.jar
|
Apache Tomcat
|
2) weblogic.jar
|
Weblogic
|
3) javaee.jar
|
Glassfish
|
4) javaee.jar
|
JBoss
|
jar file லோட் செய்ய உதவும் ஒரு வழியாகும்.
- Classpath செட் செய்யவும்.
- ஜார் ஃபைலை JRE/lib/ext ஃபோல்டரில் பேஸ்ட் செய்யவும்.
4)டிபிலாய்மெண்ட் டெஸ்க்ரிப்டர் ஃபைல் (web.xml file)
deployment descriptor என்பது ஒரு xml file ஆகும்.அதிலிருந்து வெப் கண்டைனர் ஆனது எந்த செர்வ்லெட்டை இயக்க வேண்டும் என்ற தகவலை பெறுகின்றது.web.xml file
<web-app>
<servlet>
<servlet-name>sonoojaiswal</servlet-name>
<servlet-class>DemoServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>sonoojaiswal</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping>
</web-app>
Description of the elements of web.xml file
இதில் உள்ள எலிமெண்டுகளின் விளக்கம்.
<web-app>
முழு பயன்பாடு
|
<servlet>
<web-app> என்பதன் சப் எலிமென்ட்
. இது
செர்வ்லெட்டைக் குறிக்கின்றது.
|
<servlet-name>
செர்வ்லெட்டின் பெயர்
|
<servlet-class>
செர்வ்லெட் கிளாஸை குறிக்கின்றது
|
<servlet-mapping>செர்லெட்டை மேப் செய்கின்றது.
|
<url-pattern> இது கிளையண்ட் சைடிலுருந்து செர்லெட்டை
ஆக்சஸ் செய்ய உதவுகின்றது.
|
5)சர்வரை தொடக்குவித்து பிராஜெடை டிபிளாய் செய்தல்.
டாம்கேட் செர்வரை தொடக்குவிக்க apache-tomcat/bin டைரக்டரியில் உள்ள startup.bat ஃபைலை டபுள் கிளிக் செய்யவும்.One Time Configuration for Apache Tomcat Server
இரு வழிகள்- JAVA_HOME மற்றும் JRE_HOME என்வையான்மெண்ட் வேரியபிள்களை செட் செய்தல். இது செர்வரை ஸ்டாட் செய்ய பயன்படுகின்றது.
- டாம்கேட் செர்வரின் போர்ட் எண்ணை மாற்றி அமைத்தல். ஏனெனில் 8080 என்கின்ற எண்ணை வேறு ஏதாவது ஒரு சர்வர் பயன்படுத்தலாம்.
JAVA_HOME in environment variable
My Computer வலது கிளிக் செய்து properties என்பதை சொடுக்கிடவும்.இடது புறம் அட்வான்ஸ்டு சிஸ்டம் செட்டிங்க் என்பதை செலெக்ட் செய்யவும்.அட்வான்ஸ்டு டேப்பை கிளிக் செய்து environment variable என்பதை கிளிக் செய்யவும். user variable NEW பட்டனை கிளிக் செய்து வேரியபிள் பெயரில் JAVA_HOME என்று டைப் செய்யவும். வேரியபிள் பாத் என்பதில் JDK FOLDER பாத்தை பேஸ்ட் செய்யவும்.
JAVA_HOME செட்
செய்த பிறகு apache tomcat/bin ஃபோல்டரில் உள்ள் statup.bat ஃபைலை கிளிக்
செய்யவும்.
|
2 apache tomcat சர்வரின் போர்ட் எண்ணை மாற்றுவதற்கு.
Apache-tomcat/conf டைரக்டரியில்
உள்ள server.xml என்கின்ற ஃபைலை
நோட்பேடில் ஓபன் செய்யவும். Connector port = 8080 என்பதற்கு பதில் ஏதேனும் ஒரு 4 டிஜிட் எண்ணை டைப் செய்யவும்(உம்
9999). ஃபைலை சேவ் செய்யவும்.
சர்வ்லெட்டை இயக்க:
நீங்கள் நெட்பீன்ஸ்
அல்லது எக்லிப்ஸ் IDE உபயோகித்து இருந்தால் ஸ்டார்ட் பட்டனை கிளிக் செய்து செர்வ்லெட்டை
இயக்கவும்.