Professional Documents
Culture Documents
130410107114
Web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-
app_2_5.xsd">
<servlet>
<servlet-name>validate</servlet-name>
<servlet-class>validate</servlet-class>
</servlet>
<servlet>
<servlet-name>student</servlet-name>
<servlet-class>student</servlet-class>
</servlet>
<servlet>
<servlet-name>createAcc</servlet-name>
<servlet-class>createAcc</servlet-class>
</servlet>
<servlet>
<servlet-name>teacher1</servlet-name>
<servlet-class>teacher1</servlet-class>
</servlet>
<servlet>
<servlet-name>teacher</servlet-name>
<servlet-class>teacher</servlet-class>
</servlet>
<servlet>
<servlet-name>student1</servlet-name>
<servlet-class>student1</servlet-class>
</servlet>
1
Sunny Shah
130410107114
<servlet>
<servlet-name>teacher2</servlet-name>
<servlet-class>teacher2</servlet-class>
</servlet>
<servlet>
<servlet-name>student2</servlet-name>
<servlet-class>student2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>validate</servlet-name>
<url-pattern>/validate</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>student</servlet-name>
<url-pattern>/student</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>createAcc</servlet-name>
<url-pattern>/createAcc</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>teacher1</servlet-name>
<url-pattern>/teacher1</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>teacher</servlet-name>
<url-pattern>/teacher</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>student1</servlet-name>
<url-pattern>/student1</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>teacher2</servlet-name>
<url-pattern>/teacher2</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>student2</servlet-name>
<url-pattern>/student2</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
2
Sunny Shah
130410107114
30
</session-timeout>
</session-config>
<multipart-config>
<location>c:\apache-tomcat-5.5.29\webapps\data\</location>
<max-file-size>20848820</max-file-size>
<max-request-size>418018841</max-request-size>
<file-size-threshold>1048576</file-size-threshold>
</multipart-config>
<welcome-file-list>
<welcome-file>FirstPage.html</welcome-file>
</welcome-file-list>
</web-app>
firstPage.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900"
rel="stylesheet" />
<link href="default.css" rel="stylesheet" type="text/css" media="all" />
<link href="fonts.css" rel="stylesheet" type="text/css" media="all" />
</head>
<body>
<div id="header-wrapper">
<div id="header" class="container">
<div id="logo">
<h1><a href="#">Student/Teacher Login</a></h1>
</div>
</div>
3
Sunny Shah
130410107114
</div>
<div id="page" class="container">
<div id="content">
<div class="title">
<h2>Sign Up</h2>
</div>
<form action="createAcc" method="POST">
<p> Name: <input type="text" name="username"/></p>
<p> Password: <input type="password" name="password"/></p>
<p> Confirm Password: <input type="password" name="password1"/></p>
<p><input type="radio" value="Student" name="login"> Student </p>
<p><input type="radio" value="Teacher" name="login"> Teacher </p>
<p><input type="submit" value="Sign Up"/></p>
</form>
</div>
<div id="sidebar">
<div class="box1">
<div class="title">
<h2>Sign In</h2>
</div>
<form action="validate" method="POST">
<p> Name: <input type="text" name="username"/></p>
<p> Password: <input type="password" name="password"/></p>
<p><input type="radio" value="Student" name="login"> Student </p>
<p><input type="radio" value="Teacher" name="login"> Teacher </p>
<p><input type="submit" value="Log In"/></p>
</form>
</div>
</div>
</div>
</body>
</html>
3)Student.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
4
Sunny Shah
130410107114
</head>
<body>
<div id="header-wrapper">
<div id="header" class="container">
<div id="logo">
<h1><a href="#">Student Profile</a></h1>
</div>
</div>
</div>
<div id="page" class="container">
<div id="content">
<div class="title">
<h2>Submission</h2>
</div>
<form action="student" method="POST" enctype="multipart/form-data">
<p> Upload a file for submission : </p>
<p> Assignment Name : <input type="text" name="nof"></input></p>
<p><input type="file" name="file1"></input></p>
<p><input type="submit" value="Submit"></input></p>
</form>
</div>
<div id="sidebar">
<div class="box1">
<div class="title">
<h2>Profile</h2>
</div>
<ul class="style1">
<li><a href="student2">Submission</a></li>
<li><a href="student1">Assignments</a></li>
</ul>
</div>
5
Sunny Shah
130410107114
</div>
</div>
</body>
</html>
3)student1.html
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div>TODO write content</div>
</body>
</html>
4)Teacher.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta name="keywords" content="" />
<meta name="description" content="" />
6
Sunny Shah
130410107114
<link href="http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900"
rel="stylesheet" />
<link href="default1.css" rel="stylesheet" type="text/css" media="all" />
<link href="fonts.css" rel="stylesheet" type="text/css" media="all" />
</head>
<body>
<div id="header-wrapper">
<div id="header" class="container">
<div id="logo">
<h1><a href="#">Teacher Profile</a></h1>
</div>
</div>
</div>
<div id="page" class="container">
<div id="content">
<div class="title">
<h2>Assignments</h2>
</div>
<form action="teacher" method="POST" enctype="multipart/form-data">
<p> Upload new assignment : </p>
<p> Assignment Name : <input type="text" name="nof"></input></p>
<p><input type="file" name="file1"></input></p>
<p><input type="submit" value="Submit"></input></p>
</form>
</div>
<div id="sidebar">
<div class="box1">
<div class="title">
<h2>Profile</h2>
</div>
<ul class="style1">
7
Sunny Shah
130410107114
</body>
</html>
5)Teacher1.html
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div>TODO write content</div>
</body>
</html>
6)createAcc.java
import java.io.*;
import java.sql.*;
import javax.servlet.http.*;
import javax.servlet.*;
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student", "root",
"root");
8
Sunny Shah
130410107114
}
String sql = "INSERT INTO check1(Name,Password,Type) values (?, ?, ?)";
PreparedStatement statement = con.prepareStatement(sql);
statement.setString(1, username);
statement.setString(2, password);
statement.setString(3, type);
statement.executeUpdate();
out.println("<h2>Account Successfully Created! Please log in.<h2>");
RequestDispatcher rd = request.getRequestDispatcher("FirstPage.html");
rd.include(request, response);
statement.close();
con.close();
}
catch(Exception e)
{
System.out.println(e);
}
finally {
out.close();
}
}
}
6)student.java
import java.sql.*;
import java.io.*;
import java.io.PrintWriter;
import java.sql.DriverManager;
9
Sunny Shah
130410107114
import java.util.logging.Logger;
import javax.servlet.*;
import javax.servlet.annotation.*;
import javax.servlet.http.*;
@MultipartConfig
public class student extends HttpServlet {
}
catch(Exception e)
{
System.out.println(e);
}
10
Sunny Shah
130410107114
finally {
out.close();
}
}
}
7)student1.java
import java.io.*;
import java.io.PrintWriter;
import java.sql.*;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
out.println("<!DOCTYPE html>");
out.println("<html xmlns=\"http://www.w3.org/1999/xhtml\">\n" +
"<head>\n" +
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n" +
11
Sunny Shah
130410107114
"<link href=\"http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900\"
rel=\"stylesheet\" />\n" +
"<link href=\"default1.css\" rel=\"stylesheet\" type=\"text/css\" media=\"all\" />\n" +
"</head>\n" +
"<body>");
out.println("<div id=\"header-wrapper\">\n" +
" <div id=\"header\" class=\"container\">\n" +
" <div id=\"logo\">\n" +
" <h1><a href=\"#\">Student Profile</a></h1>\n" +
" </div>\n" +
" \n" +
" </div>\n" +
"</div>");
out.println("<div id=\"page\" class=\"container\">\n" +
" <div id=\"content\">\n" +
" <div class=\"title\">\n" +
" <h2>Assignments</h2>\n" +
" </div>");
int i=0;
while(rs.next())
{
i++;
out.println("<p>Name : "+rs.getString(1));
out.println("<p>File Name : "+rs.getString(2));
out.println("<p>File type : " +rs.getBlob(3));
out.println("<p>File stored at location. <br><br>");
File txt = new File("D:\\student\\file"+i+".txt");
FileOutputStream fos = new FileOutputStream(txt);
12
Sunny Shah
130410107114
}
catch(Exception e){
System.out.println(e);
}
finally {
out.close();
}
}
/**
* Handles the HTTP <code>POST</code> method.
*
* @param request servlet request
* @param response servlet response
13
Sunny Shah
130410107114
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
8)student2.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;
import javax.servlet.http.*;
14
Sunny Shah
130410107114
}
}
/**
* 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>}
15
Sunny Shah
130410107114
9)teacher.java
import java.sql.*;
import java.io.*;
import java.io.PrintWriter;
import java.sql.DriverManager;
import javax.servlet.*;
import javax.servlet.annotation.*;
import javax.servlet.http.*;
@MultipartConfig
public class teacher extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student", "root",
"root");
ServletContext sc1 = request.getServletContext();
String name = (String)sc1.getAttribute("username");
String nof = request.getParameter("nof");
Part filePart = request.getPart("file1");
InputStream inputStream = filePart.getInputStream();
String sql = "INSERT INTO filet(Name,Filename,File) values (?, ?, ?)";
PreparedStatement statement = con.prepareStatement(sql);
statement.setString(1, name);
statement.setString(2, nof);
if (inputStream != null) {
statement.setBlob(3, inputStream);
} else {
statement.setNull(3, java.sql.Types.BLOB);
}
statement.executeUpdate();
out.println("<h3>"+name+ " logged in. File Uploaded.<h3>");
RequestDispatcher rd = request.getRequestDispatcher("teacher.html");
rd.include(request, response);
16
Sunny Shah
130410107114
statement.close();
con.close();
}
catch(Exception e)
{
System.out.println(e);
}
finally {
out.close();
}
}
}
10)teacher1.java
import java.io.*;
import java.io.PrintWriter;
import java.sql.*;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
17
Sunny Shah
130410107114
out.println("<!DOCTYPE html>");
out.println("<html xmlns=\"http://www.w3.org/1999/xhtml\">\n" +
"<head>\n" +
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n" +
"<link href=\"http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900\"
rel=\"stylesheet\" />\n" +
"<link href=\"default1.css\" rel=\"stylesheet\" type=\"text/css\" media=\"all\" />\n" +
"</head>\n" +
"<body>");
out.println("<div id=\"header-wrapper\">\n" +
" <div id=\"header\" class=\"container\">\n" +
" <div id=\"logo\">\n" +
" <h1><a href=\"#\">Teacher Profile</a></h1>\n" +
" </div>\n" +
" \n" +
" </div>\n" +
"</div>");
out.println("<div id=\"page\" class=\"container\">\n" +
" <div id=\"content\">\n" +
" <div class=\"title\">\n" +
" <h2>Students' submission</h2>\n" +
" </div>");
int i=0;
while(rs.next())
{
i++;
out.println("<p>Name : "+rs.getString(1));
out.println("<p>File Name : "+rs.getString(2));
out.println("<p>File type : " +rs.getBlob(3));
out.println("<p>File stored at location. <br><br>");
File txt = new File("D:\\teacher\\file"+i+".txt");
FileOutputStream fos = new FileOutputStream(txt);
18
Sunny Shah
130410107114
out.println("</div>\n" +
" <div id=\"sidebar\">\n" +
" <div class=\"box1\">\n" +
" <div class=\"title\">\n" +
" <h2>Username</h2>\n" +
" </div>\n" +
" <ul class=\"style1\">\n" +
" \n" +
" <li><a href=\"teacher1\">Students' Submission</a></li>\n" +
" <li><a href=\"teacher2\">Assignments</a></li>\n" +
" </ul>\n" +
" </div>\n" +
" </div>\n" +
"</div>\n" +
"</body>\n" +
"</html>");
}
catch(Exception e){
System.out.println(e);
}
finally {
out.close();
}
}
19
Sunny Shah
130410107114
/**
* 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>
}
11)teacher2.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;
import javax.servlet.http.*;
20
Sunny Shah
130410107114
ServletContext sc = request.getServletContext();
String username = (String)sc.getAttribute("username");
out.println(username + " logged in.");
RequestDispatcher rd = request.getRequestDispatcher("teacher.html");
rd.include(request, response);
} 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.
21
Sunny Shah
130410107114
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
12)validate.java
import java.io.*;
import java.sql.*;
import java.sql.DriverManager;
import javax.servlet.http.*;
import javax.servlet.*;
public class validate extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
String username = request.getParameter("username");
String password = request.getParameter("password");
String pt = request.getParameter("login");
ServletContext sc = request.getServletContext();
sc.setAttribute("name", username);
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/student", "root",
"root");
String sql = "select * from check1";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt = con.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
int flag=0;
while(rs.next())
{
if(username.equals(rs.getString(1)))
{
22
Sunny Shah
130410107114
if(password.equals(rs.getString(2)))
{
if(pt.equals(rs.getString(3)))
{ flag = 1;
}
}
}
}
if(flag == 0)
{
out.println("Incorrect username, password or account type.");
RequestDispatcher rd = request.getRequestDispatcher("FirstPage.html");
rd.include(request, response);
}
else if(pt.equals("Student"))
{
out.println(username+" logged in.");
RequestDispatcher rd = request.getRequestDispatcher("student.html");
rd.include(request, response);
}
else
{
out.println(username+" logged in.");
RequestDispatcher rd = request.getRequestDispatcher("teacher.html");
rd.include(request, response);
}
ServletContext sc1 = request.getServletContext();
sc1.setAttribute("username", username);
sc1.setAttribute("password", password);
}
catch(Exception e){
System.out.println(e);
}
finally {
out.close();
}
}
}
23
Sunny Shah
130410107114
Output:
24
Sunny Shah
130410107114
25
Sunny Shah
130410107114
26
Sunny Shah
130410107114
27
Sunny Shah
130410107114
28
Sunny Shah
130410107114
29
Sunny Shah
130410107114
30
Sunny Shah
130410107114
31