Following is my Application directory:
Project:
WEB-INF
Classes
ApplicationServlet.class
web.xml
index.jsp
index.jsp(contains all the code to query the database and display the initial drop down menu).
Below is the code for the respective files:
==============
index.jsp
==============
<%@ page import="java.sql.*" %>
<html>
<body>
<form method="GET" action="SelectTechnology"/>
<%
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://niting:1433;databaseName=Technology","sa","sa");
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select techname from table1");
%>
<select name="technology">
<%
while(rs.next())
{
out.print("<option>"+rs.getString("techname")+"</option>");
}
%>
</select>
<br>
<br>
<form method="GET" action="SelectTechnology">
Enter name of Technology <input type="textbox" name="t1"><br><br>
<input type="submit" value="submit">
<br> <br>
</form>
Enter name to be deleted <input type="textbox" name="t2"><br><br>
<input type="submit" value="submit">
<br> <br>
</body>
</html>
=============
ApplicationServlet.java
==================
import javax.servlet.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.sql.*;
public class ApplicationServlet extends HttpServlet{
Connection conn;
public void doGet(HttpServletRequest req,HttpServletResponse res) throws
ServletException,IOException{
int flag=0;
Statement stmt;
ResultSet rs;
List li=new ArrayList();
res.setContentType("text/html");
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://niting:1433;databaseName=Technology"
,"sa","sa");
stmt=conn.createStatement();
rs=stmt.executeQuery("select techname from table1");
while(rs.next())
{
li.add(rs.getString("techname"));
}
Search se=new Search();
flag=se.find(li,req.getParameter("t1").toUpperCase());
if(flag==1)
{
stmt.execute("insert into table1 (techname) values('"+req.getParameter("t1").toUpperCase()+"')");
li.add(req.getParameter("t1").toUpperCase());
req.setAttribute("technology",li);
RequestDispatcher view=req.getRequestDispatcher("index.jsp");
view.forward(req,res);
}
else
{
flag=0;
RequestDispatcher errview=req.getRequestDispatcher("errview.jsp");
errview.forward(req,res);
}
conn.close();
stmt.close();
rs.close();
}//end try
catch(Exception e){System.out.println(e);}
} //end doPost
}//end class
=================
Search.java (class used to search the database for duplicate entries
=====================
class Search{
public int find(List li,
String s){
int flag=0;
Collator c=Collator.getInstance();
Iterator it=li.iterator();
while(it.hasNext())
{
if(c.compare(s,it.next())==0)
{ flag=0; }
else {flag=1; }
}
return(flag);
} //end find
} //end search
Could any one help me find a better solution with code example that I can use to implement the cascaded drop down menus which use database?