Six Degrees of Separation Saahil Peerbhoy Amortya Ray Aaron Fernandes Ritika Virmani Swapneel Sheth Josh Poritz.

Slides:



Advertisements
Similar presentations
Lecture plan Information retrieval (from week 11)
Advertisements

Technology Overview JAVA Servlets CS-611 S. Witherspoon.
Introduction to Model-View-Controller (MVC) Web Programming with TurboGears Leif Oppermann,
1 JRuby on Rails GAO ANG Sun Functional Campus Ambassador 1.
Fundamentals, Design, and Implementation, 9/e Chapter 14 JDBC, Java Server Pages, and MySQL.
What is it? –Large Web sites that support commercial use cannot be written by hand What you’re going to learn –How a Web server and a database can be used.
WEB1P servintro1 Introduction to servlets and JSP Dr Jim Briggs.
Multiple Tiers in Action
CS 290C: Formal Models for Web Software Lecture 1: Introduction Instructor: Tevfik Bultan.
1 CS6320 – Why Servlets? L. Grewe 2 What is a Servlet? Servlets are Java programs that can be run dynamically from a Web Server Servlets are Java programs.
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
Comp2513 Java Servlet Basics Daniel L. Silver, Ph.D.
1 Java Server Pages Can web pages be created specially for each user? What part does Java play?
Java Server and Servlet CS616 Team 9 Kim Doyle, Susan Kroha, Arunima Palchowdhury, Wei Xu.
Apache Struts Technology A MVC Framework for Java Web Applications.
Session-01. What is a Servlet? Servlet can be described in many ways, depending on the context: 1.Servlet is a technology i.e. used to create web application.
All You Ever Wanted To Know About Servlets But Were Afraid to Ask.
2440: 141 Web Site Administration Web Server-Side Programming Professor: Enoch E. Damson.
Java Servlets. What Are Servlets? Basically, a java program that runs on the server Basically, a java program that runs on the server Creates dynamic.
Apache Jakarta Tomcat Suh, Junho. Road Map Tomcat Overview Tomcat Overview History History What is Tomcat? What is Tomcat? Servlet Container.
DR. MOHAMMAD IQBAL THANKS TO ADITYA SENGUPTA Comparing Web Frameworks.
CGI Programming Languages Web Based Software Development July 21, 2005 Song, JaeHa.
Struts 2.0 an Overview ( )
UNIT-V The MVC architecture and Struts Framework.
Web Development Methodologies Yuan Wang(yw2326). Basic Concepts Browser/Server (B/S) Structure Keywords: Browser, Server Examples: Websites Client/Server.
Server-side Technologies
RUBY ON RAILS It’s so rad. What we’ll cover  What is Ruby?  What is RoR?  Why RoR?  Developing with RoR  Deployment  Demo  Questions.
Getting connected.  Java application calls the JDBC library.  JDBC loads a driver which talks to the database.  We can change database engines without.
Ruby & rails by Nicholas Belotti. What is ruby Ruby is an object orientated scripting language. In Ruby...everything is an object! Ruby was released in.
Modern Software Technologies Java™, J2EE™, JSP™, JDBC™ by Radoslav Tr. Ivanov
Putting What We Learned Into Context – WSGI and Web Frameworks A290/A590, Fall /16/2014.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
Python MySQL Database Access
Lecture 19 Web Application Frameworks Boriana Koleva Room: C54
Standalone Java Application vs. Java Web Application
Programming Languages , perfSONAR-PS Developers Meeting Aaron Brown, Maxim Grigoriev, Eric Pouyoul.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Website Design Lecture 1. Outline Introduction to the module Outline of the Assessment Schedule Lecture Static XHTML, client side and server side Why.
Pemrograman Web MVC Programming and Design Pattern in PHP 5.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
Webcommerce Computer Networks Webcommerce by Linnea Reppa Douglas Martindale Lev Shalevich.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
1 CS122B: Projects in Databases and Web Applications Spring 2015 Notes 03: Web-App Architectures Professor Chen Li Department of Computer Science CS122B.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
MC365 Application Servers, Servlets, and Java Server Pages (JSP’s): Tomcat.
All You Ever Wanted To Know About Servlets But Were Afraid to Ask.
Java Servlets and Java Server Pages Norman White Stern School of Business.
Middleware 3/29/2001 Kang, Seungwoo Lee, Jinwon. Description of Topics 1. CGI, Servlets, JSPs 2. Sessions/Cookies 3. Database Connection(JDBC, Connection.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Implementation of SCENS Yan Zhao. Current Status Current implementation is web-based –
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
Introduction to Model-View-Controller (MVC) Web Programming with TurboGears Leif Oppermann,
1 Web Programming with Servlets & JSPs WEB APPLICATIONS – AN OVERVIEW.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
CS122B: Projects in Databases and Web Applications Spring 2017
CS122B: Projects in Databases and Web Applications Winter 2017
By Dr. Kodge Bheemashankar G
PHP / MySQL Introduction
…and web frameworks in general
MSIS 655 Advanced Business Applications Programming
Java Servlet Ziad A. Al-Sharif.
CS122B: Projects in Databases and Web Applications Winter 2018
Lecture 1: Multi-tier Architecture Overview
Introduction to Servlets
CS122B: Projects in Databases and Web Applications Spring 2018
Google App Engine Ying Zou 01/24/2016.
…and web frameworks in general
UFCEUS-20-2 Web Programming
Web Application Development Using PHP
Presentation transcript:

Six Degrees of Separation Saahil Peerbhoy Amortya Ray Aaron Fernandes Ritika Virmani Swapneel Sheth Josh Poritz

Goal To compare and contrast different scripting languages/frameworks by developing a basic application that performs: To compare and contrast different scripting languages/frameworks by developing a basic application that performs: create, update, delete and insertion operations on a database. create, update, delete and insertion operations on a database. Basic input validation, such as SQL injection. Basic input validation, such as SQL injection. Searching and Sorting of the songs in the database. Searching and Sorting of the songs in the database.

Languages/Frameworks Saahil : Java Servlets Saahil : Java Servlets Amortya : Python – Turbogears Amortya : Python – Turbogears Aaron : PHP – symfony Aaron : PHP – symfony Ritika : Python – Django Ritika : Python – Django Swapneel : Ruby – Ruby on Rails Swapneel : Ruby – Ruby on Rails Josh : Perl – Catalyst Josh : Perl – Catalyst

Database Schema Online Music Repository Database Online Music Repository Database Single table having the following schema Single table having the following schema Songs ( Songs ( SongIdint SongIdint Titlevarchar Titlevarchar Artistvarchar Artistvarchar Albumvarchar Albumvarchar Yearint Yearint Genrevarchar Genrevarchar Ratingint Ratingint Lengthtime Lengthtime)

Java Servlets Implementation Servlets are Java technology's answer to CGI programming Servlets are Java technology's answer to CGI programming Database server : MySQL Database server : MySQL Web Server : Jakarta Tomcat Web Server : Jakarta Tomcat

MVC Framework The implementation using servlets does not follow the Model-View-Controller framework The implementation using servlets does not follow the Model-View-Controller framework One way to do so would have been to use JSP’s along with servlets. Then, One way to do so would have been to use JSP’s along with servlets. Then, Servlets- controller Servlets- controller JSPs – View JSPs – View Database - Model Database - Model

Three Tier Architecture

Advantages of Java Servlets Efficiency : For every request, another process is not spawned (unlike PHP-CGI). Instead, the JVM spawns a lightweight thread which deals with the particular request. Efficiency : For every request, another process is not spawned (unlike PHP-CGI). Instead, the JVM spawns a lightweight thread which deals with the particular request. Only one copy of the servlet class is loaded into memory. Only one copy of the servlet class is loaded into memory. The servlets remain in memory between requests and thus make it easy to store data between requests. The servlets remain in memory between requests and thus make it easy to store data between requests. Example : maintaining a database connection pool. (DBConnectionPool class) Example : maintaining a database connection pool. (DBConnectionPool class)

Advantages of Java Servlets Convenient : Plenty of useful packages available for you to use. Convenient : Plenty of useful packages available for you to use. I would have to agree that writing a simple application using servlets is easier in other languages, but if you want to do something a little more complex there are plenty of Java APIs available for you to use I would have to agree that writing a simple application using servlets is easier in other languages, but if you want to do something a little more complex there are plenty of Java APIs available for you to use You already know Java. You already know Java.

Advantages of Java Servlets PORTABLE : Servlets are written in Java and hence are highly portable. The same servlet can be run on virtually any web server PORTABLE : Servlets are written in Java and hence are highly portable. The same servlet can be run on virtually any web server SECURE : Servlets are executed within the ‘safe’ environment of the JVM and are thus inherently safe SECURE : Servlets are executed within the ‘safe’ environment of the JVM and are thus inherently safe

Java Frameworks Apache Struts: is an open-source framework for developing Java EE web applications. It uses and extends the Java Servlet API to encourage developers to adopt a model-view-controller (MVC) architecture. Apache Struts: is an open-source framework for developing Java EE web applications. It uses and extends the Java Servlet API to encourage developers to adopt a model-view-controller (MVC) architecture. Disadvantages: Disadvantages: 1. Big learning curve. 2. Documentation is not as good as that for servlets.