JAVA
Java is used as the back end of this project . Why Java then, Java is a general-purpose computer programming language that is concurrent, class-based, object-oriented, and specifically designed to have as implementation dependencies as possible. It works on “write once, run anywhere” (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation. Java provides applets, which aid graphical user interface and object communication by Internet users. Java applets runs in a Web browser with Java Virtual Machine, which translates Java bytecode into processor instructions and allows platform program execution.
4.1.1.1 Software Details
• Operating System: Windows 8
• Programming Languages: JSP
• Script: HTML, CSS
• Database: Mysql 5.6
• Software: Eclipse Jee Oxygen
A. Eclipse is an integrated development environment (IDE) used in computer programming. It is the most widely used Java IDE. It contains a base workspace for customizing the environment.
B. Eclipse for Java is basic IDE with libraries for GUI and swings. But still there is scarcity of useful plugins for working with database and web development. Eclipse IDE for Java Enterprise Edition has all these plugins preinstalled.

HTML
Hypertext Markup Language is a markup language for creating web pages and web applications. With Cascading Style Sheets and JavaScript, it forms a triplet of technologies for the World Wide Web. Web browsers receive HTML documents from a web server or from local storage and deliver the documents into multimedia web pages.
HTML defines the structure of a web page frantically and originally included hints for the arrival of the document The tags of HTML are fenced by angular bracket..
HTML creates a structured documents by expressing structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. HTML elements contains tags, written using angle brackets. HTML creates only static and plain pages and therefore cannot be used for creating dynamic pages..
CSS
Cascading Style Sheets is a style sheet language used for defining the presentation of a document written in a markup language. It is designed to show the separation of presentation and content which includes layout, colors, and fonts. This separation can improve content accessibility and provide more flexibility and control in the specification of presentation.It also ensures many web pages to share formatting by specifying CSS in a separate .CSS contains simple syntax and uses English keywords to show the names of different style properties. A style sheet contains a list of rules. Each rule contains one or more selectors and a declaration block.
Selectors apply to all elements of a specific type, e.g. the second-level headers h2 elements specified by attribute, in an unique identifier within the document. An identifier that can define multiple elements in a document. elements depending on how they are placed in comparison to others in the document.
Before CSS, all presentational attributes of HTML documents were contained within the HTML markup. All font colors, background styles, element alignments, borders and sizes need to be described within the HTML. Through CSS, changes to the graphic design of a document can be applied quickly and easily, we can use these by changing few lines rather than eliminating whole document..
The CSS stipulation describes a priority scheme to define which style rules apply if more than one rule matches against a particular element. This is called cascade where priorities are calculated and assigned to rules, so that the results are expected.
Database
A database is an collection of data used to store and access from a computer system. Where databases are more complicated they are developed using formal design and modeling techniques. Database which is used is the MySQL. The database management system is the software that communictes with end users and applications, the database itself to capture and analyze the data and provides facilities to administer the database. The sum total of the database, the DBMS and the associated applications together are called as a “database system”.
Database servers are users that hold the databases and run only the DBMS and related software. Database servers are usually multiprocess or computers, with memory and disk arrays used for storage. RAID is used for recovery of data if any of the disks fail. Hardware database accelerators are connected to one or more servers through a high speed channel is also used in large volume transaction processing environments.
MySQL is an open-source relational database management system.
MySQL was owned by a single for profit firm, the Swedish company MySQL AB is now owned by Oracle Corporation. For use, several paid editions are available, and offer additional functionality. MySQL is a central component of the LAMP open-source web application software stack .LAMP stands for “Linux, Apache, MySQL, Perl or PHP or Python”.Application that use the MySQL database include: TYPO3, Joomla, Simple Machines Forum, MyBB, and Drupal and many more. MySQL is also used in many high-profile and large websites,including Google Facebook, Twitter and YouTube.
MySQL has fewer than two different editions: the open source MySQL Community Server and the proprietary Enterprise Server. MySQL Enterprise
Server is differentiated by a series of extensions which install as server plugins, but otherwise shares the version numbering system and is built from the same code base.
Major features as available in MySQL 5.6:
• A broad subset of ANSI SQL, as well as extensions
• Cross-platform support
• Stored Procedure, using a procedural language that closely adheres to SQL/PSM
• Updatable Views
• When using the InnoDB Storage Engine.
• Information Schema.
• Performance Schema that collects and aggregates statistics about server execution and query performance for monitoring purpose.
Transactions with save point when using the default InnoDB Storage Engine. The NDB Cluster Storage Engine also supports transactions.
ACID compliance when using InnoDB and NDB Cluster Storage Engines
• SSL support
• Query caching
• Sub-SELECTs (i.e. nested SELECTs)
• Built-in replication support with one master per slave, many slaves per master. Multi-Master replication is provided in MYSQL Clustered and multi-master support can be added to uncluttered configurations using Galura Cluster.
• Full-text indexing and searching
• Embedded database library
• Unicode support
• Partitioned tables with pruning of partitions in optimizer
• Shared-nothing clustering through MySQL Clustered
Commit grouping, gathering multiple transactions from multiple connections together to increase the number of commits per second.
Scripting Language Used for Validations
Java Server Pages is a technology that helps software developers creates dynamically generated web pages based on HTML, XML, or other document types. Released in 1999 by Sun Microsystems, JSP is similar to PHP and ASP, but it uses the Java programming language.
To deploy and run JSP, a compatible web server with a servlet container, such as Apache Tomcat or Jetty, is required.
JSP pages use many delimiters for scripting functions. The most basic is , which encloses a JSP scriptlet. A scriptlet is a pieces of Java code that is run whenever user request the page. It is not mandatory to complete the java code within a single scripting.
Version 2.0 of the JSP added the support for the Expression Language which is used to access data and functions in Java objects.

Figure 4.1
JSP allows Java code and certain pre-defined actions to be interleaved with static web markup content, such as HTML, with the resulting page being compiled and executed on the server to deliver a document. The compiled pages, as well as any dependent Java libraries, contain Java byte code rather than machine code. Like any other Java program, they must be executed within a Java virtual machine (JVM) that interacts with the server’s host operating system to provide an abstract, platform-neutral environment.
JSPs are usually used to give HTML and XML documents, but they can also deliver other types of data by the use of Output Stream..
The Web container creates JSP objects like request, response, session, application, page Context, etc. JSP Engine creates these objects during translation phase. It can be considerded as a high-level abstraction of Java servlets. JSPs are actually servelets which are translated at the run time. Each JSP servlet is cached and re-used until the original JSP is modified.
JSP can be used as the main component of a server-side model view controller design, normally with JavaBeans as the model and Java servlets as the controller.
JSP allows Java code and pre defined actions to be interleaved with static web markup content such as HTML with the output page being compiled and executed on the server to produce a document. The compiled pages contain Java bytecode rather than machine code which must be executed within a Java virtual machine that interacts with the server’s host operating system to provide an abstract and platform neutral environment.
4.1.1.2 Hardware Details
Processor Type: i5 processor
RAM: 8 GB RAM for system