
Set up your development environment to start building a jsp web app. Explore jsp scripting elements, read html form data with jsp, and manage cookies and sessions; source code available.
Explore how jsp and servlets power dynamic web apps by generating html on the fly from user input and database results, and see how they fit into java ee architectures.
Set up your development environment by installing the JDK, Tomcat server, and the Eclipse IDE, then follow high-level steps across dedicated installation videos.
Install and verify Tomcat 9 on Windows for Java EE JSP/Servlet apps, using the binary Windows service installer, configuring as a service, and confirming via localhost:8080.
Install Tomcat 9 on Mac, download from tomcat.apache.org, unzip the tar.gz, start the server with startup.sh, and verify by visiting localhost:8080.
Download Eclipse for Java EE developers from eclipse.org, unzip it, and move the folder to your jsf-for-beginners directory. Launch Eclipse, create a new workspace, and verify the Java EE version.
Connect Eclipse to Tomcat by starting Tomcat from Eclipse and deploying web applications directly to Tomcat, using the servers tab to add and configure the Tomcat server.
Build a hello world program with JSP, an HTML page with Java code that generates dynamic content on the server and returns HTML to the browser.
Explore JSP expressions, scriptlets, and declarations, and see how to embed Java expressions in HTML using <%=%>, <% ... %>, and <%!...%>, with strings, math, and boolean examples.
Use JSP scriptlets to embed Java in a JSP page with angle-bracket percent syntax and out.print, demonstrating a for loop that prints content dynamically while minimizing scriptlet code.
Declare and call a jsp declaration inside a jsp page using the declaration syntax. See a simple makeItLower example that converts text to lower case and displays it.
Refactor the JSP by moving business logic to a separate Java class (FunUtils) and call it from the JSP, reducing scriptlets; run on the server to see lowercase output.
Explore JSP built-in server objects such as request, response, out, session, and application. Learn to use the request object to read headers and language for dynamic pages.
Use jsp:include to insert header and footer across pages by including my-header.html and my-footer.jsp, then assemble homepage.jsp with these includes and a dynamic timestamp.
Learn to build an HTML form for first and last names, submit to student-response.jsp, and read data with JSP using request.getParameter or ${param.firstName} and ${param.lastName} to display a confirmation.
Build and submit an html form in eclipse, sending first name and last name to student-response.jsp via form action. Display a confirmation with the entered names using param.firstName and param.lastName.
Learn to build and integrate HTML dropdown lists with forms using the select tag and country options, then process and display the selected country in a JSP page.
Build HTML forms with radio buttons, then process and display the selected language using JSP, including an example form, radio inputs named favoriteLanguage, and a JSP confirmation page.
Use HTML check boxes to let users select multiple programming languages and submit to a JSP page, using request.getParameterValues, then display the selections as a list on the confirmation page.
Explore building a checkbox form in Eclipse, creating student-checkbox-form.html and student-checkbox-response.jsp, and display selected languages by looping over request.getParameterValues in a JSP scriptlet.
Discover how JSP sessions track user actions with a per-user session object. See a to-do list demo, using setattribute and getattribute, and learn how Tomcat stores IDs in memory.
Explore session tracking in JSP by building a to-do list app that tracks user actions, stores items in the session, reads form data, and displays items from an ArrayList.
Personalize sites by setting and reading cookies that remember user preferences, like language or travel details. Use the javax.servlet.http.Cookie API in JSP to create, set max age, and read cookies.
Learn how to personalize a JSP app using cookies, with a three-page demo that sets and reads a favorite language to tailor books, news, and jobs.
Create a cookie-based personalization flow in JSP: build a language preference form, set a cookie, and render a customized homepage showing language-specific content.
Explore jsp tags, including custom tags and the standard tag library (jstl), and learn how they reduce scriptlet code, enhance reuse, and simplify presentation in jsp pages.
Install the JSP Standard Tag Library (JSTL) by downloading the JSTL jars, placing the implementation and API in web-inf/lib, and testing a JSP using the core tag library and EL.
Explore JSTL core tags, with emphasis on forEach looping using c:forEach, alongside if, choose, import, and out. Learn taglib setup and attributes in scope.
Explore JSTL core tags by looping with forEach in a JSP demo, creating sample city data, setting it as a page context attribute, and rendering Mumbai, Singapore, and Philadelphia.
Learn to render an HTML table from a list of Student objects using JSTL core forEach in JSP, displaying firstName, lastName, and goldCustomer status.
Learn how JSTL core tag if performs a conditional test in JSP, displaying content when temp student is a gold customer and condition evaluates to true, and hiding it otherwise.
Use the JSTL choose tag to implement switch-like conditional rendering with when and c:otherwise, deciding between a gold customer discount and a default message.
Explore JSTL function tags with fn:length, fn:toUpperCase, and fn:startsWith, learning how to compute string and collection lengths and perform basic string manipulation in JSP.
Explore JSTL function tags for splitting and joining strings in a JSP app, turning a comma-separated string into an array and joining an array back into a string.
Explore jstl internationalization in jsp, using i18n, locales like en_US and en_GB, and labels and message bundles for language-specific content, dates, numbers, and currency formatting.
Build a multi-lingual jsp app using JSTL internationalization tags; create locale-specific properties files and dynamic placeholders, and switch languages via user-selected locale.
Create locale resource files in a JSP project, starting with a default mylabels.properties and adding es and de locales. Copy and translate label.greeting, label.firstname, label.lastname, and label.welcome.
Create a JSP page in the web content directory using JSTL formatting tags to pull labels from resource files. Reference keys like label.greeting, label.firstname, and label.welcome to show i18n messages.
Update a jsp page to switch locale via top links (en_US, es_ES, de_DE) using JSTL i18n bundles to display translated data and show the selected locale.
Build a simple Java servlet that generates HTML on the fly, processes requests, and returns content with doGet and PrintWriter, while handling form data, cookies, and sessions.
Create a hello world servlet in Eclipse, set up a dynamic web project, and generate HTML with doGet, a print writer, and the response, then run on Tomcat.
Explore the differences between servlets and JSP, how they complement each other in the MVC pattern, and when to use each to build Java web apps.
Learn to read html form data with servlets by building a student form, submitting via GET to a servlet's doGet method, and retrieving parameters with request.getParameter.
Create an html form that submits to a servlet via get. Read firstName and lastName with request.getParameter and return a dynamic html confirmation from StudentServlet.
Compare get and post form methods in jsp and servlets, noting that get appends data to the url. Post sends data in the body and suits large or sensitive data.
Learn how to configure a Java web app with servlet context parameters in web.xml, and read them in a servlet using ServletContext.getInitParameter to display values like max-shopping-cart-size and project-team-name.
Configure servlet parameters in web.xml and read them in the doGet method with servletContext.getInitParameter. Generate HTML that displays max shopping cart size and the project team name coding gurus.
Explore the model-view-controller pattern with servlets and JSP, wiring the controller to a JSP view, passing data via request attributes, then render the list using JSTL.
Learn to build a simple mvc app by adding JSTL to a servlet project, creating an mvc demo servlet, and forwarding data to view_students.jsp with a JSP loop over student_list.
Deepen mvc with servlets and jsp by showing how the controller uses StudentDataUtil to fetch a student list and forward it to a table-based jsp view.
Create a student class in a new mvctwo package, define fields for firstName, lastName, and email, with a constructor and automated getters and setters using Eclipse tricks.
Create a StudentDataUtil helper to provide the servlet with a list of sample students by building an empty list, adding Mary Public, John Doe, Ajay Rao, and returning the list.
Create an MVC servlet named MvcDemoServletTwo, fetch students from StudentDataUtil, set them as request attribute 'student_list', and forward to view_students_two.jsp with the request and response.
Copy view_students.jsp to view_students_two.jsp, build an HTML table with first name, last name, and email, and loop over tempStudent data in MVC to display each student.
The Most Popular JSP/Servlet course!
Join 56,000+ students that are already enrolled!
Over 11,000+ Reviews! (the most reviews for any JSP/Servlet course on Udemy)
---
Build a JDBC Database Web App with JSP and Servlets - CRUD: query, insert, update and delete
By the end of this course, you will create all of the source code for a complete MVC CRUD application.
You will type in every line of code with me in the videos ... all from scratch.
I explain every line of code that we create. So this isn't a copy/paste exercise, you will have a full understanding of the code.
---
Sample Reviews
★★★★★
Excellent JSP Primer. The code works flawlessly ... top notch quality! - Zac Smith
★★★★★
The Best JSP course for any Beginner. This course will meet or exceed your expectations! - Macuei Mathiang
★★★★★
I am really enjoying learning JSP from this wonderful tutorials and the way Chad explains them with such a great simplicity makes me feel like I am in a classroom with him and he is mentoring me face to face. - Vishal Rangras
---
Covers JSP 2.3 and Servlet 3.1
Live Coding - Watch me code all of the projects from scratch
Responsive Instructor - All questions answered within 24 hours
---
All source code is available for download
PDFs of all the slides available for download
---
Professional video and audio recordings (check the free previews)
Closed-Captions / Subtitles available for English (new!)
---
What Is Java Server Pages (JSP)?
JSP (JavaServer Pages) is a popular web application solution for Java. JSP helps developers create dynamically generated HTML web pages on the fly. JSP is similar to PHP, but it uses the powerful Java programming language instead.
Benefits of Taking This JSP/Servlets Course
Knowing JSP and Servlets can get you a job or improve the one you have. It's a skill that will put you more in demand in the modern web development industry, and make your software life easier, that's why it's so popular and backed by Oracle.
This course will help you quickly get up to speed with JSP and Servlets. I will demystify the technology and help you understand the essential concepts to build a real JSP/Servlet web application from scratch.
Build a Real JSP/Servlet Application from Scratch
This course is project based and you will build a fully functioning JSP/Servlet web application from scratch.
We start off with a brief overview of JSP and Servlets. Then I show you how to setup your development for JSP by installing Tomcat and Eclipse. Next, I show you how to connect Eclipse and Tomcat for rapid application development.
We cover the key JSP scripting elements: Expressions, Scriptlets and Declaration. For each scripting element, I show you working code examples along with the appropriate use-case and best practices.
You learn about the built-in objects available in JSP. Code examples demonstrate the most common built-in objects.
Next, we cover how to read HTML form data with JSP. This includes reading form data for text fields, drop-down lists, radio buttons and checkboxes.
Then you learn how to manage application state with Sessions and Cookies. You make use of the built-in session object to keep track of actions for a unique user. You also leverage Cookies to personalize a web site for a specific user.
Finally, the course includes JDBC database integration. You learn how to leverage JDBC queries, inserts, updates and deletes in a JSP/Servlet web application.
At the end of this course, you will have a fully functional JSP/Servlet web application that connects to a database. You can use this application as a starting point for your project.
All of the source code and database scripts are provided.
You Will Learn How To
Build a fully functioning JSP/Servlet web application from scratch
Set up your JSP/Servlet development environment with Tomcat and Eclipse
Explore JSP scripting elements: Expressions, Scriptlets and Declarations
Read HTML form data with JSP and Servlets
Include additional files in your JSP file for a standard look-and-feel
Manage application state with Sessions to track unique user actions
Leverage Cookies to personalize a web site for a specific user
Build a Multi-Lingual app using Internationlization with JSTL
Build an MVC application with JSP and Servlets
Add database support with JDBC: query, insert, update and delete
Build a complete database web app with JDBC
Student Reviews Prove This Course's Worth
Those who have reviewed the course have pointed out that the instruction is clear and easy to follow, as well as thorough and highly informative.
Other students enjoy the use of relevant examples throughout the course, as these make the content even easier to comprehend.
Many students had also taken other JSP courses in the past, only to find that this JSP course was their favorite. They enjoyed the structure of the content and the high quality audio/video.
Check out all of the great reviews in the review section ... a lot of happy students :-)
Compared to other JSP/Servlet courses
Most importantly, this course is project based and you'll build a real JSP/Servlets web application that connects to a database ... all from scratch.
I am a very responsive instructor and I am available to answer your questions and help you work through any problems.
Finally, all source code is provided with the course along with setup instructions.
Quality Material
You will receive a quality course, with solid technical material and excellent audio and video production. This is my fourth course at Udemy.
My first three courses on Udemy were:
Eclipse IDE for Beginners
Java Database Connection (JDBC)
JavaServer Faces (JSF) for Beginners
These courses have received rave 5 star reviews and over 60,000 students have taken the courses. Also, these courses are the most popular courses in their respective categories.
I also have an active YouTube channel where I post regular videos. In the past year, I’ve created over 300 video tutorials (public and private). My YouTube channel has over 4.5 million views. So I understand what works and what doesn’t work for creating video tutorials.
No Risk – Udemy Refund
Finally, there is no risk. You can preview 25% of the course for free. Once you purchase the course, if for some reason you are not happy with the course, Udemy offers a 30-day refund (based on Udemy's Refund Policy).
So you have nothing to lose, sign up for this course and learn how to build JSP/Servlet applications from scratch!
Target Audience
Java Developers with basic Java experience