Professional Documents
Culture Documents
Advanced Java Academic Lab Manual
Advanced Java Academic Lab Manual
SOURCE CODE:
StdInfo.java
import java.sql.*;
import java.io.*;
class StdInfo
{
public static void main(String args[])
{
Connection con =null;
Statement st=null;
PreparedStatement pst=null;
ResultSet rs=null;
String str=null;
boolean b;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:gan"," ","");
}
catch(ClassNotFoundException e)
{
System.out.println("unable to load Jdbc/Odbc Bridge driver"+e);
System.exit(1);
}
catch(SQLException e)
{
System.out.println(""+e);
System.exit(2);
}
try
{
BufferedReader bufRead=new BufferedReader(new InputStreamReader(System.in));
while(true)
{
try{
System.out.println("\n 1.Insert\n 2.Query\n 3.Updation\n 4.Exit");
System.out.println("Enter Your Choice");
int ch=Integer.parseInt(bufRead.readLine());
switch(ch)
{
case 1:
System.out.println("\nEnter the Student USN,NAME,
BRANCH,AGE and PERCENTAGE ");
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;
case 2:
System.out.println("Enter the Query to be Execeuted");
str=bufRead.readLine();
st=con.createStatement();
rs=st.executeQuery(str);
ResultSetMetaData rmd= rs.getMetaData();
int col=rmd.getColumnCount();
int count=1;
b =rs.next();
if(!b)
{
System.out.println("Not Data Found");
}
Else{
do{
System.out.print("RECORD"+(count++)+"=> ");
for(int i=0;i<col;i++)
System.out.print(rs.getString(i+1)+"\t");
System.out.println();
}
while(rs.next());
}
break;
case 3:
System.out.println("Enter the Query for Updation\n");
str=bufRead.readLine();
st=con.createStatement();
int r=st.executeUpdate(str);
if(r==0)
System.out.println("No Rows Updated....!!!!!!!\n");
else
System.out.println("Updation done Successfully......\n");
break;
case 4:
con.close();
System.exit(0);
break;
}
}
catch(SQLException e){
System.out.println(e);
}
catch(Exception e) {
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 User Name and Password
<Form action="Login" Method=Post>
<p> <b> Username <Input type="text"
name="username" length=40>
<p> <b> Password <Input type="text"
name="pass" length=40>
<p> <input type="Submit" value="submit">
</Form>
</Body>
</HTML>
Login.java
import javax.servlet.http.*;
import java.io.*;
public class Login extends HttpServlet {
public void doPost(HttpServletRequest request,HttpServletResponse response)
{
String username=request.getParameter("username");
String pass=request.getParameter("pass");
try{
response.setContentType("text/html");
writer.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
OUTPUT
SOURCE CODE
DownloadServlet.Html
<html>
<body>
<center> <h1> The SQL Tutorial<h1>
</center>
<a href="http://localhost:8080/GProg3/DownloadServlet">
Click Here to Know About SQL
</a>
</body>
</html>
DownloadServlet.Java
import javax.servlet.http.*;
import javax.servlet.*;
import java.io.*;
res.setContentType("application/msword");
res.setHeader("Content-Disposition","attachment;filename=Sql.docx");
ServletOutputStream output=res.getOutputStream();
FileInputStream file=new FileInputStream("E:\\Sql.docx");
int c=0;
while((c=file.read())!=-1)
{
output.write(c);
}
output.flush();
file.close();
output.close();
}
}
OUTPUT
SOURCE CODE
IFDemo.html
<html>
<head>
<title> inlcude and Forward Demo </title>
</head>
<body>
<center>
<h1> INCLUDE AND FORWARD DEMO </h1>
</center>
<b> Please Enter the Mode Of Operation
<form action="IFDemo">
<p>
<p><input type="text" name ="mode" length=40>
<input type="submit" value="submit">
<input type="reset" value="clear">
</form>
</body>
</html>
IFDemo.java
import javax.servlet.http.*;
import javax.servlet.*;
public class IFDemo extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse res) throws IOException,
ServletException
{
String mode=req.getParameter("mode");
try {
res.setContentType("text/html");
PrintWriter out=res.getWriter();
RequestDispatcher rd=null;
if(mode.equals("forward"))
{
req.setAttribute("mode","Forward Response.....");
rd=req.getRequestDispatcher("ForwardDemo");
rd.forward(req,res);
}
else if(mode.equals("include"))
{
req.setAttribute("mode","Include Respone....");
out.println("<html>");
out.println("<head>");
out.println("<title> Include Demo </title>");
out.println("</head>");
out.println("<body>");
out.println("<h1> Hello Form Level </h1>");
out.println("This text is displayed at Level 1");
rd=req.getRequestDispatcher("IncludeDemo");
rd.include(req,res);
out.println("</body>");
out.println("</html>");
out.close();
}
else
{
out.println("<h1> Enter Incude or Forward </h1>");
out.close();
}
}
catch(Exception e) { e.printStackTrace();
}
}
}
ForwardDemo.java
import javax.servlet.http.*;
import javax.servlet.*;
public class ForwardDemo extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse res)
{
try{
res.setContentType("text/html");
PrintWriter writer=res.getWriter();
String mode=(String)req.getAttribute("mode");
writer.println("This is another doGet”);
writer.close();
}
catch(Exception e)
{
}
}
}
IncludeDemo.java
import javax.servlet.http.*;
import java.io.*;
public class IncludeDemo extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)
{
try
{
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>
Demonstation of Get and Post Method
</title>
</head>
<body bgcolor="plum">
<center>
<form action="http://localhost:8080/gprog5/GetPost">
<p>
<b> Please Click Sumbit Buttn to Call get Mehtod </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>
Demonstation of Get and Post Method
</title>
</head>
<body bgcolor="plum">
<center>
<form action="http://localhost:8080/gprog5/GetPost" method="post">
<p>
<b> Please Click Sumbit Buttn to Call Post Mehtod </b>
</p> <br>
GetPost.java
import java.io.*;
import javax.servlet.http.*;
import javax.servlet.*;
public class GetPost extends HttpServlet
{
OUTPUT
SOURCE CODE
SendRedirect.html
<html>
</html>
SendRedirect.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
else
{
pw.println("<h3> Invalid Username or Password..!!!");
}
}
}
ValidUSer.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
OUTPUT
SOURCE CODE
ShowSession.java
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
OUTPUT
SOURCE CODE
Evenodd.jsp
<html>
<head>
<title> JSP PRGRAM </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="plum">
<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>
</form>
</body>
</html>
Validation.jsp
<html>
<body>
<%! String uid="ganesh"; %>
<%! String pass="hegde"; %>
<%! 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
<html>
<body bgcolor="cyan">
<center>
<h1> WELCOME TO HOME PAGE </h1>
</center>
</body>
</html>
Error.jsp
<html>
<head> <title>JSP Page</title> </head>
<body bgcolor="pink">
<h1>INVALID ENTRY</h1>
<a href ="http://localhost:8080/gprog8b/">
</a>
</body>
</html>
OUTPUT
SOURCE CODE
Registration.html
<html>
<head>
<title> Regisration </title>
</head>
<body bgcolor="plum">
<h1> <pre> <font size="18pt"> Registration Page </font> </pre> <br>
<form action="StudInfo.jsp" method="post">
<pre>
FirstName : <input type="text" name="firstName" length="30" />
SurName : <input type="text" name="surname" length="30" />
USN : <input type="text" name="usn" length="30" />
Course : <input type="text" name="course" length="30" />
Sem : <input type="text" name="sem" length="30" />
Age : <input type="text" name="age" length="30" />
Address : <input type="text" name="address" length="30" />
StudInfo.jsp
<html>
<head>
<title>
Register User
</title>
</head>
<body>
<jsp:useBean id="stud" scope="session" class="com.Student">
<jsp:setProperty name="stud" property="*" />
</jsp:useBean>
</body>
</html>
Student.java
package com;
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 usn;
}
}
}
OUTPUT
10. WRITE A JAVA JSP PROGRAM WHICH USES <JSP:PLUGIN> TAG TO RUN A
APPLET.
SOURCE CODE
AppletJsp.jsp
<%@page language="java" %>
<html>
<head>
<title> Welcome </title>
</head>
<body>
<jsp:plugin type="applet" code="ButtonMoveApplet.class" width="400"
height="400" >
<jsp:fallback>
Unable to Load the File
</jsp:fallback>
</jsp:plugin>
</body>
</html>
ButtonMoveApplet.java
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
}
}
OUTPUT
11. WRITE A JAVA JSP PROGRAM WHCH IMPLEMENTS NESTED TAGS AND
ALSO USES TAGSUPPORT CLASS.
SOURCE CODE
Nested.jsp
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.*;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.Tag;
import javax.servlet.jsp.tagext.TagSupport;
Tag parent=getParent();
while(parent!=null)
{
parent=parent.getParent();
nestLevel++;
}
try{
pageContext.getOut().println("<br> tagNestedLevel:"+nestLevel);
}
catch(IOException e)
{
throw new JspException("IOException"+e.toString());
}
return EVAL_BODY_INCLUDE;
}
}
OUTPUT
SOURCE CODE:
CallSession.html
<html>
<head>
<title>Arithmetic Operation</title>
</head>
<body>
<h1>Arithmetic Operation</h1>
<form action="CallSess" 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>
CallSess.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;
/**
*
* @author Ganesh
*/
public class CallSess extends HttpServlet {
@EJB
private SessionDemoLocal sessionDemo;
int a=Integer.parseInt(request.getParameter("num1"));
int b= Integer.parseInt(request.getParameter("num2"));
try {
out.println("<html>");
out.println("<head>");
out.println("<title> Arithmetic Operattion </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) = " + sessionDemo.add(a,b) + "</h2>");
out.println("<h2>Subtraction(A-B) = " + sessionDemo.sub(a, b) +"</h2>");
out.println("<h2>Multiplication(A*B) = " + sessionDemo.mul(a, b) +"</h2>");
out.println("<h2>Division(A/B) = " + sessionDemo.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
/**
* 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 Ganesh
*/
@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;
/**
*
* @author Ganesh
*/
@Local
public interface SessionBeanDemoLocal {
OUTPUT
SOURCE CODE
callServlet.html
<html>
<head>
<title>Student Information</title>
</head>
<body>
<br>
<h2>ENTER STUDENT INFORMATION </h2>
<form action=" CallEntity " method="POST">
<pre>
<b>USN :<input type="text" name="usn"/></b>
<b>NAME :<input type="text" name="name"/></b>
<b>BRANCH :<input type="text" name="branch"/></b> <br>
<b><input type="submit" value="Insert StudentInfo"></b>
</pre>
</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;
/**
*
* @author Ganesh
*/
public class CallEntity extends HttpServlet {
@EJB
private StudentFacadeLocal studentFacade;
/**
* Processes requests for both HTTP
* <code>GET</code> and
* <code>POST</code> methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
String usn=request.getParameter("usn");
String name=request.getParameter("name");
String branch=request.getParameter("branch");
studentFacade.studadd(usn,name,branch);
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
/*
* TODO output your page here. You may use following sample code.
*/
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet Call</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1> Data Stored Successfully..........</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;
/**
*
* @author Ganesh
*/
@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.findByBranch", query = "SELECT s FROM Student s
WHERE s.branch = :branch")})
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 = "BRANCH")
private String branch;
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;
/**
*
* @author Ganesh
*/
@Stateless
public class StudentFacade extends AbstractFacade<Student> implements
StudentFacadeLocal {
@PersistenceContext(unitName = "EntityDemo-ejbPU")
private EntityManager em;
@Override
protected EntityManager getEntityManager() {
return em;
}
public StudentFacade() {
super(Student.class);
}
@Override
public void studadd(String usn, String name, String branch) {
Student obj=new Student();
obj.setUsn(usn);
obj.setName(name);
obj.setBranch(branch);
persist(obj);
}
}
StudentFacadeLocal.java
package com;
import java.util.List;
import javax.ejb.Local;
/**
*
* @author Ganesh
*/
@Local
public interface StudentFacadeLocal {
List<Student> findAll();
int count();
AbstractFacade.java
package com;
import java.util.List;
import javax.persistence.EntityManager;
/**
*
* @author Ganesh
*/
public abstract class AbstractFacade<T> {
private Class<T> entityClass;
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 Ganesh
*/
@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"));
System.out.println("Your College Name is :" +
message .getStringProperty("collegename"));
System.out.println("Your Branch Name is
"+message.getStringProperty("course"));
Main.java
package mdbclient1;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.Resource;
import javax.jms.*;
/**
*
* @author Ganesh
*/
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 = null;
Session session = null;
connection = helloFactory.createConnection();
session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageProducer messageProducer = session.createProducer(hello);
Message message=session.createMessage();
message.setStringProperty("name","Ganesh");
message.setStringProperty("collegename","SirMVIT");
message.setStringProperty("course","MCA");
messageProducer.send(message);
System.exit(0);
}
}
OUTPUT