Servlet Programming
description
Transcript of Servlet Programming
![Page 1: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/1.jpg)
1 SATEESH N
For many WEB applications server side processing is necessary ie whenever a WEB Browsersends the data to a WEB Server the WEB Server forwards the same to a program on the server which isreferred as ServerSideProgram The ServerSideProgram receives the data form the WEB Server process thedata and returns the output back to the WEB Server which will be given to the WEB Browser The WEBBrowser receives the data and presents the data on the document These ServerSidePrograms can be writtenin any language such as C C++ UNIX Shell programming perl Servlets etc and the current technologiesthe ServerSidePrograms are designed using ASPJSP etc
WEB Browserhttpyahoocom
User Name Password Yahoo WEB Server
Login
checkmail
Particular IDrsquos Mail Box Documents delete will be opened
The following are the famous WEB servers
IIS (Internet Information Serverm )agrave MircroSoft agrave supports ASPPWS ( Personal WEB Server ) agrave MircroSoft agrave supports ASPApache agrave Apache agrave only for HTMLTomcat agrave Jakarta agrave supports servletsjsp tomcat doesnrsquot supports for EJB httpapachejakartaorgJava Web Server agraveJ2EE agraveWeblogic agrave BEAWebsphere agrave IBMJRun agraveJBoss agrave etc
Methods of sending data
A WEB Browser after receiving the details from the user cab forward to the WEB Server in any of thefollowing 3 methods
GETPOSTHEAD
A WEB Server after receiving the data from the WEB Browser should forward the same to the ssp inthe following 3 corresponding methods
GET Environment variables POST Streams HEAD Commandline arguments
ServerSideProgram
2 SATEESH N
GET Environment variables
POST Streams
HEAD Commandline args
URL Coding Whenever a WEB Browser is required to send data to the WEB Server the WEB Browserconverts the data in a particualar format which is known as URL coding The server isde program receives theconverted data undos the conversion and process the data
The following 4 rules will be used by the WEB Browsers for URL coding
1 All the fields will be separated by amp symbol2 Each field contains the name of the field and the value of the field separated by = symbol3 All spaces will be converted to + symbols4 All special characters such as + amp etc will be converted to hexadecimal values prefixed with
symbol
Ex httpmyservercomSSPnameEmpno=101ampEname=abc+xyzampJob=clkxxAcc
Server ssp param1 value1 p2 v2 p3 v3
In Java the SSPs can be written in sevlets and jsp
Creating a Servlet To create a servlet create a class that extends the ldquoHttpServletrdquo class and overrideany or both of the following methods (i) doGet( ) (ii) doPost( )
agrave If the WEB Browser sends the data in the ldquoGet( ) ldquo method then ldquodoGet( )rdquo method of servlet will beexecuted
agrave If the WEB Browser sends the data in the ldquoPostrdquo method then the ldquodoPost( )rdquo method of the servletwill be execued
agrave If the WEB Browser doesnot specify any method then the ldquodoGet( )rdquo will be executed
Syntax
DoGet( ) public void doGet(HttpServletRequest HttpServletResponse) throws ServletExceptionIO Exception
DoPost( )public void doPost(HttpServletRequestHttpServletResponse) throws ServletExceptionIO Exception
The ldquorequestrdquo object contains the data that was received from the WebBrowser and the ldquoresponserdquoallows us to send the output back to the WebBrowser
While exchanging data between the WEB Browser and WEB Server the following 2 objects are usedRequest and Response
tomcat
request
response
wwwyahoocom
user name password
LoginWEB Server Server Side Program
wwwyahoocom
user name password
Login
WEB Server Server Side Program
3 SATEESH N
HttpServletRequest For receiving input from the WebBrowser
Methods
String getParameter(String paramname) Returns the value of the specified parameter It returns null if theparameter is not available
Cookie[ ] get Cookie( ) Returns all the cookies that are received from the WebBrowser
HttpSession getSession( ) Returns the current HttpSession
HttpServletResponse For sending output to the WebBrowser
Methods
void setContentType(String mimeType) Sets the content type as mime type MIME(Multipurpose Internet Mail Extension )
Mime Types texthtml textplain imagegif
PrintWriter getWriter( ) Returns the output stream for sending the output to thye WebBrowser
void addCookie(Cookie ck) Sends a cookie to the WebBrowser
waServlet to send the text to WebBrowser
File name firstservletjava
import javaioimport javaxservletimport javaxservlethttp
public class firstservlet extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException send the output to the webbrowser responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(ltHTMLgt) outprintln(ltBODY bgcolor=0086b2 text=whitegt) outprintln(ltH1 align =centergtWelcome to Servlet ProgrammingltH1gt) outprintln(ltHR size=5 color=blackgt) outprintln(ltH3gt First Servlet ProgramltH3gt) outprintln(ltBODYgt) outprintln(ltHTMLgt)
4 SATEESH N
waservlet to send employee details to the WebBrowser
File name getempdetservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class getempdetservlet extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbody bgcolor=white text=blackgt) outprintln(lth2 style=background-colorgreencoloryellowtext-aligncentergt Exployee Details lth2gt)
try getting data
ClassforName(oraclejdbcdriverOracleDriver) Connection con = DriverManagergetConnection(jdbcoraclethinorasrv1521miraclescotttiger)
ClassforName(sunjdbcodbcJdbcOdbcDriver) Connection con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
Statement stmt = concreateStatement() ResultSet rs = stmtexecuteQuery(select empnoenamejobsaldeptno from emp)
constructing table format
outprintln(lttable width=100 bgcolor=pink border=2 bordercolor=red cellspacing=0gt) outprintln(lttrgt) outprintln(ltthgtEmployee Numberltthgt) outprintln(ltthgtEmployee Nameltthgt) outprintln(ltthgtJOBltthgt) outprintln(ltthgtSalaryltthgt) outprintln(ltthgtDepartment Noltthgt) outprintln(lttrgt)
placing the records into table
while(rsnext()) outprintln(lttrgt) for(int i=1ilt=5i++) outprintln(lttdgt+rsgetString(i)+lttdgt) outprintln(lttrgt) outprintln(lttablegt) rsclose() stmtclose() conclose() conthellip
5 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln(ltbodygtlthtmlgt)
HTML Forms A HTML form is a collection of input fields such as text boxes check boxes etc HTMLforms are used for sending data from the WebBrowser to the WebServer Each HTML form contains thefollowing
Name form name
Method GET || POST
Action The name of the server side program for processing the data
One or more input fields
SUBMIT button A special button which sends the accepted data to the WebServer
was which accepts employee details from WebBrowser (html) and sends them to the WebServer (ssp) Theservlet after receiving the data should echo the details back to the WebBrowser
File name iptoservletoptowbhtml
lt-- iptoservletoptowbhtml--gt
lthtmlgt ltbodygt lth2gt Enter Employee Details lth2gt ltform name = EMPFORM method = GET action= httplocalhost8080satclassservletiptoservletoptowbgt Employee Number ltinput type = text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type = text name=ENAME size=25gtltbrgt ltbrgt Employee JOb ltinput type = text name=JOB size=15gt ltbrgt ltinput type = SUBMIT value=Send Datagt ltformgt ltbodygtlthtmlgt
File name iptoservletoptowbjava
import javaioimport javaxservletimport javaxservlethttp
public class iptoservletoptowb extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) conthellip
6 SATEESH N
PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
read data from the request
String p1 = requestgetParameter(EMPNO) String p2 = requestgetParameter(ENAME) String p3 = requestgetParameter(JOB)
send the received details to the client
outprintln(lth2gt received details lth2gt) outprintln(ltbrgt) outprintln(lth3gt Employee Number +p1+ltbrgt) outprintln( Employee Name +p2+ltbrgt) outprintln( Employee JOB +p3+lth3gt) outprintln(ltbodygtlthtmlgt)
wa html file which accepts an employee number and sends the employee number to the servlet Theservlet should return the corresponding employee details back to the WebBrowser
lt--findempservlethtml--gt
lthtmlgt ltbodygt lth2gt Find Employee Details lth2gt ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletfindempservletgt Enter Employee Number ltinput type=text name=EMPNO size=15gt ltinput type=submit value=Find Employee Recordgt ltformgt ltbodygtlthtmlgt
File name findempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class findempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException IOException
responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
conthellip
7 SATEESH N
Receive the employee number
int empno = IntegerparseInt(requestgetParameter(EMPNO))
Get the record try ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoralcescotttiger) ps = conprepareStatement(select empnoenamejobsaldeptno from emp where empno=)
pssetInt(1empno) ResultSet rs = psexecuteQuery()
if(rsnext()) outprintln( lth2gt RecordFound lth2gt ) outprintln(ltbrgt Employee Number +rsgetString(1)) outprintln(ltbrgt Employee Name +rsgetString(2)) outprintln(ltbrgt JOB +rsgetString(3)) outprintln(ltbrgt Salary +rsgetString(4)) outprintln(ltbrgt Department No +rsgetString(5)) else outprintln( lth2gt Record Not Found +empno+ lth2gt ) catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclassfindempservlethtmlgt Find Another ltagt) outprintln(ltbodygt lthtmlgt)
wa html file which accepts employee details and sends them to the servlet The servlet after receiving theemployee details should insert them into the database
lt--saveempservlethtml--gt
lthtmlgt ltbodygt lth2 style=background-color0086b2colorwhitetext-aligncentergtNew Employee Recordlth2gt
ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletsaveempservletgt
Employee Number ltinput type=text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type=text name=ENAME size=25gt ltbrgt ltbrgt Employe Job ltinput type=text name=JOB size=15gt ltbrgt ltbrgt Basic Salary ltinput type=text name=SAL size=10gt ltbrgt ltbrgt cont
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 2: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/2.jpg)
2 SATEESH N
GET Environment variables
POST Streams
HEAD Commandline args
URL Coding Whenever a WEB Browser is required to send data to the WEB Server the WEB Browserconverts the data in a particualar format which is known as URL coding The server isde program receives theconverted data undos the conversion and process the data
The following 4 rules will be used by the WEB Browsers for URL coding
1 All the fields will be separated by amp symbol2 Each field contains the name of the field and the value of the field separated by = symbol3 All spaces will be converted to + symbols4 All special characters such as + amp etc will be converted to hexadecimal values prefixed with
symbol
Ex httpmyservercomSSPnameEmpno=101ampEname=abc+xyzampJob=clkxxAcc
Server ssp param1 value1 p2 v2 p3 v3
In Java the SSPs can be written in sevlets and jsp
Creating a Servlet To create a servlet create a class that extends the ldquoHttpServletrdquo class and overrideany or both of the following methods (i) doGet( ) (ii) doPost( )
agrave If the WEB Browser sends the data in the ldquoGet( ) ldquo method then ldquodoGet( )rdquo method of servlet will beexecuted
agrave If the WEB Browser sends the data in the ldquoPostrdquo method then the ldquodoPost( )rdquo method of the servletwill be execued
agrave If the WEB Browser doesnot specify any method then the ldquodoGet( )rdquo will be executed
Syntax
DoGet( ) public void doGet(HttpServletRequest HttpServletResponse) throws ServletExceptionIO Exception
DoPost( )public void doPost(HttpServletRequestHttpServletResponse) throws ServletExceptionIO Exception
The ldquorequestrdquo object contains the data that was received from the WebBrowser and the ldquoresponserdquoallows us to send the output back to the WebBrowser
While exchanging data between the WEB Browser and WEB Server the following 2 objects are usedRequest and Response
tomcat
request
response
wwwyahoocom
user name password
LoginWEB Server Server Side Program
wwwyahoocom
user name password
Login
WEB Server Server Side Program
3 SATEESH N
HttpServletRequest For receiving input from the WebBrowser
Methods
String getParameter(String paramname) Returns the value of the specified parameter It returns null if theparameter is not available
Cookie[ ] get Cookie( ) Returns all the cookies that are received from the WebBrowser
HttpSession getSession( ) Returns the current HttpSession
HttpServletResponse For sending output to the WebBrowser
Methods
void setContentType(String mimeType) Sets the content type as mime type MIME(Multipurpose Internet Mail Extension )
Mime Types texthtml textplain imagegif
PrintWriter getWriter( ) Returns the output stream for sending the output to thye WebBrowser
void addCookie(Cookie ck) Sends a cookie to the WebBrowser
waServlet to send the text to WebBrowser
File name firstservletjava
import javaioimport javaxservletimport javaxservlethttp
public class firstservlet extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException send the output to the webbrowser responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(ltHTMLgt) outprintln(ltBODY bgcolor=0086b2 text=whitegt) outprintln(ltH1 align =centergtWelcome to Servlet ProgrammingltH1gt) outprintln(ltHR size=5 color=blackgt) outprintln(ltH3gt First Servlet ProgramltH3gt) outprintln(ltBODYgt) outprintln(ltHTMLgt)
4 SATEESH N
waservlet to send employee details to the WebBrowser
File name getempdetservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class getempdetservlet extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbody bgcolor=white text=blackgt) outprintln(lth2 style=background-colorgreencoloryellowtext-aligncentergt Exployee Details lth2gt)
try getting data
ClassforName(oraclejdbcdriverOracleDriver) Connection con = DriverManagergetConnection(jdbcoraclethinorasrv1521miraclescotttiger)
ClassforName(sunjdbcodbcJdbcOdbcDriver) Connection con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
Statement stmt = concreateStatement() ResultSet rs = stmtexecuteQuery(select empnoenamejobsaldeptno from emp)
constructing table format
outprintln(lttable width=100 bgcolor=pink border=2 bordercolor=red cellspacing=0gt) outprintln(lttrgt) outprintln(ltthgtEmployee Numberltthgt) outprintln(ltthgtEmployee Nameltthgt) outprintln(ltthgtJOBltthgt) outprintln(ltthgtSalaryltthgt) outprintln(ltthgtDepartment Noltthgt) outprintln(lttrgt)
placing the records into table
while(rsnext()) outprintln(lttrgt) for(int i=1ilt=5i++) outprintln(lttdgt+rsgetString(i)+lttdgt) outprintln(lttrgt) outprintln(lttablegt) rsclose() stmtclose() conclose() conthellip
5 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln(ltbodygtlthtmlgt)
HTML Forms A HTML form is a collection of input fields such as text boxes check boxes etc HTMLforms are used for sending data from the WebBrowser to the WebServer Each HTML form contains thefollowing
Name form name
Method GET || POST
Action The name of the server side program for processing the data
One or more input fields
SUBMIT button A special button which sends the accepted data to the WebServer
was which accepts employee details from WebBrowser (html) and sends them to the WebServer (ssp) Theservlet after receiving the data should echo the details back to the WebBrowser
File name iptoservletoptowbhtml
lt-- iptoservletoptowbhtml--gt
lthtmlgt ltbodygt lth2gt Enter Employee Details lth2gt ltform name = EMPFORM method = GET action= httplocalhost8080satclassservletiptoservletoptowbgt Employee Number ltinput type = text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type = text name=ENAME size=25gtltbrgt ltbrgt Employee JOb ltinput type = text name=JOB size=15gt ltbrgt ltinput type = SUBMIT value=Send Datagt ltformgt ltbodygtlthtmlgt
File name iptoservletoptowbjava
import javaioimport javaxservletimport javaxservlethttp
public class iptoservletoptowb extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) conthellip
6 SATEESH N
PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
read data from the request
String p1 = requestgetParameter(EMPNO) String p2 = requestgetParameter(ENAME) String p3 = requestgetParameter(JOB)
send the received details to the client
outprintln(lth2gt received details lth2gt) outprintln(ltbrgt) outprintln(lth3gt Employee Number +p1+ltbrgt) outprintln( Employee Name +p2+ltbrgt) outprintln( Employee JOB +p3+lth3gt) outprintln(ltbodygtlthtmlgt)
wa html file which accepts an employee number and sends the employee number to the servlet Theservlet should return the corresponding employee details back to the WebBrowser
lt--findempservlethtml--gt
lthtmlgt ltbodygt lth2gt Find Employee Details lth2gt ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletfindempservletgt Enter Employee Number ltinput type=text name=EMPNO size=15gt ltinput type=submit value=Find Employee Recordgt ltformgt ltbodygtlthtmlgt
File name findempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class findempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException IOException
responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
conthellip
7 SATEESH N
Receive the employee number
int empno = IntegerparseInt(requestgetParameter(EMPNO))
Get the record try ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoralcescotttiger) ps = conprepareStatement(select empnoenamejobsaldeptno from emp where empno=)
pssetInt(1empno) ResultSet rs = psexecuteQuery()
if(rsnext()) outprintln( lth2gt RecordFound lth2gt ) outprintln(ltbrgt Employee Number +rsgetString(1)) outprintln(ltbrgt Employee Name +rsgetString(2)) outprintln(ltbrgt JOB +rsgetString(3)) outprintln(ltbrgt Salary +rsgetString(4)) outprintln(ltbrgt Department No +rsgetString(5)) else outprintln( lth2gt Record Not Found +empno+ lth2gt ) catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclassfindempservlethtmlgt Find Another ltagt) outprintln(ltbodygt lthtmlgt)
wa html file which accepts employee details and sends them to the servlet The servlet after receiving theemployee details should insert them into the database
lt--saveempservlethtml--gt
lthtmlgt ltbodygt lth2 style=background-color0086b2colorwhitetext-aligncentergtNew Employee Recordlth2gt
ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletsaveempservletgt
Employee Number ltinput type=text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type=text name=ENAME size=25gt ltbrgt ltbrgt Employe Job ltinput type=text name=JOB size=15gt ltbrgt ltbrgt Basic Salary ltinput type=text name=SAL size=10gt ltbrgt ltbrgt cont
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 3: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/3.jpg)
3 SATEESH N
HttpServletRequest For receiving input from the WebBrowser
Methods
String getParameter(String paramname) Returns the value of the specified parameter It returns null if theparameter is not available
Cookie[ ] get Cookie( ) Returns all the cookies that are received from the WebBrowser
HttpSession getSession( ) Returns the current HttpSession
HttpServletResponse For sending output to the WebBrowser
Methods
void setContentType(String mimeType) Sets the content type as mime type MIME(Multipurpose Internet Mail Extension )
Mime Types texthtml textplain imagegif
PrintWriter getWriter( ) Returns the output stream for sending the output to thye WebBrowser
void addCookie(Cookie ck) Sends a cookie to the WebBrowser
waServlet to send the text to WebBrowser
File name firstservletjava
import javaioimport javaxservletimport javaxservlethttp
public class firstservlet extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException send the output to the webbrowser responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(ltHTMLgt) outprintln(ltBODY bgcolor=0086b2 text=whitegt) outprintln(ltH1 align =centergtWelcome to Servlet ProgrammingltH1gt) outprintln(ltHR size=5 color=blackgt) outprintln(ltH3gt First Servlet ProgramltH3gt) outprintln(ltBODYgt) outprintln(ltHTMLgt)
4 SATEESH N
waservlet to send employee details to the WebBrowser
File name getempdetservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class getempdetservlet extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbody bgcolor=white text=blackgt) outprintln(lth2 style=background-colorgreencoloryellowtext-aligncentergt Exployee Details lth2gt)
try getting data
ClassforName(oraclejdbcdriverOracleDriver) Connection con = DriverManagergetConnection(jdbcoraclethinorasrv1521miraclescotttiger)
ClassforName(sunjdbcodbcJdbcOdbcDriver) Connection con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
Statement stmt = concreateStatement() ResultSet rs = stmtexecuteQuery(select empnoenamejobsaldeptno from emp)
constructing table format
outprintln(lttable width=100 bgcolor=pink border=2 bordercolor=red cellspacing=0gt) outprintln(lttrgt) outprintln(ltthgtEmployee Numberltthgt) outprintln(ltthgtEmployee Nameltthgt) outprintln(ltthgtJOBltthgt) outprintln(ltthgtSalaryltthgt) outprintln(ltthgtDepartment Noltthgt) outprintln(lttrgt)
placing the records into table
while(rsnext()) outprintln(lttrgt) for(int i=1ilt=5i++) outprintln(lttdgt+rsgetString(i)+lttdgt) outprintln(lttrgt) outprintln(lttablegt) rsclose() stmtclose() conclose() conthellip
5 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln(ltbodygtlthtmlgt)
HTML Forms A HTML form is a collection of input fields such as text boxes check boxes etc HTMLforms are used for sending data from the WebBrowser to the WebServer Each HTML form contains thefollowing
Name form name
Method GET || POST
Action The name of the server side program for processing the data
One or more input fields
SUBMIT button A special button which sends the accepted data to the WebServer
was which accepts employee details from WebBrowser (html) and sends them to the WebServer (ssp) Theservlet after receiving the data should echo the details back to the WebBrowser
File name iptoservletoptowbhtml
lt-- iptoservletoptowbhtml--gt
lthtmlgt ltbodygt lth2gt Enter Employee Details lth2gt ltform name = EMPFORM method = GET action= httplocalhost8080satclassservletiptoservletoptowbgt Employee Number ltinput type = text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type = text name=ENAME size=25gtltbrgt ltbrgt Employee JOb ltinput type = text name=JOB size=15gt ltbrgt ltinput type = SUBMIT value=Send Datagt ltformgt ltbodygtlthtmlgt
File name iptoservletoptowbjava
import javaioimport javaxservletimport javaxservlethttp
public class iptoservletoptowb extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) conthellip
6 SATEESH N
PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
read data from the request
String p1 = requestgetParameter(EMPNO) String p2 = requestgetParameter(ENAME) String p3 = requestgetParameter(JOB)
send the received details to the client
outprintln(lth2gt received details lth2gt) outprintln(ltbrgt) outprintln(lth3gt Employee Number +p1+ltbrgt) outprintln( Employee Name +p2+ltbrgt) outprintln( Employee JOB +p3+lth3gt) outprintln(ltbodygtlthtmlgt)
wa html file which accepts an employee number and sends the employee number to the servlet Theservlet should return the corresponding employee details back to the WebBrowser
lt--findempservlethtml--gt
lthtmlgt ltbodygt lth2gt Find Employee Details lth2gt ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletfindempservletgt Enter Employee Number ltinput type=text name=EMPNO size=15gt ltinput type=submit value=Find Employee Recordgt ltformgt ltbodygtlthtmlgt
File name findempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class findempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException IOException
responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
conthellip
7 SATEESH N
Receive the employee number
int empno = IntegerparseInt(requestgetParameter(EMPNO))
Get the record try ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoralcescotttiger) ps = conprepareStatement(select empnoenamejobsaldeptno from emp where empno=)
pssetInt(1empno) ResultSet rs = psexecuteQuery()
if(rsnext()) outprintln( lth2gt RecordFound lth2gt ) outprintln(ltbrgt Employee Number +rsgetString(1)) outprintln(ltbrgt Employee Name +rsgetString(2)) outprintln(ltbrgt JOB +rsgetString(3)) outprintln(ltbrgt Salary +rsgetString(4)) outprintln(ltbrgt Department No +rsgetString(5)) else outprintln( lth2gt Record Not Found +empno+ lth2gt ) catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclassfindempservlethtmlgt Find Another ltagt) outprintln(ltbodygt lthtmlgt)
wa html file which accepts employee details and sends them to the servlet The servlet after receiving theemployee details should insert them into the database
lt--saveempservlethtml--gt
lthtmlgt ltbodygt lth2 style=background-color0086b2colorwhitetext-aligncentergtNew Employee Recordlth2gt
ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletsaveempservletgt
Employee Number ltinput type=text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type=text name=ENAME size=25gt ltbrgt ltbrgt Employe Job ltinput type=text name=JOB size=15gt ltbrgt ltbrgt Basic Salary ltinput type=text name=SAL size=10gt ltbrgt ltbrgt cont
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 4: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/4.jpg)
4 SATEESH N
waservlet to send employee details to the WebBrowser
File name getempdetservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class getempdetservlet extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbody bgcolor=white text=blackgt) outprintln(lth2 style=background-colorgreencoloryellowtext-aligncentergt Exployee Details lth2gt)
try getting data
ClassforName(oraclejdbcdriverOracleDriver) Connection con = DriverManagergetConnection(jdbcoraclethinorasrv1521miraclescotttiger)
ClassforName(sunjdbcodbcJdbcOdbcDriver) Connection con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
Statement stmt = concreateStatement() ResultSet rs = stmtexecuteQuery(select empnoenamejobsaldeptno from emp)
constructing table format
outprintln(lttable width=100 bgcolor=pink border=2 bordercolor=red cellspacing=0gt) outprintln(lttrgt) outprintln(ltthgtEmployee Numberltthgt) outprintln(ltthgtEmployee Nameltthgt) outprintln(ltthgtJOBltthgt) outprintln(ltthgtSalaryltthgt) outprintln(ltthgtDepartment Noltthgt) outprintln(lttrgt)
placing the records into table
while(rsnext()) outprintln(lttrgt) for(int i=1ilt=5i++) outprintln(lttdgt+rsgetString(i)+lttdgt) outprintln(lttrgt) outprintln(lttablegt) rsclose() stmtclose() conclose() conthellip
5 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln(ltbodygtlthtmlgt)
HTML Forms A HTML form is a collection of input fields such as text boxes check boxes etc HTMLforms are used for sending data from the WebBrowser to the WebServer Each HTML form contains thefollowing
Name form name
Method GET || POST
Action The name of the server side program for processing the data
One or more input fields
SUBMIT button A special button which sends the accepted data to the WebServer
was which accepts employee details from WebBrowser (html) and sends them to the WebServer (ssp) Theservlet after receiving the data should echo the details back to the WebBrowser
File name iptoservletoptowbhtml
lt-- iptoservletoptowbhtml--gt
lthtmlgt ltbodygt lth2gt Enter Employee Details lth2gt ltform name = EMPFORM method = GET action= httplocalhost8080satclassservletiptoservletoptowbgt Employee Number ltinput type = text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type = text name=ENAME size=25gtltbrgt ltbrgt Employee JOb ltinput type = text name=JOB size=15gt ltbrgt ltinput type = SUBMIT value=Send Datagt ltformgt ltbodygtlthtmlgt
File name iptoservletoptowbjava
import javaioimport javaxservletimport javaxservlethttp
public class iptoservletoptowb extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) conthellip
6 SATEESH N
PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
read data from the request
String p1 = requestgetParameter(EMPNO) String p2 = requestgetParameter(ENAME) String p3 = requestgetParameter(JOB)
send the received details to the client
outprintln(lth2gt received details lth2gt) outprintln(ltbrgt) outprintln(lth3gt Employee Number +p1+ltbrgt) outprintln( Employee Name +p2+ltbrgt) outprintln( Employee JOB +p3+lth3gt) outprintln(ltbodygtlthtmlgt)
wa html file which accepts an employee number and sends the employee number to the servlet Theservlet should return the corresponding employee details back to the WebBrowser
lt--findempservlethtml--gt
lthtmlgt ltbodygt lth2gt Find Employee Details lth2gt ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletfindempservletgt Enter Employee Number ltinput type=text name=EMPNO size=15gt ltinput type=submit value=Find Employee Recordgt ltformgt ltbodygtlthtmlgt
File name findempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class findempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException IOException
responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
conthellip
7 SATEESH N
Receive the employee number
int empno = IntegerparseInt(requestgetParameter(EMPNO))
Get the record try ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoralcescotttiger) ps = conprepareStatement(select empnoenamejobsaldeptno from emp where empno=)
pssetInt(1empno) ResultSet rs = psexecuteQuery()
if(rsnext()) outprintln( lth2gt RecordFound lth2gt ) outprintln(ltbrgt Employee Number +rsgetString(1)) outprintln(ltbrgt Employee Name +rsgetString(2)) outprintln(ltbrgt JOB +rsgetString(3)) outprintln(ltbrgt Salary +rsgetString(4)) outprintln(ltbrgt Department No +rsgetString(5)) else outprintln( lth2gt Record Not Found +empno+ lth2gt ) catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclassfindempservlethtmlgt Find Another ltagt) outprintln(ltbodygt lthtmlgt)
wa html file which accepts employee details and sends them to the servlet The servlet after receiving theemployee details should insert them into the database
lt--saveempservlethtml--gt
lthtmlgt ltbodygt lth2 style=background-color0086b2colorwhitetext-aligncentergtNew Employee Recordlth2gt
ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletsaveempservletgt
Employee Number ltinput type=text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type=text name=ENAME size=25gt ltbrgt ltbrgt Employe Job ltinput type=text name=JOB size=15gt ltbrgt ltbrgt Basic Salary ltinput type=text name=SAL size=10gt ltbrgt ltbrgt cont
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 5: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/5.jpg)
5 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln(ltbodygtlthtmlgt)
HTML Forms A HTML form is a collection of input fields such as text boxes check boxes etc HTMLforms are used for sending data from the WebBrowser to the WebServer Each HTML form contains thefollowing
Name form name
Method GET || POST
Action The name of the server side program for processing the data
One or more input fields
SUBMIT button A special button which sends the accepted data to the WebServer
was which accepts employee details from WebBrowser (html) and sends them to the WebServer (ssp) Theservlet after receiving the data should echo the details back to the WebBrowser
File name iptoservletoptowbhtml
lt-- iptoservletoptowbhtml--gt
lthtmlgt ltbodygt lth2gt Enter Employee Details lth2gt ltform name = EMPFORM method = GET action= httplocalhost8080satclassservletiptoservletoptowbgt Employee Number ltinput type = text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type = text name=ENAME size=25gtltbrgt ltbrgt Employee JOb ltinput type = text name=JOB size=15gt ltbrgt ltinput type = SUBMIT value=Send Datagt ltformgt ltbodygtlthtmlgt
File name iptoservletoptowbjava
import javaioimport javaxservletimport javaxservlethttp
public class iptoservletoptowb extends HttpServlet public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException
IOException responsesetContentType(texthtml) conthellip
6 SATEESH N
PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
read data from the request
String p1 = requestgetParameter(EMPNO) String p2 = requestgetParameter(ENAME) String p3 = requestgetParameter(JOB)
send the received details to the client
outprintln(lth2gt received details lth2gt) outprintln(ltbrgt) outprintln(lth3gt Employee Number +p1+ltbrgt) outprintln( Employee Name +p2+ltbrgt) outprintln( Employee JOB +p3+lth3gt) outprintln(ltbodygtlthtmlgt)
wa html file which accepts an employee number and sends the employee number to the servlet Theservlet should return the corresponding employee details back to the WebBrowser
lt--findempservlethtml--gt
lthtmlgt ltbodygt lth2gt Find Employee Details lth2gt ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletfindempservletgt Enter Employee Number ltinput type=text name=EMPNO size=15gt ltinput type=submit value=Find Employee Recordgt ltformgt ltbodygtlthtmlgt
File name findempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class findempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException IOException
responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
conthellip
7 SATEESH N
Receive the employee number
int empno = IntegerparseInt(requestgetParameter(EMPNO))
Get the record try ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoralcescotttiger) ps = conprepareStatement(select empnoenamejobsaldeptno from emp where empno=)
pssetInt(1empno) ResultSet rs = psexecuteQuery()
if(rsnext()) outprintln( lth2gt RecordFound lth2gt ) outprintln(ltbrgt Employee Number +rsgetString(1)) outprintln(ltbrgt Employee Name +rsgetString(2)) outprintln(ltbrgt JOB +rsgetString(3)) outprintln(ltbrgt Salary +rsgetString(4)) outprintln(ltbrgt Department No +rsgetString(5)) else outprintln( lth2gt Record Not Found +empno+ lth2gt ) catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclassfindempservlethtmlgt Find Another ltagt) outprintln(ltbodygt lthtmlgt)
wa html file which accepts employee details and sends them to the servlet The servlet after receiving theemployee details should insert them into the database
lt--saveempservlethtml--gt
lthtmlgt ltbodygt lth2 style=background-color0086b2colorwhitetext-aligncentergtNew Employee Recordlth2gt
ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletsaveempservletgt
Employee Number ltinput type=text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type=text name=ENAME size=25gt ltbrgt ltbrgt Employe Job ltinput type=text name=JOB size=15gt ltbrgt ltbrgt Basic Salary ltinput type=text name=SAL size=10gt ltbrgt ltbrgt cont
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 6: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/6.jpg)
6 SATEESH N
PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
read data from the request
String p1 = requestgetParameter(EMPNO) String p2 = requestgetParameter(ENAME) String p3 = requestgetParameter(JOB)
send the received details to the client
outprintln(lth2gt received details lth2gt) outprintln(ltbrgt) outprintln(lth3gt Employee Number +p1+ltbrgt) outprintln( Employee Name +p2+ltbrgt) outprintln( Employee JOB +p3+lth3gt) outprintln(ltbodygtlthtmlgt)
wa html file which accepts an employee number and sends the employee number to the servlet Theservlet should return the corresponding employee details back to the WebBrowser
lt--findempservlethtml--gt
lthtmlgt ltbodygt lth2gt Find Employee Details lth2gt ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletfindempservletgt Enter Employee Number ltinput type=text name=EMPNO size=15gt ltinput type=submit value=Find Employee Recordgt ltformgt ltbodygtlthtmlgt
File name findempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class findempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletException IOException
responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
conthellip
7 SATEESH N
Receive the employee number
int empno = IntegerparseInt(requestgetParameter(EMPNO))
Get the record try ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoralcescotttiger) ps = conprepareStatement(select empnoenamejobsaldeptno from emp where empno=)
pssetInt(1empno) ResultSet rs = psexecuteQuery()
if(rsnext()) outprintln( lth2gt RecordFound lth2gt ) outprintln(ltbrgt Employee Number +rsgetString(1)) outprintln(ltbrgt Employee Name +rsgetString(2)) outprintln(ltbrgt JOB +rsgetString(3)) outprintln(ltbrgt Salary +rsgetString(4)) outprintln(ltbrgt Department No +rsgetString(5)) else outprintln( lth2gt Record Not Found +empno+ lth2gt ) catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclassfindempservlethtmlgt Find Another ltagt) outprintln(ltbodygt lthtmlgt)
wa html file which accepts employee details and sends them to the servlet The servlet after receiving theemployee details should insert them into the database
lt--saveempservlethtml--gt
lthtmlgt ltbodygt lth2 style=background-color0086b2colorwhitetext-aligncentergtNew Employee Recordlth2gt
ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletsaveempservletgt
Employee Number ltinput type=text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type=text name=ENAME size=25gt ltbrgt ltbrgt Employe Job ltinput type=text name=JOB size=15gt ltbrgt ltbrgt Basic Salary ltinput type=text name=SAL size=10gt ltbrgt ltbrgt cont
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 7: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/7.jpg)
7 SATEESH N
Receive the employee number
int empno = IntegerparseInt(requestgetParameter(EMPNO))
Get the record try ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoralcescotttiger) ps = conprepareStatement(select empnoenamejobsaldeptno from emp where empno=)
pssetInt(1empno) ResultSet rs = psexecuteQuery()
if(rsnext()) outprintln( lth2gt RecordFound lth2gt ) outprintln(ltbrgt Employee Number +rsgetString(1)) outprintln(ltbrgt Employee Name +rsgetString(2)) outprintln(ltbrgt JOB +rsgetString(3)) outprintln(ltbrgt Salary +rsgetString(4)) outprintln(ltbrgt Department No +rsgetString(5)) else outprintln( lth2gt Record Not Found +empno+ lth2gt ) catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclassfindempservlethtmlgt Find Another ltagt) outprintln(ltbodygt lthtmlgt)
wa html file which accepts employee details and sends them to the servlet The servlet after receiving theemployee details should insert them into the database
lt--saveempservlethtml--gt
lthtmlgt ltbodygt lth2 style=background-color0086b2colorwhitetext-aligncentergtNew Employee Recordlth2gt
ltform name = EMPFORM method=GET action=httplocalhost8080satclassservletsaveempservletgt
Employee Number ltinput type=text name=EMPNO size=15gt ltbrgt ltbrgt Employee Name ltinput type=text name=ENAME size=25gt ltbrgt ltbrgt Employe Job ltinput type=text name=JOB size=15gt ltbrgt ltbrgt Basic Salary ltinput type=text name=SAL size=10gt ltbrgt ltbrgt cont
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 8: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/8.jpg)
8 SATEESH N
Department Number ltinput type=text name=DEPTNO size=5gt ltbrgt ltbrgt ltinput type=SUBMIT value=Save Detailsgt ltformgt ltbodygtlthtmlgt
File name saveempservletjava
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class saveempservlet extends HttpServlet static Connection con static PreparedStatement ps
public void doGet(HttpServletRequest requestHttpServletResponse response)throwsServletExceptionIOException responsesetContentType(texthtml) PrintWriter out = responsegetWriter() outprintln(lthtmlgtltbodygt)
try Receive the employee details
int empno = IntegerparseInt(requestgetParameter(EMPNO)) String ename = requestgetParameter(ENAME) String job = requestgetParameter(JOB) double sal = DoubleparseDouble(requestgetParameter(SAL)) int deptno = IntegerparseInt(requestgetParameter(DEPTNO))
open the connection
ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) ps = conprepareStatement(insert into emp(empnoenamejobsaldeptno) values())
pssetInt(1empno) pssetString(2ename) pssetString(3job) pssetDouble(4sal) pssetInt(5deptno)
int n = psexecuteUpdate()
if(n==1) outprintln(lth3gt Record Saved lth3gt) else outprintln(lth3gt Record Not Saved lth3gt)
psclose() conclose() conthellip
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 9: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/9.jpg)
9 SATEESH N
catch(Exception ex) outprintln(ltbrgt Error +ex) outprintln( lthr size=5 color=redgt ) outprintln( lta href = satclasssaveempservlethtmlgt Save Another ltagt) outprintln(ltbodygt lthtmlgt)
Session Management
HTTP is a stateless protocol ie whenever a WebBrowser sends a request to the WebBrowser theWebServer provides a response to the WebBrowser and closes the connection ie the WebBrowser doesnrsquotstore any information of WebBrowser Some times we want the server side program to identify what values aregiven to the clients in the previous response
Session management is concept which makes a server side program to identify what values are givento the clients in the previous response
Sessin management can achieve in three different ways
1 Hidden Variables2 Cookies3 Sessions
Hidden Variables A Hidden Variable is a input field in a form which contains a value and which will not bedisplayed on the document Whenever the user clicks on the submit button the value of the hidden variable willalso be submitted along with the other input fields
File name nextempservletjava
using hidden variables
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0 conthellip
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 10: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/10.jpg)
10 SATEESH N
String RNO = requestgetParameter(RNO)
if(RNO=null) rno = IntegerparseInt(RNO)
rno++
try send the employee record
openConnection()
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from employeewhere empno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
send the latest rno from the webserver to webbrowser
outprintln( lthr size = 5 color = redgt ) outprintln( ltform name=EMPFORM method=GET action=httplocalhost8080satclassservlet
nextempservletgt )
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 11: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/11.jpg)
11 SATEESH N
outprintln( ltinput type=Hidden name=RNO value=+rno+gt ) outprintln( ltinput type=Submit value=Next Recordgt ) outprintln(ltformgt) outprintln(ltbodygtlthtmlgt)
void openConnection()throws SQLException try Systemoutprintln(Getting Connection) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger) catch(ClassNotFoundException ex) throw new SQLException(Driver Class Not Found) catch(SQLException ex) throw ex
Cookies A cookie is a piece of information created by the server and will be given to the clientsWebBrowser The WebBrowser receives the cookie and it will not be displayed on the document TheWebBrowser stores the cookie in a separate memory area Whenever the WebBrowser connects to theWebServer all the cookies of that WebServer will be given from the WebBrowser to the WebServer As aresult the server side program can retrieve any values stored into cookie
A WebBrowser generally stores upto 20 cookies for each WebServer A cookie contains the name andvalue In java cookies are managed using the cookie class Each cookie contains a name and value
Creating a Cookie In java cookies are managed using the cookie class each contains a name valueexpire date and time etc
Cookie(String name String value)
String getValue( )
void setValue(String value)
Sending a cookie to the WebBrowser
HttpServletResponse
void addCookie(Cookie ck) Sends a cookie to the WebBrowser If a cookie with the same name is alreadyexisting on the WebBrowser it will bhe replaced by the latest value
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 12: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/12.jpg)
12 SATEESH N
Receiving the Cookies from the WebBrowser
HttpServletRequest
Cookie[ ] getCookies( ) Returns all the cookies that are received from the WebBrowser File name nextempservlet2java
using cookies
import javaioimport javasqlimport javaxservletimport javaxservlethttp
public class nextempservlet2 extends HttpServlet static Connection con = null
public void doGet(HttpServletRequest requestHttpServletResponse response)throws ServletExceptionIOException
responsesetContentType(texthtml)
PrintWriter out = responsegetWriter()
outprintln(lthtmlgt ltbodygt lth2gt Employee Record lth2gt)
int rno = 0
Cookie arr[] = requestgetCookies()
find the cookie with the name RNO
if(arr=null) for(int i=0iltarrlengthi++) if(arr[i]getName()equals(RNO)) rno = IntegerparseInt(arr[i]getValue()) break
rno++
send the record of rno to out
sendRecord(rnoout)
send the latest cookie to the webbrowser
Cookie ck = new Cookie(RNOStringvalueOf(rno))
responseaddCookie(ck)
outprintln( lthr size = 5 color = redgt )conthellip
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)
![Page 13: Servlet Programming](https://reader036.fdocuments.in/reader036/viewer/2022073101/5464d23aaf795979338b4b16/html5/thumbnails/13.jpg)
13 SATEESH N
outprintln( lta href=httplocalhost8080satclassservletnextempservlet2gt Next Employee Record ltagt )
outprintln( ltbodygt lthtmlgt )
void sendRecord(int rnoPrintWriter out)throws IOException try if(con==null) Systemoutprintln(Getting Connection ) ClassforName(sunjdbcodbcJdbcOdbcDriver) con = DriverManagergetConnection(jdbcodbcjavaoraclescotttiger)
PreparedStatement ps = conprepareStatement(select empnoenamejobsaldeptno from emp whereempno = )
PreparedStatement ps = conprepareStatement(select snosnamesaddr from student where sno = )
pssetInt(1rno)
ResultSet rs = psexecuteQuery()
if( rsnext() ) outprintln( lth3gt Record Found +rno+ lth3gt )
outprintln( ltbrgt Employee Number +rsgetString(1) ) outprintln( ltbrgt Employee Name +rsgetString(2) ) outprintln( ltbrgt Employee Job +rsgetString(3) ) outprintln( ltbrgt Basic Salary +rsgetString(4) ) outprintln( ltbrgt Department No +rsgetString(5) )
outprintln( ltbrgt Student Number +rsgetString(1) ) outprintln( ltbrgt Student Name +rsgetString(2) ) outprintln( ltbrgt Student Address +rsgetString(3) )
else outprintln( lth3gt Record Not Found +rno+ lth3gt )
rsclose() psclose() catch(Exception ex) outprintln( ltbrgt Error +ex)