Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Login form in servlet
- 1. Servlet Login
- Database
- create table userreg(name varchar2(40),pass varchar2(40));
- index.html
- <form action="servlet1" method="post">
- Name:<input type="text" name="username"/><br/><br/>
- Password:<input type="password" name="userpass"/><br/><br/>
- <input type="submit" value="login"/>
- </form>
- FirstServlet.java
- import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.RequestDispatcher;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class FirstServlet extends HttpServlet {
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html");
- PrintWriter out = response.getWriter();
- String n=request.getParameter("username");
- String p=request.getParameter("userpass");
- if(LoginDao.validate(n, p)){
- RequestDispatcher rd=request.getRequestDispatcher("servlet2");
- rd.forward(request,response);
- }
- else{
- out.print("Sorry username or password error");
- RequestDispatcher rd=request.getRequestDispatcher("index.html");
- rd.include(request,response);
- }
- out.close();
- }
- }
- LoginDao.java
- import java.sql.*;
- public class LoginDao {
- public static boolean validate(String name,String pass){
- boolean status=false;
- try{
- Class.forName("oracle.jdbc.driver.OracleDriver");
- Connection con=DriverManager.getConnection(
- "jdbc:oracle:thin:@localhost:1521:xe","system","oracle");
- PreparedStatement ps=con.prepareStatement(
- "select * from userreg where name=? and pass=?");
- ps.setString(1,name);
- ps.setString(2,pass);
- ResultSet rs=ps.executeQuery();
- status=rs.next();
- }catch(Exception e){System.out.println(e);}
- return status;
- }
- }
- WelcomeServlet.java
- import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class WelcomeServlet extends HttpServlet {
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html");
- PrintWriter out = response.getWriter();
- String n=request.getParameter("username");
- out.print("Welcome "+n);
- out.close();
- }
- }
- 2. Servlet Login and Logout Example using Cookies
- Index.html
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="ISO-8859-1">
- <title>Servlet Login Example</title>
- </head>
- <body>
- <h1>Welcome to Login App by Cookie</h1>
- <a href="login.html">Login</a>|
- <a href="LogoutServlet">Logout</a>|
- <a href="ProfileServlet">Profile</a>
- </body>
- </html>
- link.html
- <a href="login.html">Login</a> |
- <a href="LogoutServlet">Logout</a> |
- <a href="ProfileServlet">Profile</a>
- <hr>
- login.html
- <form action="LoginServlet" method="post">
- Name:<input type="text" name="name"><br>
- Password:<input type="password" name="password"><br>
- <input type="submit" value="login">
- </form>
- LoginServlet.java
- import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.ServletException;
- import javax.servlet.http.Cookie;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class LoginServlet extends HttpServlet {
- protected void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html");
- PrintWriter out=response.getWriter();
- request.getRequestDispatcher("link.html").include(request, response);
- String name=request.getParameter("name");
- String password=request.getParameter("password");
- if(password.equals("admin123")){
- out.print("You are successfully logged in!");
- out.print("<br>Welcome, "+name);
- Cookie ck=new Cookie("name",name);
- response.addCookie(ck);
- }else{
- out.print("sorry, username or password error!");
- request.getRequestDispatcher("login.html").include(request, response);
- }
- out.close();
- }
- }
- LogoutServlet.java
- import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.ServletException;
- import javax.servlet.http.Cookie;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class LogoutServlet extends HttpServlet {
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html");
- PrintWriter out=response.getWriter();
- request.getRequestDispatcher("link.html").include(request, response);
- Cookie ck=new Cookie("name","");
- ck.setMaxAge(0);
- response.addCookie(ck);
- out.print("you are successfully logged out!");
- }
- }
- ProfileServlet.java
- import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.ServletException;
- import javax.servlet.http.Cookie;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class ProfileServlet extends HttpServlet {
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html");
- PrintWriter out=response.getWriter();
- request.getRequestDispatcher("link.html").include(request, response);
- Cookie ck[]=request.getCookies();
- if(ck!=null){
- String name=ck[0].getValue();
- if(!name.equals("")||name!=null){
- out.print("<b>Welcome to Profile</b>");
- out.print("<br>Welcome, "+name);
- }
- }else{
- out.print("Please login first");
- request.getRequestDispatcher("login.html").include(request, response);
- }
- out.close();
- }
- }
- web.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
- http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
- <servlet>
- <description></description>
- <display-name>LoginServlet</display-name>
- <servlet-name>LoginServlet</servlet-name>
- <servlet-class>com.javatpoint.LoginServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>LoginServlet</servlet-name>
- <url-pattern>/LoginServlet</url-pattern>
- </servlet-mapping>
- <servlet>
- <description></description>
- <display-name>ProfileServlet</display-name>
- <servlet-name>ProfileServlet</servlet-name>
- <servlet-class>com.javatpoint.ProfileServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>ProfileServlet</servlet-name>
- <url-pattern>/ProfileServlet</url-pattern>
- </servlet-mapping>
- <servlet>
- <description></description>
- <display-name>LogoutServlet</display-name>
- <servlet-name>LogoutServlet</servlet-name>
- <servlet-class>com.javatpoint.LogoutServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>LogoutServlet</servlet-name>
- <url-pattern>/LogoutServlet</url-pattern>
- </servlet-mapping>
- </web-app>
- 3. Student information forms using servlet
- Database
- CREATE TABLE "REGISTERUSER"
- ( "NAME" VARCHAR2(4000),
- "PASS" VARCHAR2(4000),
- "EMAIL" VARCHAR2(4000),
- "COUNTRY" VARCHAR2(4000)
- )
- register.html
- <html>
- <body>
- <form action="servlet/Register" method="post">
- Name:<input type="text" name="userName"/><br/><br/>
- Password:<input type="password" name="userPass"/><br/><br/>
- Email Id:<input type="text" name="userEmail"/><br/><br/>
- Country:
- <select name="userCountry">
- <option>India</option>
- <option>Pakistan</option>
- <option>other</option>
- </select>
- <br/><br/>
- <input type="submit" value="register"/>
- </form>
- </body>
- </html>
- Register.java
- import java.io.*;
- import java.sql.*;
- import javax.servlet.ServletException;
- import javax.servlet.http.*;
- public class Register extends HttpServlet {
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("text/html");
- PrintWriter out = response.getWriter();
- String n=request.getParameter("userName");
- String p=request.getParameter("userPass");
- String e=request.getParameter("userEmail");
- String c=request.getParameter("userCountry");
- try{
- Class.forName("oracle.jdbc.driver.OracleDriver");
- Connection con=DriverManager.getConnection(
- "jdbc:oracle:thin:@localhost:1521:xe","system","oracle");
- PreparedStatement ps=con.prepareStatement(
- "insert into registeruser values(?,?,?,?)");
- ps.setString(1,n);
- ps.setString(2,p);
- ps.setString(3,e);
- ps.setString(4,c);
- int i=ps.executeUpdate();
- if(i>0)
- out.print("You are successfully registered...");
- }catch (Exception e2) {System.out.println(e2);}
- out.close();
- }
- }
- web.xml
- <web-app>
- <servlet>
- <servlet-name>Register</servlet-name>
- <servlet-class>Register</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>Register</servlet-name>
- <url-pattern>/servlet/Register</url-pattern>
- </servlet-mapping>
- <welcome-file-list>
- <welcome-file>register.html</welcome-file>
- </welcome-file-list>
- </web-app>
- PHP Form Validation
- 1. Dynamic Page(Without connecting database)
- <!DOCTYPE HTML>
- <html>
- <head>
- </head>
- <body>
- <?php
- // define variables and set to empty values
- $name = $email = $gender = $comment = $website = "";
- if ($_SERVER["REQUEST_METHOD"] == "POST") {
- $name = test_input($_POST["name"]);
- $email = test_input($_POST["email"]);
- $website = test_input($_POST["website"]);
- $comment = test_input($_POST["comment"]);
- $gender = test_input($_POST["gender"]);
- }
- function test_input($data) {
- $data = trim($data);
- $data = stripslashes($data);
- $data = htmlspecialchars($data);
- return $data;
- }
- ?>
- <h2>PHP Form Validation Example</h2>
- <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
- Name: <input type="text" name="name">
- <br><br>
- E-mail: <input type="text" name="email">
- <br><br>
- Website: <input type="text" name="website">
- <br><br>
- Comment: <textarea name="comment" rows="5" cols="40"></textarea>
- <br><br>
- Gender:
- <input type="radio" name="gender" value="female">Female
- <input type="radio" name="gender" value="male">Male
- <br><br>
- <input type="submit" name="submit" value="Submit">
- </form>
- <?php
- echo "<h2>Your Input:</h2>";
- echo $name;
- echo "<br>";
- echo $email;
- echo "<br>";
- echo $website;
- echo "<br>";
- echo $comment;
- echo "<br>";
- echo $gender;
- ?>
- </body>
- </html>
- 2. Dynamic Page with required fields(Without connecting database)
- <!DOCTYPE HTML>
- <html>
- <head>
- <style>
- .error {color: #FF0000;}
- </style>
- </head>
- <body>
- <?php
- // define variables and set to empty values
- $nameErr = $emailErr = $genderErr = $websiteErr = "";
- $name = $email = $gender = $comment = $website = "";
- if ($_SERVER["REQUEST_METHOD"] == "POST") {
- if (empty($_POST["name"])) {
- $nameErr = "Name is required";
- } else {
- $name = test_input($_POST["name"]);
- }
- if (empty($_POST["email"])) {
- $emailErr = "Email is required";
- } else {
- $email = test_input($_POST["email"]);
- }
- if (empty($_POST["website"])) {
- $website = "";
- } else {
- $website = test_input($_POST["website"]);
- }
- if (empty($_POST["comment"])) {
- $comment = "";
- } else {
- $comment = test_input($_POST["comment"]);
- }
- if (empty($_POST["gender"])) {
- $genderErr = "Gender is required";
- } else {
- $gender = test_input($_POST["gender"]);
- }
- }
- function test_input($data) {
- $data = trim($data);
- $data = stripslashes($data);
- $data = htmlspecialchars($data);
- return $data;
- }
- ?>
- <h2>PHP Form Validation Example</h2>
- <p><span class="error">* required field.</span></p>
- <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
- Name: <input type="text" name="name">
- <span class="error">* <?php echo $nameErr;?></span>
- <br><br>
- E-mail: <input type="text" name="email">
- <span class="error">* <?php echo $emailErr;?></span>
- <br><br>
- Website: <input type="text" name="website">
- <span class="error"><?php echo $websiteErr;?></span>
- <br><br>
- Comment: <textarea name="comment" rows="5" cols="40"></textarea>
- <br><br>
- Gender:
- <input type="radio" name="gender" value="female">Female
- <input type="radio" name="gender" value="male">Male
- <span class="error">* <?php echo $genderErr;?></span>
- <br><br>
- <input type="submit" name="submit" value="Submit">
- </form>
- <?php
- echo "<h2>Your Input:</h2>";
- echo $name;
- echo "<br>";
- echo $email;
- echo "<br>";
- echo $website;
- echo "<br>";
- echo $comment;
- echo "<br>";
- echo $gender;
- ?>
- </body>
- </html>
- 3. Login form using Database
- Mysql
- 1. CREATE TABLE login(name varchar(30), password varchar(30), PRIMARY KEY(name));
- 2. INSERT INTO login VALUES('guru','guru');
- Login.php
- <html>
- <head>
- <style type="text/css">
- input{
- border:1px solid olive;
- border-radius:5px;
- }
- h1{
- color:darkgreen;
- font-size:22px;
- text-align:center;
- }
- </style>
- </head>
- <body>
- <h1>Login<h1>
- <form action='#' method='post'>
- <table cellspacing='5' align='center'>
- <tr><td>User name:</td><td><input type='text' name='name'/></td></tr>
- <tr><td>Password:</td><td><input type='password' name='pwd'/></td></tr>
- <tr><td></td><td><input type='submit' name='submit' value='Submit'/></td></tr>
- </table>
- </form>
- <?php
- session_start();
- if(isset($_POST['submit']))
- {
- mysql_connect('localhost','root','') or die(mysql_error());
- mysql_select_db('new') or die(mysql_error());
- $name=$_POST['name'];
- $pwd=$_POST['pwd'];
- if($name!=''&&$pwd!='')
- {
- $query=mysql_query("select * from login where name='".$name."' and password='".$pwd."'") or die(mysql_error());
- $res=mysql_fetch_row($query);
- if($res)
- {
- $_SESSION['name']=$name;
- header('location:welcome.php');
- }
- else
- {
- echo'You entered username or password is incorrect';
- }
- }
- else
- {
- echo'Enter both username and password';
- }
- }
- ?>
- </body>
- </html>
- Welcome.php
- <?php
- session_start();
- $name=$_SESSION['name'];
- echo'welcome :'. $name.'<br>';
- echo'<a href="signout.php">Signout</a>';
- ?>
- Signout.php
- <?php
- session_start();
- session_destroy();
- header('location:login.php');
- ?>
- JAVASCRIPT FORM VALIDATION:
- HTML:
- <!DOCTYPE html>
- <html lang="en"><head>
- <meta charset="utf-8">
- <title>JavaScript Form Validation using a sample registration form</title>
- <meta name="keywords" content="example, JavaScript Form Validation, Sample registration form" />
- <meta name="description" content="This document is an example of JavaScript Form Validation using a sample registration form. " />
- <link rel='stylesheet' href='js-form-validation.css' type='text/css' />
- <script src="sample-registration-form-validation.js"></script>
- </head>
- <body onLoad="document.registration.userid.focus();">
- <h1>Registration Form</h1>
- <p>Use tab keys to move from one input field to the next.</p>
- <form name='registration' onSubmit="return formValidation();">
- <ul>
- <li><label for="userid">User id:</label></li>
- <li><input type="text" name="userid" size="12" /></li>
- <li><label for="passid">Password:</label></li>
- <li><input type="password" name="passid" size="12" /></li>
- <li><label for="username">Name:</label></li>
- <li><input type="text" name="username" size="50" /></li>
- <li><label for="address">Address:</label></li>
- <li><input type="text" name="address" size="50" /></li>
- <li><label for="country">Country:</label></li>
- <li><select name="country">
- <option selected="" value="Default">(Please select a country)</option>
- <option value="AF">Australia</option>
- <option value="AL">Canada</option>
- <option value="DZ">India</option>
- <option value="AS">Russia</option>
- <option value="AD">USA</option>
- </select></li>
- <li><label for="zip">ZIP Code:</label></li>
- <li><input type="text" name="zip" /></li>
- <li><label for="email">Email:</label></li>
- <li><input type="text" name="email" size="50" /></li>
- <li><label id="gender">Sex:</label></li>
- <li><input type="radio" name="sex" value="Male" /><span>Male</span></li>
- <li><input type="radio" name="sex" value="Female" /><span>Female</span></li>
- <li><label>Language:</label></li>
- <li><input type="checkbox" name="en" value="en" checked /><span>English</span></li>
- <li><input type="checkbox" name="nonen" value="noen" /><span>Non English</span></li>
- <li><label for="desc">About:</label></li>
- <li><textarea name="desc" id="desc"></textarea></li>
- <li><input type="submit" name="submit" value="Submit" /></li>
- </ul>
- </form>
- </body>
- </html>
- CSS:
- h1 {
- margin-left: 70px;
- }
- form li {
- list-style: none;
- margin-bottom: 5px;
- }
- form ul li label{
- float: left;
- clear: left;
- width: 100px;
- text-align: right;
- margin-right: 10px;
- font-family:Verdana, Arial, Helvetica, sans-serif;
- font-size:14px;
- }
- form ul li input, select, span {
- float: left;
- margin-bottom: 10px;
- }
- form textarea {
- float: left;
- width: 350px;
- height: 150px;
- }
- [type="submit"] {
- clear: left;
- margin: 20px 0 0 230px;
- font-size:18px
- }
- p {
- margin-left: 70px;
- font-weight: bold;
- }
- JAVASCRIPT:
- function formValidation()
- {
- var uid = document.registration.userid;
- var passid = document.registration.passid;
- var uname = document.registration.username;
- var uadd = document.registration.address;
- var ucountry = document.registration.country;
- var uzip = document.registration.zip;
- var uemail = document.registration.email;
- var umsex = document.registration.msex;
- var ufsex = document.registration.fsex; if(userid_validation(uid,5,12))
- {
- if(passid_validation(passid,7,12))
- {
- if(allLetter(uname))
- {
- if(alphanumeric(uadd))
- {
- if(countryselect(ucountry))
- {
- if(allnumeric(uzip))
- {
- if(ValidateEmail(uemail))
- {
- if(validsex(umsex,ufsex))
- {
- }
- }
- }
- }
- }
- }
- }
- }
- return false;
- } function userid_validation(uid,mx,my)
- {
- var uid_len = uid.value.length;
- if (uid_len == 0 || uid_len >= my || uid_len < mx)
- {
- alert("User Id should not be empty / length be between "+mx+" to "+my);
- uid.focus();
- return false;
- }
- return true;
- }
- function passid_validation(passid,mx,my)
- {
- var passid_len = passid.value.length;
- if (passid_len == 0 ||passid_len >= my || passid_len < mx)
- {
- alert("Password should not be empty / length be between "+mx+" to "+my+" / between 7 and 12 characters with at least one uppercase, one lower case, one number and one special character");
- passid.focus();
- return false;
- }
- var decimal= /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\s).{8,15}$/;
- if(passid.value.match(decimal) == false)
- {
- return false;
- }
- return true;
- }
- function allLetter(uname)
- {
- var letters = /^[A-Za-z]+$/;
- if(uname.value.match(letters))
- {
- return true;
- }
- else
- {
- alert('Username must have alphabet characters only');
- uname.focus();
- return false;
- }
- }
- function alphanumeric(uadd)
- {
- var letters = /^[0-9a-zA-Z]+$/;
- if(uadd.value.match(letters))
- {
- return true;
- }
- else
- {
- alert('User address must have alphanumeric characters only');
- uadd.focus();
- return false;
- }
- }
- function countryselect(ucountry)
- {
- if(ucountry.value == "Default")
- {
- alert('Select your country from the list');
- ucountry.focus();
- return false;
- }
- else
- {
- return true;
- }
- }
- function allnumeric(uzip)
- {
- var numbers = /^[0-9]+$/;
- if(uzip.value.match(numbers))
- {
- return true;
- }
- else
- {
- alert('ZIP code must have numeric characters only');
- uzip.focus();
- return false;
- }
- }
- function ValidateEmail(uemail)
- {
- var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
- if(uemail.value.match(mailformat))
- {
- return true;
- }
- else
- {
- alert("You have entered an invalid email address!");
- return false;
- }
- } function validsex(umsex,ufsex)
- {
- x=0;
- if(umsex.checked)
- {
- x++;
- }
- if(ufsex.checked)
- {
- x++;
- }
- if (x==2)
- {
- alert('Both Male/Female are checked');
- ufsex.checked=false
- umsex.checked=false
- umsex.focus();
- return false;
- }
- if(x==0)
- {
- alert('Select Male/Female');
- umsex.focus();
- return false;
- }
- else
- {
- alert('Form Succesfully Submitted');
- window.location.reload()
- return true;
- }
- }
- PHP FILE UPLOAD:
- HTML:
- <!DOCTYPE html>
- <html>
- <body>
- <form action="upload.php" method="post" enctype="multipart/form-data">
- Select image to upload:
- <input type="file" name="fileToUpload" id="fileToUpload">
- <input type="submit" value="Upload Image" name="submit">
- </form>
- </body>
- </html>
- PHP:
- <?php
- $target_dir = "uploads/";
- $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
- $uploadOk = 1;
- $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
- // Check if image file is a actual image or fake image
- if(isset($_POST["submit"])) {
- $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
- if($check !== false) {
- echo "File is an image - " . $check["mime"] . ".";
- $uploadOk = 1;
- } else {
- echo "File is not an image.";
- $uploadOk = 0;
- }
- }
- // Check if file already exists
- if (file_exists($target_file)) {
- echo "Sorry, file already exists.";
- $uploadOk = 0;
- }
- // Check file size
- if ($_FILES["fileToUpload"]["size"] > 500000) {
- echo "Sorry, your file is too large.";
- $uploadOk = 0;
- }
- // Allow certain file formats
- if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
- && $imageFileType != "gif" ) {
- echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
- $uploadOk = 0;
- }
- // Check if $uploadOk is set to 0 by an error
- if ($uploadOk == 0) {
- echo "Sorry, your file was not uploaded.";
- // if everything is ok, try to upload file
- } else {
- if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
- echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
- } else {
- echo "Sorry, there was an error uploading your file.";
- }
- }
- ?>
- SERVLET FILE UPLOAD:
- HTML:
- <html>
- <head>
- <title>File Uploading Form</title>
- </head>
- <body>
- <h3>File Upload:</h3>
- Select a file to upload: <br />
- <form action = "UploadServlet" method = "post" enctype = "multipart/form-data">
- <input type = "file" name = "file" size = "50" />
- <br />
- <input type = "submit" value = "Upload File" />
- </form>
- </body>
- </html>
- UploadServlet:
- // Import required java libraries
- import java.io.*;
- import java.util.*;
- import javax.servlet.ServletConfig;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import org.apache.commons.fileupload.FileItem;
- import org.apache.commons.fileupload.FileUploadException;
- import org.apache.commons.fileupload.disk.DiskFileItemFactory;
- import org.apache.commons.fileupload.servlet.ServletFileUpload;
- import org.apache.commons.io.output.*;
- public class UploadServlet extends HttpServlet {
- private boolean isMultipart;
- private String filePath;
- private int maxFileSize = 50 * 1024;
- private int maxMemSize = 4 * 1024;
- private File file ;
- public void init( ){
- // Get the file location where it would be stored.
- filePath = getServletContext().getInitParameter("file-upload");
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, java.io.IOException {
- // Check that we have a file upload request
- isMultipart = ServletFileUpload.isMultipartContent(request);
- response.setContentType("text/html");
- java.io.PrintWriter out = response.getWriter( );
- if( !isMultipart ) {
- out.println("<html>");
- out.println("<head>");
- out.println("<title>Servlet upload</title>");
- out.println("</head>");
- out.println("<body>");
- out.println("<p>No file uploaded</p>");
- out.println("</body>");
- out.println("</html>");
- return;
- }
- DiskFileItemFactory factory = new DiskFileItemFactory();
- // maximum size that will be stored in memory
- factory.setSizeThreshold(maxMemSize);
- // Location to save data that is larger than maxMemSize.
- factory.setRepository(new File("c:\\temp"));
- // Create a new file upload handler
- ServletFileUpload upload = new ServletFileUpload(factory);
- // maximum file size to be uploaded.
- upload.setSizeMax( maxFileSize );
- try {
- // Parse the request to get file items.
- List fileItems = upload.parseRequest(request);
- // Process the uploaded file items
- Iterator i = fileItems.iterator();
- out.println("<html>");
- out.println("<head>");
- out.println("<title>Servlet upload</title>");
- out.println("</head>");
- out.println("<body>");
- while ( i.hasNext () ) {
- FileItem fi = (FileItem)i.next();
- if ( !fi.isFormField () ) {
- // Get the uploaded file parameters
- String fieldName = fi.getFieldName();
- String fileName = fi.getName();
- String contentType = fi.getContentType();
- boolean isInMemory = fi.isInMemory();
- long sizeInBytes = fi.getSize();
- // Write the file
- if( fileName.lastIndexOf("\\") >= 0 ) {
- file = new File( filePath + fileName.substring( fileName.lastIndexOf("\\"))) ;
- } else {
- file = new File( filePath + fileName.substring(fileName.lastIndexOf("\\")+1)) ;
- }
- fi.write( file ) ;
- out.println("Uploaded Filename: " + fileName + "<br>");
- }
- }
- out.println("</body>");
- out.println("</html>");
- } catch(Exception ex) {
- System.out.println(ex);
- }
- }
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, java.io.IOException {
- throw new ServletException("GET method used with " +
- getClass( ).getName( )+": POST method required.");
- }
- }
- }
- JAVASCRIPT FILE UPLOAD:
- <!DOCTYPE html>
- <html>
- <body onload="myFunction()">
- <input type="file" id="myFile" multiple size="50" onchange="myFunction()">
- <p id="demo"></p>
- <script>
- function myFunction(){
- var x = document.getElementById("myFile");
- var txt = "";
- if ('files' in x) {
- if (x.files.length == 0) {
- txt = "Select one or more files.";
- } else {
- for (var i = 0; i < x.files.length; i++) {
- txt += "<br><strong>" + (i+1) + ". file</strong><br>";
- var file = x.files[i];
- if ('name' in file) {
- txt += "name: " + file.name + "<br>";
- }
- if ('size' in file) {
- txt += "size: " + file.size + " bytes <br>";
- }
- }
- }
- }
- else {
- if (x.value == "") {
- txt += "Select one or more files.";
- } else {
- txt += "The files property is not supported by your browser!";
- txt += "<br>The path of the selected file: " + x.value; // If the browser does not support the files property, it will return the path of the selected file instead.
- }
- }
- document.getElementById ("demo").innerHTML = txt;
- }
- </script>
- <p><strong>Tip:</strong> Use the Control or the Shift key to select multiple files.</p>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement