Vansh Internship Report
Vansh Internship Report
Vansh Internship Report
NAGPUR
INTERNSHIP REPORT
SESSION 2023-2024
During my internship in IT-NetworkZ Infosystems Pvt. Ltd and preparation of this report I
realized that it is the joint venture guidance, assistance and co-operation. So, it would have not
been completed without and declaration and help received. It is matter of great privileges to
express my deep sense of gratitude towards my guide Mr. Rajiv Verma at IT-NetworkZ
Infosystems Pvt. Ltd Nagpur. For having this guidance, I am extremely thankful to him for
constant motivation and inspiration extended throughout during internship work which has made
me possible to complete the work in scheduled time. My sincere thanks to all the faculties.
Submitted By:
Vansh D. Boratkar
I have taken efforts in the project. However, it would not have been possible
without the kind and help of support and help of many individual and organizations
would like to extend my sincere thanks to all of them.
I would like to give my special gratitude and thanks to industry persons for
giving me such attention and time.
Topics Page
Chapter 5: SERVLETS 16
INTRODUCTION
SERVICE CATEGORIES:
IT Network has very strong bonding with educational institutions and hence
established around 28- MoU's with esteemed Institutions which comes under
MSBTE, UGC and AICTE, these MoU are done for students & faculty
development. Technical team members GENwork have fine experience and
keen interest in teaching Company has trained around 4000+ candidates
under its banner and usually 7200+ students attend IT- NetworkZ Tech
sessions every year. IT NetworkZ is an Ex-authorized Prometric and
Pearson VUE test centre for International IT Exams. Currently, it is
authorized by "Kryterion Testing Network for reputed Sales Force and other
IT international exams; IT giant "Persistent Systems Ltd had taken an
initiative with company to start this facility for needy candidates.
3) Software Development:
AWARDS:
1) Awarded in TOP TEN Prometric Test Centres in the world; out of 5600+ Centre's for
theyear2013-14.
2) Microsoft Network Partner
3) 700-Tech Session Delivered to 20,000-Students
PRODUCTS:
Virtualization Cloud
CCNA
Linux
Hardware
Security
Chapter 1
IT-NETWORKZ INFOSYSTEMS PVT.LTD 7|Page
WHAT IS WEB APPPLICATION
Accessibility
Web apps can be accessed from all web browsers and across various personal and business
devices. Teams in different locations can access shared documents, content management systems,
and other business services through subscription-based web applications.
Efficient development
As detailed, the development process for web apps is relatively simple and cost-effective for
businesses. Small teams can achieve short development cycles, making web applications an
efficient and affordable method of building computer programs. In addition, because the same
version works across all modern browsers and devices, you won't have to create several different
iterations for multiple platforms.
User simplicity
Web apps don't require users to download them, making them easy to access
while eliminating the need for end-user maintenance and hard drive capacity. Web
applications automatically receive software and security updates, meaning they
are always up to date and less at risk of security breaches.
Scalability
Businesses using web apps can add users as and when they need, without additional infrastructure
or costly hardware. In addition, the vast majority of web application data is stored in the cloud,
meaning your business won't have to invest in additional storage capacity to run web apps.
Client-side architecture
The client-side script deals with user interface functionality like buttons and drop-down boxes.
When the end user clicks on the web app link, the web browser loads the client-side script and
renders the graphic elements and text for user interaction. For example, the user can read content,
watch videos, or fill out details on a contact form. Actions like clicking the submit button go to the
server as a client request.
Server-side architecture
The server-side script deals with data processing. The web application server processes the client
requests and sends back a response. The requests are usually for more data or to edit or save new
data. For example, if the user clicks on the Read More button, the web application server will send
content back to the user. If the user clicks the Submit button, the application server will save the
user data in the database. In some cases, the server completes the data request and sends the
complete HTML page back to the client. This is called server side rendering.
Chapter 2
INTRODUCTION TO DYNAMIC WEB APPPLICATION
The dynamic nature of these applications allows for a wide range of functionalities, such as user
registration and login systems, online shopping carts, discussion forums, content management
systems, social media platforms, and much more. They enable users to interact with the
application, submit forms, receive personalized recommendations, and access real-time
information.
Dynamic web applications are typically built using a combination of front-end and back-end
technologies. The front-end, also known as the client-side, is responsible for the user interface and
handling user interactions. This includes HTML, CSS, and JavaScript, which are used to structure
and style the web pages and implement interactive features.
On the other hand, the back end, or server-side, is responsible for processing user requests,
querying databases, performing calculations, and generating dynamic content. It involves server-
side programming languages like Python, Ruby, PHP, or Java, as well as frameworks and libraries
that streamline development tasks.
To create dynamic web applications, developers often utilize databases to store and retrieve data.
These databases can be relational (such as MySQL or PostgreSQL) or NoSQL (like MongoDB or
Redis), depending on the application's requirements.
Furthermore, dynamic web applications often employ the use of APIs (Application Programming
Interfaces) to integrate with external services, retrieve data from other applications, or expose their
own functionality to be consumed by other developers.
Overall, dynamic web applications offer a more interactive and personalized user experience by
generating content dynamically, processing user input, and utilizing databases and external
services. They have revolutionized the way we interact with websites, enabling a wide range of
functionalities and enhancing the overall usability and engagement for users.
1. E-commerce Websites: Online marketplaces like Amazon, eBay, and Shopify are dynamic
web applications that enable users to browse and purchase products, add items to shopping
carts, make secure payments, track orders, and receive personalized recommendations
based on their browsing and purchasing history.
2. Content Management Systems (CMS): CMS platforms like WordPress, Joomla, and Drupal
are dynamic web applications that provide a user-friendly interface for managing and
publishing content on websites. They allow users to create, edit, and organize web pages,
blog posts, images, and other media elements.
3. Online Banking Systems: Banking websites and applications provide dynamic features
such as account balance inquiries, fund transfers, bill payments, transaction histories, and
online loan applications. These applications interact with backend banking systems to
retrieve and update account information in real time.
4. Online Learning Platforms: Platforms like Udemy, Coursera, and Khan Academy are
dynamic web applications that offer online courses, quizzes, assessments, and interactive
learning materials. They track student progress, provide personalized recommendations,
and facilitate communication between students and instructors.
5. Travel and Booking Websites: Dynamic web applications like Expedia, Airbnb, and
Booking.com allow users to search and book flights, hotels, vacation rentals, and car
rentals. These applications integrate with multiple travel APIs to fetch real-time
availability, pricing, and booking information.
6. Real-Time Collaboration Tools: Applications such as Google Docs, Trello, and Slack
enable users to collaborate in real time on documents, projects, and team communication.
Multiple users can edit documents simultaneously, track changes, assign tasks, and
exchange messages in a dynamic and interactive environment.
7. Online Food Delivery Platforms: Services like Uber Eats, Grubhub, and Deliveroo are
dynamic web applications that enable users to browse restaurants, view menus, place
orders, track deliveries, and provide ratings and reviews.
Chapter 4
DATABASE AND MY SQL
DATABASE:
A database is a structured collection of data that is organized and managed to facilitate efficient
storage, retrieval, and manipulation of information. Databases are widely used in web applications
to store and manage large amounts of data, such as user information, product details, or any other
data relevant to the application. Databases are used in various domains, including web
applications, business systems, scientific research, and more. They provide a way to store and
organize data in a structured manner, ensuring data integrity and consistency.
My SQL:
MySQL is one of the most popular relational database management systems (RDBMS) used for
web applications. It provides a robust and scalable solution for storing and retrieving data. SQL
(Structured Query Language) is a programming language used to communicate with and
manipulate databases.
Chapter 5
SERVLETS
Servlets are Java-based components that run on a web server and dynamically generate web
content. They are an integral part of Java Enterprise Edition (Java EE) and provide a powerful way
to handle HTTP requests, process data, and generate responses.
Step 1:
Go to C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin and double click
on tomcat6
OR
Step 2:
Open your Browser (e.g. MS Internet Explorer) and type the following URL:
OR
Open your Browser (e.g. MS Internet Explorer) and type the following URL:
In either case, you should get a page similar to the one in Figure-8 which signifies that
the Tomcat Server is successfully running on your machine.
Note: Instead of creating the web.xml file an easy way would be to copy an existing web.xml file
(e.g., C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\examples\WEB-INF)
and paste it into this folder. You can later edit this file and add relevant information to your web
application.
Note : The servlet-name need not be the same as that of the class name. You can give a different
name (or alias) to the actual servlet. This is one of the main reasons as why this tag is used for.
Next, include the URL pattern using the <servlet-mapping> </servlet-mapping> tag. The URL
pattern defines as how a user can access the servlet from the browser. Figure 5.6 shows the URL
pattern entry for our current servlet.
After ensuring that the web server is running successfully, you can run your servlet. To do this,
open your web browser and enter the url as specified in the web.xml file. The complete url that
needs to be entered in the browser is:
http://localhost/demo-examples/servlet_lifecycle
MVC:
A software design pattern called Model-View-Controller (MVC) divides an application into three
interdependent parts: the model, the view, and the controller.
Each of these parts oversees a particular aspect of the functionality of the application. The model is
a representation of the application's data.
It is in charge of validating and transforming data, as well as storing and retrieving it. The view
oversees showing the user the data.
It uses the controller to deliver data to it rather than directly interacting with the model. The
controller oversees gathering user input and adjusting the model as necessary.
Additionally, it updates the view by passing data from the model to the view. The MVC design has
several benefits.
This makes it simpler to comprehend, create, and maintain the program. Testability: The MVC
architecture makes it simple to test each individual component of the application separately.
This is so because each component has a distinct job to accomplish and doesn't directly
communicate with the others. Scalability: Increasing the number of controllers or views in the
MVC architecture is a simple way to scale it.
This is so that they are not directly dependent on one another and are loosely coupled in the MVC
design. MVC is a well-liked software design pattern that is applied to numerous applications,
including desktop, mobile, and web-based ones. It is a tried-and-true pattern that has been
successful in several situations.
The MVC model is a popular design pattern for web development because it
provides several benefits, including:
i. Separation of concerns: The MVC model separates the different aspects of an
application into different components. This makes the application easier to
understand, maintain, and test.
ii. ii. Flexibility: The MVC model is flexible and can be adapted to different types
of applications.
iii. iii. Scalability: The MVC model is scalable and can be easily extended to handle
larger applications.
Chapter 7
APPLICATION DESIGNING USING MVC
• Create the necessary data entities (model classes) to represent the data in your application's
database schema (if applicable).
• Create the model classes and methods for interacting with the database or other data sources.
• To define the user interface, create the view components (JSP files or templates).
• Implement the controller components (servlets or managed beans) to handle user requests and
conduct actions like as updating the model and retrieving data for the view.
• Define the routing or mapping rules that will be used to route URLs to the relevant controller
components.
• Connect the components by connecting the view and controller to the model, typically via
method invocations or data bindings.
• Check your web application to confirm that the model, view, and controller are all functioning
properly.
1. Model = Here, “getters” and “setters” are designed in this class, so that value from
html input can be interchanged between all the scripted pages.
2. View = JSP (Java Servlet Pages) are created which are same as web pages which
are used to access (and sometimes perform CRUD processes on them)
3. Controller = Servlets contain objects of Model and View class and also objects of
some other packages too which help finalize the web application’s working process.
a. Create a html page with file name as the action that you want to do using it. In our case we are
going to name it as ‘Delete.jsp’.
b. Into the body tag, add input in form of text and name the object that is going to take the entered
value. In our case we named it as ‘name=”fname”’.
c. Add a button so that it will trigger the input action and pass the value from html to its
‘Controller’ class.
In Java web development, the View class is an integral part of the Model-View-Controller (MVC)
architectural pattern. It represents the user interface components and is responsible for presenting
data to the user and capturing user input.
The View class primarily focuses on the presentation layer, providing a visual representation of the
underlying data. It communicates with the Model to retrieve data and update it when necessary.
The View class is typically implemented using technologies such as JavaServer Pages (JSP),
JavaServer Faces (JSF), or Thymeleaf.
When designing views using HTML and JSP (JavaServer Pages) pages, you can
follow the following guidelines to create dynamic and interactive user
interfaces:
1. HTML Structure:
Begin by defining the basic HTML structure of your page using the <html>,
<head>, and <body> tags.
Include necessary CSS and JavaScript files by using the <link> and <script> tags
within the <head> section.
2. Static Content:
Use HTML markup to create the static content of your view, such as headings,
paragraphs, lists, images, and buttons.
Structure your content using appropriate HTML elements like <div>, <section>,
and <ul>.
3. Dynamic Content with JSP:
Chapter 9
CONTROLLER DESIGNING USING SERVLETS
In ‘doGet()’ method there, add a String variable for the value that above created JSP will return.
Using method ‘request.getParameter()’, assign the JSP returning value to the crested variable.
Now, using the ‘setter’ method, set the variable value to respective variable of model class.
When designing the controller layer using Servlets, you can follow these steps to
handle user requests, perform business logic, and coordinate the flow of data
between the model and the view:
1. Identify the Controller Responsibilities:
Determine the responsibilities of the controller, such as handling incoming requests,
processing data, invoking business logic, and directing the flow of control.
Define the actions or operations that the controller needs to perform based on user
interactions.
2. Map URLs to Servlets:
Configure the servlet mapping in the deployment descriptor (web.xml) or using
annotations.
Associate specific URLs or URL patterns with corresponding servlet classes.
3. Extend HttpServlet:
Create a Java class for each servlet by extending the HttpServlet class.
Override the appropriate methods, such as doGet(), doPost(), or doPut(), to handle
specific HTTP requests.
4. Handle Request Parameters:
Extract data submitted by the user from the request object.
Retrieve request parameters using methods like getParameter(),
getParameterValues(), or getInputStream() depending on the request type.
In Java web development, a data manager class is a component that facilitates the management and
manipulation of data within a web application. It typically acts as an intermediary between the
application's business logic and the underlying data source, such as a database.
The primary responsibility of a data manager class is to handle data retrieval, storage, and
modification operations. It provides methods and functionality to interact with the data source,
allowing the application to perform CRUD (Create, Read, Update, Delete) operations on data
entities.
To handle CRUD (Create, Read, Update, Delete) operations using JDBC (Java
Database Connectivity), you can create a DataManager class that encapsulates
the database-related functionality.
Here's a brief description of the steps involved in creating a DataManager class:
https://www.javatpoint.com/mvc-architecture-in-java
https://phoenixnap.com/kb/install-tomcat-windows
https://www.geeksforgeeks.org/introduction-to-jsp/
https://www.javatpoint.com/what-is-database
https://www.oracle.com/in/database/what-is-database/
https://www.geeksforgeeks.org/mvc-design-pattern/
https://www.simplilearn.com/tutorials/html-tutorial/html-tag