Professional Documents
Culture Documents
J2EE Lab Manual 10mca46 PDF
J2EE Lab Manual 10mca46 PDF
J2EE Laboratory
1. Write a JAVA Program to insert data into Student DATA BASE and retrieve
info based on particular queries (queries can be given which covers all the
topics of 2nd UNIT).
3. Write a JAVA Servlet Program to Download a file and display it on the screen
(A link has to be provided in HTML, when the link is clicked corresponding file
has to be displayed on Screen)
5. Write a JAVA Servlet Program to implement and demonstrate get() and Post
methods(Using HTTP Servlet Class).
9. Write a JAVA JSP Program to get student information through a HTML and
create a JAVA Bean Class, populate Bean and display the same information
through another JSP.
10. Write a JAVA JSP Program which uses <jsp:plugin> tag to run a applet.
11. Write a JAVA JSP Program whch implements nested tags and also uses
TagSupport Class.
1. Write a JAVA Program to insert data into Student DATA BASE and
retrieve info based on particular queries (queries can be given which
covers all the topics of 2nd UNIT).
SOURCE CODE:
JDBCDemo.java
import java.sql.*;
import java.io.*;
class JDBCDemo
{
public static void main(String args[])
{
Connection con=null;
Statement st=null;
PreparedStatement pst=null;
ResultSet rs=null;
String str=null;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:vas","","");
}
catch(ClassNotFoundException e)
{
System.out.println("\nUnable to load JDBC/ODBC Bridge Driver"+e);
System.exit(1);
}
catch(SQLException e)
{
System.out.println("Cannot able to connect with database"+e);
}
try
{
BufferedReader bufRead = new BufferedReader(new InputStreamReader(System.in))
;
while(true)
{
try{
System.out.println("\nSTUDENT INFORMATION MANAGEMENT SYSTEM");
System.out.println("\n1.Insert Info \n2.Query \n3.Updation \n4.Exit");
System.out.print("\nEnter your choice : ");
int ch=Integer.parseInt(bufRead.readLine());
switch(ch)
{
case 1: System.out.println("\nEnter the student usn, name, branch,age and
percentage\n");
String usn=bufRead.readLine();
String name=bufRead.readLine();
String branch=bufRead.readLine();
int age=Integer.parseInt(bufRead.readLine());
float per=Float.parseFloat(bufRead.readLine());
pst=con.prepareStatement("insert into student values(?,?,?,?,?)");
pst.setString(1,usn);
pst.setString(2,name);
pst.setString(3,branch);
pst.setInt(4,age);
pst.setFloat(5,per);
pst.execute();
break;
System.out.println(e);
}
}
}
catch(Exception e)
{
System.out.println(e);
}
}
}
OUTPUT
SOURCE CODE:
Login.html
<html>
<head>
<title>Login Page</title>
</head>
<body>
<center><h1>Login Page</h1></center>
<b>Please enter your username and password
<form action="Login" method="POST">
<p><b>Username :<input type="text" name="username" length=40>
<p><b>Password :<input type="password" name="pass" length=40>
<p> <input type="submit" value="Submit">
</form>
</body>
</html>
Login.java
import javax.servlet.http.*;
import java.io.*;
OUTPUT
SOURCE CODE:
Download.html
<html>
<body>
<h1>The SQL Tutorial</h1>
<h3>
<a href="http://localhost:8080/PROG3/DownloadServlet">Click here
to Learn SQL</a>
</h3>
</body>
</html>
DownloadServlet.java
import javax.servlet.http.*;
import javax.servlet.*;
import java.io.*;
public class DownloadServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse
response)throws IOException,ServletException
{
response.setContentType("application/msword");
response.setHeader("Content-
Disposition","attachment;filename=SQL.doc");
ServletOutputStream output=response.getOutputStream();
FileInputStream file=new FileInputStream("F:\\SQL.doc");
int c=0;
while((c=file.read())!=-1)
{
output.write(c);
}
output.flush(); output.close(); file.close();
}
}
OUTPUT
SOURCE CODE:
IFDemo.html
<html>
<head>
<title>include and forward Demo</title>
</head>
<body>
<center><h1>include forward Demo</h1></center>
<b>Please enter mode of operation
<form action="/PROG4/IFDemo">
<p><input type="text" name="mode" length=40>
<p> <input type="submit" value="Submit">
<input type="reset" value="Clear">
</form>
</body>
</html>
IFDemo.java
import javax.servlet.http.*;
import javax.servlet.*;
import java.io.*;
try
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
RequestDispatcher rd=null;
if(mode.equals("forward"))
{
request.setAttribute("mode","Forward Response....");
rd=request.getRequestDispatcher("ForwardDemo");
rd.forward(request,response);
}
else if(mode.equals("include"))
{
request.setAttribute("mode","Include Response...");
out.println("<html>");
out.println("<head>");
out.println("<title>Includes Demo</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Hello from Level 1</h1>");
out.println("This text is displayed at Level 1.");
rd = request.getRequestDispatcher("IncludeDemo");
rd.include(request, response);
out.println("</body>");
out.println("</html>");
out.close();
}
else
{
out.println("<h3> Enter only include or forward</h3>");
out.close();
}
}catch(Exception e){
e.printStackTrace();
}
}
}
ForwardDemo.java
import javax.servlet.http.*;
import java.io.*;
IncludeDemo.java
import javax.servlet.http.*;
import java.io.*;
response.setContentType("text/html");
PrintWriter writer=response.getWriter();
String mode=(String)request.getAttribute("mode");
writer.println("<br><b>This is another text of "+mode);
writer.close();
}catch(Exception e){
e.printStackTrace(); }
}
}
OUTPUT
SOURCE CODE:
Get.html
<html><head><title>Demonstration of Get and Post Method</title><head>
<body bgcolor="pink">
<center>
<form action="http://localhost:8080/PROG5/getpost">
<p><b>Press submit button to call Get method</b></p><br>
<B>color:</B>
<select name="color"size="1">
<option value="red">red</option>
<option value="green">green</option>
<option value="blue">blue</option>
</select>
<br><br>
<input type=submit value="submit">
</form>
</body></html>
Post.html
<html><head><title>Demonstration of Get and Post Method</title><head>
<body bgcolor="pink">
<center>
<form action="http://localhost:8080/PROG5/getpost" method="post">
<p><b>Press submit button to call Post method</b></p><br>
<B>color:</B>
<select name="color"size="1">
<option value="red">red</option>
<option value="green">green</option>
<option value="blue">blue</option>
</select>
<br><br>
<input type=submit value="submit">
</form>
</body>
</html>
getpost.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
throws ServletException,IOException
{
String color=request.getParameter("color");
response.setContentType("text/html");
PrintWriter pw=response.getWriter();
pw.println("<b>Hello from Post method</b><br><br>");
pw.println("You have selected" + " " + color + " " + "color");
pw.close();
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException
{
String color=request.getParameter("color");
response.setContentType("text/html");
PrintWriter pw=response.getWriter();
pw.println("<b>Hello from Get method</b><br><br>");
pw.println("You have selected" + " " + color + " " + "color");
pw.close();
}
}
OUTPUT
SOURCE CODE
SendRedirect.html
<html>
<head>
<title>Redirecting the page</title>
</head>
<body>
<form action = "SendRedirect" method = "post">
<b>Enter your name -----:
<input type = "text" name = "username"><br>
<b>Enter your password :
<input type = "password" name = "password"><br>
<input type = "submit" value = "SUBMIT">
<input type = "reset" value = "RESET">
</form>
</body>
</html>
SendRedirect.java
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class SendRedirect extends HttpServlet
{
public void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter pw = response.getWriter();
String name = request.getParameter("username");
String password = request.getParameter("password");
if(name.equals("vit") && password.equals("vit"))
{
response.sendRedirect("ValidUser");
}
else
{
pw.println("<h3>Invalid UserName or Password ....");
}
}
}
ValidUser.java
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
OUTPUT
SOURCE CODE
ShowSession.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ShowSession extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse res)throws
ServletException,IOException
{
res.setContentType("text/html");
PrintWriter pw=res.getWriter();
String title="Session Tracking Example";
HttpSession session=req.getSession(true);
String heading;
Integer ac=(Integer)session.getAttribute("ac");
if(ac==null)
{
ac=new Integer(0);
heading ="welcome,Newcomer";
}
else
{
heading="Welcome back";
ac=new Integer(ac.intValue()+1);
}
session.setAttribute("ac",ac);
pw.println("<html><head><title>"+title+"</title></head>");
pw.println(heading+"<br>");
pw.println("sessionID = "+session.getId()+"<br>");
pw.println("ac = "+ac+"<br>");
pw.close();
}
}
OUTPUT
SOURCE CODE
EvenOdd.jsp
<html>
<head>
<title>
JSP Program
</title>
</head>
<body>
<br>
<h1>Ten Odd Numbers</h1><br>
<%
for(int i=1;i<=20;i++)
if(i%2!=0)
{
%>
<b><font size="4"><%=i%></font></b>
<%
}
%>
<br><br>
<h1>Ten Even Numbers</h1><br>
<%
for(int i=1;i<=20;i++)
if(i%2==0)
{
%>
<b><font size="4"><%=i%></font></b>
<%
}
%>
</body>
</html>
OUTPUT
SOURCE CODE
Login.jsp
<html>
<head>
<title>Login Page</title>
</head>
<body bgcolor="#fffff">
<form action="Validation.jsp">
<table border="0">
<tr>
<td>
User id :</td><td><input type="text" name="uname"/><br>
</td>
</tr>
<tr>
<td>
password :</td><td><input type="password" name="password"/><br>
</td>
</tr>
<tr>
<td align="center">
<input type="submit" value="submit">
<input type="reset" value="reset">
</td>
</tr>
</table>
</form>
</body>
</html>
Validation.jsp
<html>
<body>
<%! String uid="vas";%>
<%! String pass="mvit";%>
<%! String id,password; %>
<% id=request.getParameter("uname"); %>
<% password=request.getParameter("password"); %>
<%
if(uid.equals(id) && pass.equals(password))
{
%>
<jsp:forward page="Welcome.jsp"/>
<% }
else {
%>
<jsp:forward page="Error.jsp"/>
<% }
%>
</body>
</html>
Welcome.jsp
<body><center><h1> Welcome to Home Page</h1></center></body>
Error.jsp
<body> <h1>Invalid Entry ....</h1>
<a href="http://localhost:8080/PROG8B/">< BACK</a>
</body>
OUTPUT
SOURCE CODE
Registration.html
<html>
<head>
<title>Registration Page</title>
</head>
<body>
<h1>Registration Page</h1>
</tr>
</table>
StuInfo.jsp
<html>
<head>
<title>Register User</title>
</head>
<body>
<jsp:useBean id="stud" scope="session" class="mvit.Student">
<jsp:setProperty name="stud" property="*"/>
</jsp:useBean>
<h3>These are the values you submitted </h3>
<p>Your first name is <%= stud.getFirstName() %>.</p>
<p>Your last name is
<jsp:getProperty name="stud" property="surname"/>.</p>
<p>Your user USN is
<jsp:getProperty name="stud" property="usn"/>.</p>
<p>Your Selected Course is
<jsp:getProperty name="stud" property="course"/>.</p>
<p>Your Sem is
<jsp:getProperty name="stud" property="sem"/>.</p>
<p>Your age is
<jsp:getProperty name="stud" property="age"/>.</p>
<p>Your Address is
<jsp:getProperty name="stud" property="address"/>.</p>
</body>
</html>
Student.java
package mvit;
public class Student
{
private String firstName;
private String surname;
private String usn;
private String course;
private int sem;
private int age;
private String address;
private long contact;
return firstName;
}
OUTPUT
SOURCE CODE
AppJsp.jsp
<%@ page language="java" %>
<html>
<head>
<title>Welcome JSP-Applet Page</title>
</head>
<body>
<jsp:plugin type="applet" code="AppJspDemo.class" width="400" height="400">
<jsp:fallback>
<p>Unable to load applet</p>
</jsp:fallback>
</jsp:plugin>
</body>
</html>
AppJspDemo.java
import java.io.*;
import java.awt.*;
import java.util.*;
import java.applet.*;
import java.awt.event.*;
OUTPUT
SOURCE CODE
Nested.jsp
<%@taglib uri="/WEB-INF/tlds/nested.tld" prefix="mine"%>
<mine:nest>
<mine:nest>
<mine:nest/>
</mine:nest>
</mine:nest>
Nested.tld
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>mine</short-name>
<description>simple library.Author Rod Johnson</description>
<tag>
<name>nest</name>
<tag-class>com.NestedLevelTag</tag-class>
<body-content>JSP</body-content>
<description>
Hi
</description>
</tag>
</taglib>
NestedLevelTag.java
package com;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.Tag;
import javax.servlet.jsp.tagext.TagSupport;
try{
pageContext.getOut().println("<br> Tag nested level: "+nestLevel);
}
catch(IOException e)
{
throw new JspException("IOException -"+e.toString());
}
return EVAL_BODY_INCLUDE;
}
}
OUTPUT
SOURCE CODE:
CallServlet.html
<html>
<head>
<title>Login Page</title>
</head>
<body>
<h1>Arithmetic Operation</h1>
<form action="CallSession" method="POST">
<p><b>Enter value for A :<input type="text"
name="num1"/></b></p>
<p><b>Enter value for B :<input type="text"
name="num2"/></b></p>
<p><b><input type="submit" value="Perform Operation"></b></p>
</form>
</body>
</html>
CallSession.java
package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
out.println("<html>");
out.println("<head>");
out.println("<title>Arithmetic Operation</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Arithmetic Operation</h1>");
out.println("<h2>A = "+a+" B= "+b+"</h2>");
out.println("<pre><h2>Addition(A+B) ="+
sessionBeanDemo.add(a,b) + "</h2>");
out.println("<h2>Subtraction(A-B) = " + sessionBeanDemo.sub(a, b) +
"</h2>");
out.println("<h2>Multiplication(A*B) = " + sessionBeanDemo.mul(a, b) +
"</h2>");
out.println("<h2>Division(A/B) = " + sessionBeanDemo.div(a, b) +
"</h2></pre>");
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
/**
* Handles the HTTP
* <code>POST</code> method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
SessionBeanDemo.java
package com;
import javax.ejb.Stateless;
/**
*
* @author VASANTH
*/
@Stateless
public class SessionBeanDemo implements SessionBeanDemoLocal {
@Override
public int add(int a, int b) {
return a+b;
}
@Override
public int sub(int a, int b) {
return a-b;
}
@Override
public int mul(int a, int b) {
return a*b;
}
@Override
public int div(int a, int b) {
return a/b;
}
SessionBeanDemoLocal.java
package com;
import javax.ejb.Local;
@Local
public interface SessionBeanDemoLocal {
OUTPUT
SOURCE CODE:
CallServlet.html
<html>
<head>
<title>Login Page</title>
</head>
<body>
</form>
</body>
</html>
CallEntity.java
package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
out.println("<head>");
out.println("<title>Servlet CallEntity</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Student record sucessfully stored ....</h1>");
out.println("</body>");
out.println("</html>");
} finally {
out.close();
}
}
/**
* Handles the HTTP
* <code>POST</code> method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
Student.java
package com;
import java.io.Serializable;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlRootElement;
@Entity
@Table(name = "STUDENT")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Student.findAll", query = "SELECT s FROM Student s"),
@NamedQuery(name = "Student.findByUsn", query = "SELECT s FROM Student s
WHERE s.usn = :usn"),
@NamedQuery(name = "Student.findByName", query = "SELECT s FROM Student
s WHERE s.name = :name"),
@NamedQuery(name = "Student.findByCourse", query = "SELECT s FROM
Student s WHERE s.course = :course")})
public class Student implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 20)
@Column(name = "USN")
private String usn;
@Size(max = 20)
@Column(name = "NAME")
private String name;
@Size(max = 20)
@Column(name = "COURSE")
private String course;
public Student() {
}
@Override
public int hashCode() {
int hash = 0;
hash += (usn != null ? usn.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Student)) {
return false;
}
Student other = (Student) object;
if ((this.usn == null && other.usn != null) || (this.usn != null &&
!this.usn.equals(other.usn))) {
return false;
}
return true;
}
@Override
public String toString() {
return "com.Student[ usn=" + usn + " ]";
}
StudentFacade.java
package com;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
@Stateless
public class StudentFacade extends AbstractFacade<Student> implements
StudentFacadeLocal {
@PersistenceContext(unitName = "EntityBeanDemo-ejbPU")
private EntityManager em;
@Override
protected EntityManager getEntityManager() {
return em;
}
public StudentFacade() {
super(Student.class);
}
@Override
public void persist(Object object) {
em.persist(object);
}
@Override
public void addStu(String usn, String name, String course) {
Student obj=new Student();
obj.setUsn(usn);
obj.setName(name);
obj.setCourse(course);
persist(obj);
}
StudentFacadeLocal.java
package com;
import java.util.List;
import javax.ejb.Local;
@Local
public interface StudentFacadeLocal {
List<Student> findAll();
int count();
AbstractFacade.java
package com;
import java.util.List;
import javax.persistence.EntityManager;
q.setMaxResults(range[1] - range[0]);
q.setFirstResult(range[0]);
return q.getResultList();
}
OUTPUT
SOURCE CODE:
HelloBean.java
package hello;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageListener;
/**
*
* @author VASANTH
*/
@MessageDriven(mappedName = "jms/hello", activationConfig = {
@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue =
"Auto-acknowledge"),
@ActivationConfigProperty(propertyName = "destinationType", propertyValue =
"javax.jms.Queue")
})
public class HelloBean implements MessageListener {
public HelloBean() {
}
@Override
public void onMessage(Message message) {
try {
System.out.println("Hello "+message.getStringProperty("name"));
} catch (JMSException ex) {
Logger.getLogger(HelloBean.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Main.java
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package mdbclient;
import javax.annotation.Resource;
import javax.jms.*;
/**
*
* @author VASANTH
*/
public class Main {
@Resource(mappedName = "jms/hello")
private static Queue hello;
@Resource(mappedName = "jms/helloFactory")
private static ConnectionFactory helloFactory;
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws JMSException {
// TODO code application logic here
Connection connection = helloFactory.createConnection();
Session session = connection.createSession(false,
Session.AUTO_ACKNOWLEDGE);
MessageProducer messageProducer = session.createProducer(hello);
Message message=session.createMessage();
message.setStringProperty("name", "Vikram");
messageProducer.send(message);
System.exit(0);
OUTPUT