0% found this document useful (0 votes)
42 views78 pages

Final - From Freelance To Fortune Pathways To Success

The document outlines a proposed integrated platform that combines a freelancing job portal with a Q&A system to enhance user experience and satisfaction. It features a voting prediction algorithm to prioritize relevant answers and allows freelancers to bid on technical tasks while providing video demonstrations of their work. The project aims to improve productivity, user satisfaction, and create a scalable platform for efficient problem-solving and task execution.

Uploaded by

subhapandi1710
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views78 pages

Final - From Freelance To Fortune Pathways To Success

The document outlines a proposed integrated platform that combines a freelancing job portal with a Q&A system to enhance user experience and satisfaction. It features a voting prediction algorithm to prioritize relevant answers and allows freelancers to bid on technical tasks while providing video demonstrations of their work. The project aims to improve productivity, user satisfaction, and create a scalable platform for efficient problem-solving and task execution.

Uploaded by

subhapandi1710
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 78

/TITLE: FROM FREELANCE TO FORTUNE: PATHWAYS TO

SUCCESS.

ABSTRACT:
Our proposed system seamlessly integrates a freelancing job portal with a Q&A platform
to enhance user experience and satisfaction. Users can post technical or development-related
tasks, while freelancers can bid on and complete these jobs, uploading video demonstrations of
their work directly to the platform. This integration ensures that users not only find answers to
their queries but also access skilled professionals for executing complex tasks. In parallel, the
system optimizes the Q&A experience through a voting prediction algorithm that analyzes
factors such as upvotes, user reputation, and answer quality to automatically surface the most
relevant and accurate responses. By streamlining the answer retrieval process, the system reduces
the time users spend searching for solutions, improving efficiency and reducing frustration. With
these combined features, our system provides a comprehensive solution that addresses both
immediate information needs and long-term project execution, creating a more effective and
engaging platform for users and freelancers alike.

OBJECTIVE:

The objective of this project is to create an integrated platform that optimizes the user experience
by combining a freelancing job portal with a Q&A system. The platform will employ a voting
prediction algorithm to automatically prioritize the most relevant answers based on factors like
upvotes and user reputation, streamlining the process of finding accurate solutions. Additionally,
it will allow users to post technical or development-related jobs, enabling freelancers to bid on
and complete tasks, with the option to upload video demonstrations of their work. This
integration will reduce the time spent searching for answers, enhance efficiency, and foster
collaboration between users and freelancers, while ensuring a seamless, engaging experience.
The system aims to improve productivity, increase user satisfaction, and create a scalable,
reliable platform that supports both immediate problem-solving and long-term task execution.
SCOPE OF PROJECT:

This project encompasses the development of an advanced platform that combines optimized
answer retrieval with a freelancing job portal. The project will focus on designing and
implementing a voting prediction algorithm to rank and display the most relevant answers on
Q&A platforms, ensuring that users can quickly find accurate information. Additionally, the
platform will include a freelancing job portal where users can post technical or development
tasks, and freelancers can accept and complete these jobs. Freelancers will be able to upload their
results in video format, providing a clear and visual demonstration of their work. Security and
data protection will be prioritized, with robust measures in place to safeguard user information
and comply with relevant regulations. The architecture of the platform will be designed for
scalability, enabling future growth. Overall, this project aims to enhance user experience by
offering a comprehensive solution that combines quick access to reliable answers with a practical
freelancing service.

EXISTING SYSTEM:

The existing freelancing platforms focus on connecting clients with freelancers for various
projects, offering features like job posting, bidding, and portfolio showcasing. However, these
platforms often lack efficient mechanisms for quickly matching users with specialized talent,
requiring them to sift through numerous profiles and proposals, which can be time-consuming.
Additionally, while they facilitate project completion, these platforms do not integrate solutions
for immediate, task-specific needs or technical queries. Users may face challenges in finding the
right freelancer for complex, time-sensitive tasks, and the overall experience can feel disjointed,
lacking a seamless process for both posting jobs and executing tasks efficiently.
DISADVANTAGE:

 The platform’s reliance on freelancers to complete tasks may cause delays if freelancers
are unavailable or take longer than expected, affecting the timely delivery of services.

 As the platform grows, an overwhelming number of job postings could emerge, making it
difficult for freelancers to find the most suitable opportunities and leading to competition-
driven delays.

 Handling payments and resolving disputes between users and freelancers may be
complex, requiring a reliable system for managing contracts, payments, and potential
conflicts.

PROPOSED SYSTEM:
The proposed system aims to integrate a comprehensive platform that combines a
freelancing job portal with an optimized Q&A system. It will allow users to post technical and
development-related jobs, with freelancers bidding on and completing tasks, and providing video
demonstrations of their work. In parallel, the system will feature a voting prediction algorithm to
automatically prioritize the most relevant and accurate answers to user queries based on upvotes,
user reputation, and answer quality. This integrated approach will streamline the process of
finding solutions to immediate queries while facilitating access to skilled freelancers for
executing complex tasks. The system is designed to improve user satisfaction, efficiency, and
overall effectiveness by creating a seamless, dynamic platform that supports both problem-
solving and long-term project execution.

ADVANTAGE:

 The voting prediction algorithm ensures that the most relevant and accurate answers are
automatically prioritized, saving users time and reducing frustration in finding solutions.
 By combining a freelancing portal with a Q&A platform, users can not only get answers
to their questions but also hire skilled freelancers for complex tasks, creating a one-stop
solution.

 Users can easily connect with experienced freelancers who can help execute tasks beyond
simple answers, such as technical developments or project completions, enhancing the
overall service.

 The system reduces the time spent searching for answers and finding the right freelancer,
increasing productivity and user satisfaction.

SYSTEM CONFIGURATION:

H/W SYSTEM CONFIGURATION:

 Processor - i3, i5, i7


 RAM - 4GB
 Hard Disk - 260 GB

S/W SYSTEM CONFIGURATION:


 Operating System - Windows 7/8/10

 Front End - JSP, HTML.

 Backend - JAVA.

 Database - MYSQL .

 Tools - Netbeans.

ARCHITECTURE DIAGRAM:
LITERATURE SURVEY:

PAPER1:

TITLE: INFORMATION TECHNOLOGY JOB PROFILE USING AVERAGE-LINKAGE


HIERARCHICAL CLUSTERING ANALYSIS.

AUTHOR NAME: PUJI CATUR SISWIPRAPTINI, HARCO LESLIE HENDRIC SPITS


WARNARS, ARIEF RAMADHAN AND WIDODO BUDIHARTO.
ABSTRACT:

The growth in Information Technology (IT) jobs is predicted to reach 15 percent between 2021
and 2031. The growth of IT jobs has resulted in a remarkable change in all infrastructure, such as
information, skills, and domains covered in IT job profiles. Unfortunately, job roles and skills in
this field remain undefined. The gap between the supply and demand needs in the IT workforce
must be filled immediately with an appropriate strategy. To fulfill industry needs, an in-depth
analysis of IT job profiles is important. Therefore, it is important for educational programs to
identify the competencies needed by the industry to update their output. This study aims to
identify the job profiles required for IT job specialists by analyzing real-world job posts
published online to identify hidden meanings from a textual database. A systematic semantic
methodology was proposed using an average-linkage hierarchical clustering analysis. It
resembles a tree structure technique to discover relevant phrases, relationships, and hidden
meanings through semantic analysis. Occurrences of the most frequent words and phrases were
extracted to reveal the domain knowledge of each IT job cluster. The result is a systematic
semantic analysis of the IT job profile comprising the programming language, specialized type,
duty, database, tools, and frameworks. The justification for each job profile was validated by 10
IT professionals from various private and government companies in Indonesia through Focus
Group Discussions (FGD).

YEAR: 2023.

PAPER 2:

TITLE: TWO STAGE JOB TITLE IDENTIFICATION SYSTEM FOR ONLINE JOB
ADVERTISEMENTS.

AUTHOR NAME: IBRAHIM RAHHAL, KATHLEEN M. CARLEY, ISMAIL KASSOU


AND MOUNIR GHOGHO.

ABSTRACT:
Data science techniques are powerful tools for extracting knowledge from large datasets.
Analyzing the job market by classifying online job advertisements (ads) has recently received
much attention. Various approaches for multi-label classification (e.g., self-supervised learning
and clustering) have been developed to identify the occupation from a job advertisement and
have achieved a satisfying performance. However, these approaches require labeled datasets with
hundreds of thousands of examples and focus on specific databases such as the Occupational
Information Network (O*NET) that are more adapted to the US job market. In this paper, we
present a two-stage job title identification methodology to address the case of small datasets. We
use Bidirectional Encoder Representations from Transformers (BERT) to first classify the job
ads according to their corresponding sector (e.g., Information Technology, Agriculture). Then,
we use unsupervised machine learning algorithms and some similarity measures to find the
closest matching job title from the list of occupations within the predicted sector. We also
propose a novel document embedding strategy to address the issues of processing and classifying
job ads. Our experimental results show that the proposed two-stage approach improves the job
title identification accuracy by 14% to achieve more than 85% in some sectors. Moreover, we
found that incorporating document embedding-based approaches such as weighting strategies
and noise removal improves the classification accuracy by 23.5% compared to approaches based
on the Bag of words model. Further evaluations verify that the proposed methodology either
outperforms or performs at least as well as the state-of-the-art methods. Applying the proposed
methodology to Moroccan job market data has helped identify emerging and high-demand
occupations in Morocco.

YEAR: 2023.

PAPER 3:

TITLE: COMPARISON OF REAL-TIME AND BATCH JOB RECOMMENDATIONS.

AUTHOR NAME: ROBERT KWIECIŃSKI, GRZEGORZ MELNICZAK , AND TOMASZ


GÓRECKI.
ABSTRACT:

Collaborative filtering recommendation systems are traditionally trained in a batch manner and
are designed to produce personalized recommendations for a large number of users at the same
time. However, in many industrial use cases, it is reasonable to produce recommendations in real
time, taking account of very recent user interactions. In this work, we present the implementation
of batch and real-time recommendation systems using the example of the RP3Beta model, a
simple scalable graph-based model that outperforms multiple more advanced models. Our
approach can be utilized by any recommendation system if user-to-item recommendations can be
obtained based on item-to-item recommendations. We show that it covers multiple common
recommendation models, especially collaborative filtering approaches where user features are
not available. We also provide the results of A/B tests comparing these two approaches in a real-
world scenario of a job recommendation task, conducted with almost 200,000 OLX users. We
report at least 10% more users applying for recommended job ads when using a real-time instead
of a batch approach. We believe that our results can help other organizations to take informed
decisions about whether to make the effort of moving from a batch to a real-time
recommendation setting.

YEAR: 2023.

PAPER 4:

TITLE: ONLINE RECRUITMENT FRAUD DETECTION: A STUDY ON CONTEXTUAL


FEATURES IN AUSTRALIAN JOB INDUSTRIES.

AUTHOR NAME: SYED MAHBUB, ERIC PARDEDE AND A. S. M. KAYES.

ABSTRACT:

The purpose of this study is to investigate the effects of contextual features on automatic
detection accuracy of online recruitment frauds in Australian job market. In addition, the study
aims to unearth the significance of localisation of such approaches. The study first generates a
dataset based on a local and semi-structured advertising platform in Australia. The labelled
dataset is then used to train a learning model on several content-based and contextual features.
The existence of advertising body in relevant government and non-government registries in
Australia, along with the internet presence of the advertiser, were considered as contextual
features. The extraction process of such contextual features was automated as well. The study
concludes that the inclusion of contextual features improves the performance measures of the
automated online recruitment fraud detection model. The practical implication of the study is
two-folds. Firstly, the contextual feature space generation engine can be used with any dataset,
with minimal localisation efforts. Secondly, such learning models can be used at the back end of
online job recruitment portals to detect and prevent online recruitment frauds. The study not only
demonstrates the positive impact of using contextual features in fraud detection using a real-life
dataset, but it also demonstrates how these contextual features can be extracted automatically
from the web, based on localised company registries.

YEAR: 2022.

PAPER 5:

TITLE: EFFICIENT RESUME-BASED RE-EDUCATION FOR CAREER


RECOMMENDATION IN RAPIDLY EVOLVING JOB MARKETS.

AUTHOR NAME: SAEED ASHRAFI, BABAK MAJIDI, EHSAN AKHTARKAVAN


AND SEYED HOSSEIN RAZAVI HAJIAGHA.

ABSTRACT:

The impact of the COVID-19 pandemic and the introduction of artificial intelligence-based tools
created significant job losses across various sectors in all countries around the world. A large
portion of these job losses is permanent. Furthermore, the hidden unemployment numbers are
higher than currently reported and the impact of Generative Pretrained Transformer (GPT) based
tools will further increase the unemployed population in the coming years. Most businesses are
likely to experience significant disruptions to their business-as-usual operations and will face
business underperformance for long periods. To ensure business continuity and a smooth
recovery process following severe disruptions, it is crucial to establish a recovery strategy. To
provide enough workforce for the recovery strategy of various businesses, a large-scale rapid re-
education of the workforce is required. Intelligent and virtual workplaces will replace traditional
offices in various sectors in the upcoming years and many low-skilled jobs are in danger of being
permanently lost. In this paper, an artificial intelligence-based framework for rapid work-skill re-
education for evolving markets named Career-gAIde is presented. The proposed framework uses
automatic analysis of the job resume of the workers for recommendations of a suitable new job
with a higher salary and the best rapid re-education path toward that job. Custom build deep
neural networks based on CNN-Random along with customized natural language processing
tools are designed for large-scale automatic recommendation of a personalized education and
career path to each job seeker. The proposed work is focused on software engineering job search
and resume upgrades. There is also a book recommendation module for obtaining the knowledge
of job seekers. Precision criteria were used to evaluate the job offer recommendations and the
proposed framework achieves 67% in this measure. The Recall criteria were used to assess the
required skills, with results of 84% and 79%, respectively. The experimental results show that
the proposed framework can provide a solution for rapid work-skill re-adjustment for large-scale
workforces.

YEAR: 2023.

MODULE:

 Content upload.
 Content Rating.

 Freelancer.
 Bidding.

 Newsletter.

 Payment Gateway.
 Report generation.

MODULE DESCRIPTION:

CONTENT UPLOAD AND CONTENT RATING:

In this module Admin upload the technical content and non technical content to web page.
And also upload the content based on the user query. If user posts the technical and non technical
related queries to send the admin to see the content and analysis the user content to upload the
web page. This module mainly used to user friendly to discuss and clear the doubts.

Content rating module used to user rating the particular content uploaded from admin. In
previous application there is no clear rating of the content but now to provide clear rating for
each and every content for unique purpose. One user can rate the content one time only by the
use of system ip and Mac. because to avoid the fake rating of the content and also algorithm
based rating is done The question will be posted and user will answer the query. The answer will
be displayed to the user query.

FREELANCER AND BIDDING:

Freelancer who develop the work in online for user needs and wants.In this module
freelancer to separate in different category like software coding,content writer,graphics designer
etc..So user to assign the work to different category. If user to assign the work in particular
category freelancer like Content editor ,then the particular freelancer and user will communicate
from bidding process.

In this module bidding process will be done between user and freelancer. The user post the
work details to category wise freelancers. Freelancer get the work details from the particular user
then bidding for the amount to the user. This bidding process done only until user reasonable
amount will come. if freelancer satisfy the user amount, then user assign the work to the
particular user with specific amount of time.

NEWSLETTER:

Newsletter Means update news for the particular area.In this module deals with latest
technology events updated from admin.Admin collects the technology related information from
internet and post the website. Then users read the content and update the user the knowledge.
This module very useful to know the updated information about the computer technology.like
latest software technology,science event and etc.

PAYMENT GATEWAY AND REPORT GENERATION:

In this module deals with transfer the amount from users to freelancer.If free lancer finish
the work and send the demo video file to the user. and user check the video file is same as my
need and wants then send the particular amount to the particular freelancer.once amount is
credited freelancer send the full code or others work details otherwise will not be send the
amount to the user. In the particular transaction process, freelancer register the account number
while signup.

In this module deals with to generate the report of the how many user and freelancer are
register in the particular website. Admin to track the information in every time. How much of
amount transfer from user side to freelancer side, and also generate the report of category wise
post.In example user add post in software code or graphics design post and so on.

USE CASE DIAGRAM:


DFD LEVEL 0:
DFD LEVEL 1:

DFD LEVEL 2:

OVER ALL DFD:


ER DIAGRAM:

ACTIVITY DIAGRAM:
SEQUENCE DIAGRAM:
ALGORITHM:

1. Layered Indexing Priority-Knowledge-based Item Matching. (LIP-KIM

ALGORITHM).

2. Linear Invariant Process for Knowledge Impact Maximization Algorithm.


(LIP-KIMA ALGORITHM).
1. LIP-KIM ALGORITHM:

Layered Indexing:

 Data is divided into hierarchical layers based on relevance or priority levels.

 This structure ensures that high-priority items (e.g., most upvoted answers)
are evaluated first, improving response time.

Priority-Based Ranking:

Items are ranked using a scoring system that integrates multiple factors, such
as:

 User engagement metrics (upvotes).


 Content quality (semantic similarity, relevance).
 Historical performance (job completion rates or accurate answers).

Knowledge-Based Matching:

 Incorporates domain knowledge to align user preferences or job


requirements with available resources.
 For example:

 In a freelancing platform, matches are based on skills,


expertise, and job descriptions.

 In Q&A, answers are ranked by their semantic closeness to the


question and user reputation.
Optimized Search and Retrieval:

 The algorithm employs efficient indexing and matching methods to


minimize the computational cost of retrieving the most relevant results.

2. LIP-KIMA ALGORITHM:

1. Linear Invariant Process (LIP):

 Refers to the use of linear transformations or models that ensure the


process remains consistent and scalable across data sets or inputs.
 Often involves features that are independent of scaling, ensuring
results remain meaningful regardless of data magnitude.
 Example in a Q&A platform:

Features like upvotes, user reputation, and content quality can be


scaled linearly to normalize their influence.

2. Knowledge Impact Maximization (KIMA):

 Focuses on enhancing the impact and relevance of knowledge


shared within the system.
 This could involve identifying key contributors, boosting
underrepresented yet high-quality responses, and ensuring
maximum utility for the end-user.
 Example in freelancing/job platforms:
 Maximizing matches between job postings and
freelancers to ensure satisfaction for both parties.
3. Relevance Ranking:
 Integrates multiple factors (e.g., semantic relevance, user
behavior, content quality) to rank responses or matches in a
meaningful order.
 Predicts the likelihood of a response or freelancer being the most
useful to a user.

SOFTWARE DESCRIPTION

Front End:

Java:

Java is a set of several computer software and specifications developed by Sun


Microsystems, later acquired by Oracle Corporation, that provides a system for
developing application software and deploying it in a cross-platform computing
environment. Java is used in a wide variety of computing platforms from
embedded devices and mobile phones to enterprise servers and supercomputers.
While less common, Java applets run in secure, sand boxed environments to
provide many features of native applications and can be embedded in HTML
pages.

Writing in the Java programming language is the primary way to produce code
that will be deployed as byte code in a Java Virtual Machine (JVM); byte code
compilers are also available for other languages, including Ada, JavaScript,
Python, and Ruby. In addition, several languages have been designed to run
natively on the JVM, including Scala, Clojure and Groovy. Java syntax borrows
heavily from C and C++, but object-oriented features are modeled after Smalltalk
and Objective-C.[11] Java eschews certain low-level constructs such as pointers
and has a very simple memory model where every object is allocated on the heap
and all variables of object types are references. Memory management is handled
through integrated automatic garbage collection performed by the JVM.

Netbeans:

NetBeans is a software development platform written in Java. The NetBeans


Platform allows applications to be developed from a set of modular software
components called modules. Applications based on the NetBeans Platform,
including the NetBeans integrated development environment (IDE), can be
extended by third party developers.The NetBeans IDE is primarily intended for
development in Java, but also supports other languages, in particular PHP, C/C++
and HTML5.NetBeans is cross-platform and runs on Microsoft Windows, Mac OS
X, Linux, Solaris and other platforms supporting a compatible JVM. The NetBeans
Team actively support the product and seek feature suggestions from the wider
community.NetBeans began in 1996 as Xelfi (word play on Delphi),[7][8] a Java
IDE student project under the guidance of the Faculty of Mathematics and Physics
at Charles University in Prague. In 1997 Roman Staněk formed a company around
the project and produced commercial versions of the NetBeans IDE until it was
bought by Sun Microsystems in 1999. Sun open-sourced the NetBeans IDE in June
of the following year. Since then, the NetBeans community has continued to grow.
[9] In 2010, Sun (and thus NetBeans) was acquired by Oracle.
NetBeans IDE 6.0 introduced support for developing IDE modules and rich
client applications based on the NetBeans platform, a Java Swing GUI builder
(formerly known as "Project Matisse"), improved CVS support, WebLogic 9 and
JBoss 4 support, and many editor enhancements. NetBeans 6 is available in official
repositories of major Linux distributions.NetBeans IDE 6.5, released in November
2008, extended the existing Java EE features (including Java Persistence support,
EJB 3 and JAX-WS). Additionally, the NetBeans Enterprise Pack supports
development of Java EE 5 enterprise applications, including SOA visual design
tools, XML schema tools, web services orchestration (for BPEL), and UML
modeling. The NetBeans IDE Bundle for C/C++ supports C/C++ and FORTRAN
development.

NetBeans IDE 6.8 is the first IDE to provide complete support of Java EE 6
and the GlassFish Enterprise Server v3. Developers hosting their open-source
projects on kenai.com additionally benefit from instant messaging and issue
tracking integration and navigation right in the IDE, support for web application
development with PHP 5.3 and the Symfony framework, and improved code
completion, layouting, hints and navigation in JavaFX projects.

NetBeans IDE 6.9, released in June 2010, added support for OSGi, Spring
Framework 3.0, Java EE dependency injection (JSR-299), Zend Framework for
PHP, and easier code navigation (such as "Is Overridden/Implemented"
annotations), formatting, hints, and refactoring across several languages.

NetBeans IDE 7.0 was released in April 2011. On August 1, 2011, the
NetBeans Team released NetBeans IDE 7.0.1, which has full support for the
official release of the Java SE 7 platform.[10]
 NetBeans IDE 7.3 was released in February 2013 which added support for
HTML5 and web technologies.
 NetBeans IDE 7.4 was released on October 15, 2013.
 NetBeans IDE 8.0 was released on March 18, 2014.
 NetBeans has a roadmap document for release plans.

Back End:

MySQL, the most popular Open Source SQL database management system, is
developed, distributed, and supported by Oracle Corporation.The MySQL Web site
(http://www.mysql.com/) provides the latest information about MySQL software.

MySQL is a database management system:

A database is a structured collection of data. It may be anything from a simple


shopping list to a picture gallery or the vast amounts of information in a corporate
network. To add, access, and process data stored in a computer database, you need
a database management system such as MySQL Server. Since computers are very
good at handling large amounts of data, database management systems play a
central role in computing, as standalone utilities, or as parts of other applications.

MySQL databases are relational:


A relational database stores data in separate tables rather than putting all the data
in one big storeroom. The database structures are organized into physical files
optimized for speed. The logical model, with objects such as databases, tables,
views, rows, and columns, offers a flexible programming environment. You set up
rules governing the relationships between different data fields, such as one-to-one,
one-to-many, unique, required or optional, and “pointers” between different tables.
The database enforces these rules, so that with a well-designed database, your
application never sees inconsistent, duplicate, orphan, out-of-date, or missing data.

The SQL part of “MySQL” stands for “Structured Query Language”. SQL is the
most common standardized language used to access databases. Depending on your
programming environment, you might enter SQL directly (for example, to generate
reports), embed SQL statements into code written in another language, or use a
language-specific API that hides the SQL syntax.

SQL is defined by the ANSI/ISO SQL Standard. The SQL standard has been
evolving since 1986 and several versions exist. In this manual, “SQL-92” refers to
the standard released in 1992, “SQL:1999” refers to the standard released in 1999,
and “SQL:2003” refers to the current version of the standard. We use the phrase
“the SQL standard” to mean the current version of the SQL Standard at any time.

MySQL software is Open Source:

Open Source means that it is possible for anyone to use and modify the software.
Anybody can download the MySQL software from the Internet and use it without
paying anything. If you wish, you may study the source code and change it to suit
your needs. The MySQL software uses the GPL (GNU General Public License),
http://www.fsf.org/licenses/, to define what you may and may not do with the
software in different situations. If you feel uncomfortable with the GPL or need to
embed MySQL code into a commercial application, you can buy a commercially
licensed version from us. See the MySQL Licensing Overview for more
information (http://www.mysql.com/company/legal/licensing/).

The MySQL Database Server is very fast, reliable, scalable, and easy to use:

If that is what you are looking for, you should give it a try. MySQL Server
can run comfortably on a desktop or laptop, alongside your other applications, web
servers, and so on, requiring little or no attention. If you dedicate an entire machine
to MySQL, you can adjust the settings to take advantage of all the memory, CPU
power, and I/O capacity available. MySQL can also scale up to clusters of
machines, networked together.

You can find a performance comparison of MySQL Server with other


database managers on our benchmark page. See Section 7.1.3, “The MySQL
Benchmark Suite”.

MySQL Server was originally developed to handle large databases much


faster than existing solutions and has been successfully used in highly demanding
production environments for several years. Although under constant development,
MySQL Server today offers a rich and useful set of functions. Its connectivity,
speed, and security make MySQL Server highly suited for accessing databases on
the Internet.

MySQL Server works in client/server or embedded systems:


The MySQL Database Software is a client/server system that consists of a multi-
threaded SQL server that supports different backends, several different client
programs and libraries, administrative tools, and a wide range of application
programming interfaces (APIs).

We also provide MySQL Server as an embedded multi-threaded library that


you can link into your application to get a smaller, faster, easier-to-manage
standalone product.

A large amount of contributed MySQL software is available:

MySQL Server has a practical set of features developed in close cooperation


with our users. It is very likely that your favorite application or language supports
the MySQL Database Server.

TESTING

JAVA

Java is a programming language originally developed by James Gosling at

Sun Microsystems now a subsidiary of Oracle Corporation, and released in 1995 as

a core component of Sun Microsystems' Java platform. The language derives much

of its syntax from C and C++ but has a simpler object model and fewer low-level

facilities. Java applications are typically compiled to byte code (class file) that can

run on any Java Virtual Machine (JVM) regardless of computer architecture. Java

is general-purpose, concurrent, class-based, and object-oriented, and is specifically


designed to have as few implementation dependencies as possible. It is intended to

let application developers "write once, run anywhere".

The original and reference implementation Java compilers, virtual machines,

and class libraries were developed by Sun from 1995. As of May 2007, in

compliance with the specifications of the Java Community Process, Sun relicensed

most of their Java technologies under the GNU General Public License. Others

have also developed alternative implementations of these Sun technologies, such as

the GNU Compiler for Java and GNU Class path.

Java Platform

One characteristic of Java is portability, which means that computer

programs written in the Java language must run similarly on any supported

hardware/operating-system platform. This is achieved by compiling the Java

language code to an intermediate representation called Java bytecode, instead of

directly to platform-specific machine code. Java bytecode instructions are

analogous to machine code, but are intended to be interpreted by a virtual machine

(VM) written specifically for the host hardware. End-users commonly use a Java

Runtime Environment (JRE) installed on their own machine for standalone Java

applications, or in a Web browser for Java applets.


Standardized libraries provide a generic way to access host-specific features

such as graphics, threading and networking.

A major benefit of using bytecode is porting. However, the overhead of

interpretation means that interpreted programs almost always run more slowly than

programs compiled to native executables would, and Java suffered a reputation for

poor performance. This gap has been narrowed by a number of optimization

techniques introduced in the more recent JVM implementations.

Implementations

Sun Microsystems officially licenses the Java Standard Edition platform for

Linux, Mac OS X and Solaris. Although in the past Sun has licensed Java to

Microsoft, the license has expired and has not been renewed. Through a network of

third-party vendors and licensees, alternative Java environments are available for

these and other platforms.

Sun's trademark license for usage of the Java brand insists that all

implementations be "compatible". This resulted in a legal dispute with Microsoft

after Sun claimed that the Microsoft implementation did not support RMI or JNI

and had added platform-specific features of their own. Sun sued in 1997, and in

2001 won a settlement of $20 million as well as a court order enforcing the terms

of the license from Sun. As a result, Microsoft no longer ships Java with Windows,
and in recent versions of Windows, Internet Explorer cannot support Java applets

without a third-party plugin. Sun, and others, has made available free Java run-time

systems for those and other versions of Windows.

Platform-independent Java is essential to the Java EE strategy, and an even

more rigorous validation is required to certify an implementation. This

environment enables portable server-side applications, such as Web services, Java

Servlets, and Enterprise JavaBeans, as well as with embedded systems based on

OSGi, using Embedded Java environments. Through the new GlassFish project,

Sun is working to create a fully functional, unified open source implementation of

the Java EE technologies.

Sun also distributes a superset of the JRE called the Java Development Kit

(commonly known as the JDK), which includes development tools such as the Java

compiler, Javadoc, Jar and debugger.

Performance

Programs written in Java have a reputation for being slower and requiring

more memory than those written in some other languages. However, Java

programs' execution speed improved significantly with the introduction of Just-in-

time compilation in 1997/1998 for Java 1.1, the addition of language features
supporting better code analysis (such as inner classes, StringBuffer class, optional

assertions, ect.), and optimizations in the Java Virtual Machine itself, such as

HotSpot becoming the default for Sun's JVM in 2000.

To boost even further the speed performances that can be achieved using the

Java language Systronix made JStik, a microcontroller based on the aJile Systems

line of embedded Java processors.

Automatic memory management

Java uses an automatic garbage collector to manage memory in the object

lifecycle. The programmer determines when objects are created, and the Java

runtime is responsible for recovering the memory once objects are no longer in

use. Once no references to an object remain, the unreachable memory becomes

eligible to be freed automatically by the garbage collector. Something similar to a

memory leak may still occur if a programmer's code holds a reference to an object

that is no longer needed, typically when objects that are no longer needed are

stored in containers that are still in use. If methods for a nonexistent object are

called, a "null pointer exception" is thrown.

One of the ideas behind Java's automatic memory management model is that

programmers be spared the burden of having to perform manual memory


management. In some languages memory for the creation of objects is implicitly

allocated on the stack, or explicitly allocated and deallocated from the heap. Either

way, the responsibility of managing memory resides with the programmer. If the

program does not deallocate an object, a memory leak occurs. If the program

attempts to access or deallocate memory that has already been deallocated, the

result is undefined and difficult to predict, and the program is likely to become

unstable and/or crash. This can be partially remedied by the use of smart pointers,

but these add overhead and complexity. Note that garbage collection does not

prevent 'logical' memory leaks, i.e. those where the memory is still referenced but

never used.

Garbage collection may happen at any time. Ideally, it will occur when a

program is idle. It is guaranteed to be triggered if there is insufficient free memory

on the heap to allocate a new object; this can cause a program to stall momentarily.

Explicit memory management is not possible in Java.

Java does not support C/C++ style pointer arithmetic, where object

addresses and unsigned integers (usually long integers) can be used


interchangeably. This allows the garbage collector to relocate referenced objects,

and ensures type safety and security.

As in C++ and some other object-oriented languages, variables of Java's

primitive data types are not objects. Values of primitive types are either stored

directly in fields (for objects) or on the stack (for methods) rather than on the heap,

as commonly true for objects (but see Escape analysis). This was a conscious

decision by Java's designers for performance reasons. Because of this, Java was not

considered to be a pure object-oriented programming language. However, as of

Java 5.0, autoboxing enables programmers to proceed as if primitive types are

instances of their wrapper classes.

MySQL

MySQL is a relational database management system (RDBMS) that runs as

a server providing multi-user access to a number of databases. The MySQL

development project has made its source code available under the terms of the

GNU General Public License, as well as under a variety of proprietary agreements.

MySQL is owned and sponsored by a single for-profit firm, the Swedish company
MySQL AB, now owned by Sun Microsystems, a subsidiary of Oracle

Corporation.

Members of the MySQL community have created several forks such as

Drizzle and MariaDB. Both forks were in progress long before the Oracle

acquisition (Drizzle was announced 8 months before the Sun acquisition).

Free-software projects that require a full-featured database management

system often use MySQL. Such projects include (for example) WordPress, phpBB

and other software built on the LAMP software stack. MySQL is also used in many

high-profile, large-scale World Wide Web products including Wikipedia, Google,

Drupal and Face book.

Uses

Many web applications use MySQL as the database component of a LAMP

software stack. Its popularity for use with web applications is closely tied to the

popularity of PHP, which is often combined with MySQL. Several high-traffic web

sites (including Flickr, Facebook, Wikipedia, Google (though not for searches),

Nokia and YouTube[11]) use MySQL for data storage and logging of user data.
Platforms and interfaces

MySQL code uses C and C++. The SQL parser uses yacc and a home-

brewed lexer, sql_lex.cc.

MySQL works on many different system platforms, including AIX, BSDi,

FreeBSD, HP-UX, i5/OS, Linux, Mac OS X, NetBSD, Novell NetWare,

OpenBSD, OpenSolaris, eComStation, OS/2 Warp, QNX, IRIX, Solaris, Symbian,

SunOS, SCO OpenServer, SCO UnixWare, Sanos, Tru64 and Microsoft Windows.

A port of MySQL to OpenVMS also exists.

All major programming languages with language-specific APIs include

Libraries for accessing MySQL databases. In addition, an ODBC interface called

MyODBC allows additional programming languages that support the ODBC

interface to communicate with a MySQL database, such as ASP or ColdFusion.

The MySQL server and official libraries are mostly implemented in ANSI C/ANSI

C++.

Management and Graphical Frontends

MySQL Workbench in Windows, displaying the Home Screen which

streamlines use of its full capabilities


MySQL is primarily an RDBMS and therefore ships with no GUI tools to

administer MySQL databases or manage data contained within. Users may use the

included command-line tools, or download MySQL Frontends from various parties

that have developed desktop software and web applications to manage MySQL

databases, build database structure, and work with data records.

Official

The official MySQL Workbench is a free integrated environment developed by

MySQL AB, that enables users to graphically administer MySQL databases and

visually design database structure. MySQL Workbench replaces the previous

package of software, MySQL GUI Tools. Similar to other third-party packages but

still considered the authoritative MySQL frontend, MySQL Workbench lets users

manage the following:

 Database design & modeling

 SQL development — replacing MySQL Query Browser

 Database administration — replacing MySQL Administrator

MySQL Workbench is available in two editions, the regular free and open source

Community Edition which may be downloaded from the MySQL website, and the
proprietary Standard Edition which extends and improves the feature set of the

Community Edition.

Third party

Several other third-party proprietary and free graphical administration

applications (or "Frontends") are available that integrate with MySQL and enable

users to work with database structure and data visually. Some well-known

frontends are:

 phpMyAdmin - a free Web-based frontend widely installed by Web hosts

worldwide, since it is developed in PHP and only requires the LAMP stack to

run.

 HeidiSQL - a full featured free frontend that runs on Windows, and can

connect to local or remote MySQL servers to manage databases, tables,

column structure, and individual data records. Also supports specialised GUI

features for date/time fields and enumerated multiple-value fields.

 Navicat - a series of proprietary graphical database management applications,

developed for Windows, Macintosh and Linux.

 Other available proprietary MySQL frontends include Adminer, Aqua Data

Studio, dbForge Studio for MySQL, Epictetus, Oracle SQL Developer,

SchemaBank, SQLyog, SQLPro SQL Client, Toad and Toad Data Modeler.
Deployment

MySQL can be built and installed manually from source code, but this can

be tedious so it is more commonly installed from a binary package unless special

customizations are required. On most Linux distributions the package management

system can download and install MySQL with minimal effort, though further

configuration is often required to adjust security and optimization settings.

Though MySQL began as a low-end alternative to more powerful

proprietary databases, it has gradually evolved to support higher-scale needs as

well.

It is still most commonly used in small to medium scale single-server

deployments, either as a component in a LAMP based web application or as a

standalone database server. Much of MySQL's appeal originates in its relative

simplicity and ease of use, which is enabled by an ecosystem of open source tools

such as phpMyAdmin.

In the medium range, MySQL can be scaled by deploying it on more

powerful hardware, such as a multi-processor server with gigabytes of memory.


There are however limits to how far performance can scale on a single

server, so on larger scales, multi-server MySQL deployments are required to

provide improved performance and reliability. A typical high-end configuration

can include a powerful master database which handles data write operations and is

replicated to multiple slaves that handle all read operations. The master server

synchronizes continually with its slaves so in the event of failure a slave can be

promoted to become the new master, minimizing downtime. Further improvements

in performance can be achieved by caching the results from database queries in

memory using memcached, or breaking down a database into smaller chunks

called shards which can be spread across a number of distributed server clusters.

Features

As of April 2009, MySQL offers MySQL 5.1 in two different variants: the

MySQL Community Server and Enterprise Server. They have a common code base

and include the following features:

 A broad subset of ANSI SQL 99, as well as extensions

 Cross-platform support

 Stored procedures

 Triggers
 Cursors

 Updatable Views

 True Varchar support

 INFORMATION_SCHEMA

 Strict mode

 X/Open XA distributed transaction processing (DTP) support; two phase

commit as part of this, using Oracle's InnoDB engine

 Independent storage engines (MyISAM for read speed, InnoDB for

transactions and referential integrity, MySQL Archive for storing historical

data in little space)

 Transactions with the InnoDB, BDB and Cluster storage engines; savepoints

with InnoDB

 SSL support

 Query caching

 Sub-SELECTs (i.e. nested SELECTs)

 Replication support (i.e. Master-Master Replication & Master-Slave

Replication) with one master per slave, many slaves per master, no automatic

support for multiple masters per slave.

 Full-text indexing (Index_(database)) and searching using MyISAM engine

 Embedded database library


 Partial Unicode support (UTF-8 and UCS-2 encoded strings are limited to the

BMP)

 Partial ACID compliance (full compliance only when using the non-default

storage engines InnoDB, BDB and Cluster)

 Shared-nothing clustering through MySQL Cluster

 Hot backup (via mysqlhotcopy) under certain conditions

The developers release monthly versions of the MySQL Enterprise Server. The

sources can be obtained either from MySQL's customer-only Enterprise site or

from MySQL's Bazaar repository, both under the GPL license. The MySQL

Community Server is published on an unspecified schedule under the GPL and

contains all bug fixes that were shipped with the last MySQL Enterprise Server

release. Binaries are no longer provided by MySQL for every release of the

Community Server.

Distinguishing features

MySQL implements the following features, which some other RDBMS systems

may not:
 Multiple storage engines, allowing one to choose the one that is most

effective for each table in the application (in MySQL 5.0, storage engines

must be compiled in; in MySQL 5.1, storage engines can be dynamically

loaded at run time):

o Native storage engines (MyISAM, Falcon, Merge, Memory (heap),

Federated, Archive, CSV, Blackhole, Cluster, Berkeley DB,

EXAMPLE, and Maria)

o Partner-developed storage engines (InnoDB, solidDB, NitroEDB,

Infobright (formerly Brighthouse), Kickfire, XtraDB, IBM DB2[22])

o Community-developed storage engines (memcache_engine, httpd,

PBXT, Revision Engine)

o Custom storage engines

 Commit grouping, gathering multiple transactions from multiple connections

together to increase the number of commits per second.

Product History

Milestones in MySQL development include:

 Original development of MySQL by Michael Widenius and David Axmark

beginning in 1994
 First internal release on 23 May 1995

 Windows version was released on 8 January 1998 for Windows 95 and NT

 Version 3.23: beta from June 2000, production release January 2001

 Version 4.0: beta from August 2002, production release March 2003 (unions)

 Version 4.01: beta from August 2003, Jyoti adopts MySQL for database

tracking

 Version 4.1: beta from June 2004, production release October 2004 (R-trees

and B-trees, subqueries, prepared statements)

 Version 5.0: beta from March 2005, production release October 2005

(cursors, stored procedures, triggers, views, XA transactions)

The developer of the Federated Storage Engine states that "The Federated

Storage Engine is a proof-of-concept storage engine", but the main distributions of

MySQL version 5.0 included it and turned it on by default. Documentation of some

of the short-comings appears in "MySQL Federated Tables: The Missing Manual".

 Sun Microsystems acquired MySQL AB on 26 February 2008.

 Version 5.1: production release 27 November 2008 (event scheduler,

partitioning, plugin API, row-based replication, server log tables)

Version 5.1 contained 20 known crashing and wrong result bugs in addition to

the 35 present in version 5.0.


MySQL 5.1 and 6.0 showed poor performance when used for data warehousing

— partly due to its inability to utilize multiple CPU cores for processing a single

query.

 Oracle acquired Sun Microsystems on January 27, 2010.Oracle and Sun

Future releases

The MySQL 6 roadmap outlines support for:

 Referential integrity and Foreign key support for all storage engines is

targeted for release in MySQL 6.1 (although it has been present since version

3.23.44 for InnoDB).

 Support for supplementary Unicode characters, beyond the 65,536 characters

of the Basic Multilingual Plane (BMP); announced for MySQL 6.0.

 A new storage engine called Falcon. A preview of Falcon is available on

MySQL's website.

The 2006 roadmap for future versions plans support for parallelization.

Support and licensing

Via MySQL Enterprise MySQL AB offers support itself, including a 24/7

service with 30-minute response time. The support team has direct access to the
developers as necessary to handle problems. In addition, it hosts forums and

mailing lists, employees and other users are often available in several IRC channels

providing assistance.

In addition to official product support from Sun, other companies offer

support and services related to usage of MySQL. For example, Pythian offers full

database administration, architecture, optimization and training services. Percona

and 42sql offer services related to optimization and Monty Program Ab offers non-

recurring engineering such as patches to MySQL. OpenQuery provides MySQL

training.

Buyers of MySQL Enterprise have access to binaries and software certified

for their particular operating system, and access to monthly binary updates with the

latest bug-fixes. Several levels of Enterprise membership are available, with

varying response times and features ranging from how to and emergency support

through server performance tuning and system architecture advice. The MySQL

Network Monitoring and Advisory Service monitoring tool for database servers is

available only to MySQL Enterprise customers.

Potential users can install MySQL Server as free software under the GNU

General Public License (GPL), and the MySQL Enterprise subscriptions include a

GPL version of the server, with a traditional proprietary version available on


request at no additional cost for cases where the intended use is incompatible with

the GPL.

Both the MySQL server software itself and the client libraries use dual-

licensing distribution. Users may choose the GPL,[29] which MySQL has

extended with a FLOSS License Exception. It allows Software licensed under

other OSI-compliant open source licenses, which are not compatible to the GPL, to

link against the MySQL client libraries.

Customers that do not wish to follow the terms of the GPL may purchase a
proprietary license.Like many open-source programs, MySQL has trademarked its
name, which others may use only with the trademark holder's permission.

SOFTWARE TESTING:

GENERAL

The purpose of testing is to discover errors. Testing is the process of trying

to discover every conceivable fault or weakness in a work product. It provides a

way to check the functionality of components, subassemblies, assemblies and/or a

finished product It is the process of exercising software with the intent of ensuring

that the Software system meets its requirements and user expectations and does not

fail in an unacceptable manner. There are various types of test. Each test type

addresses a specific testing requirement.


DEVELOPING METHODOLOGIES:

To overcome multiple problems discussed earlier, block chain implemented by

hyper ledger fabric was proposed to replace the existing system. The hyper ledger

fabric is a block chain platform that is an open source and business specific

distributed ledger technology. The working has been divided into 2 modules where

module 1 gives a detailed description about the working of the administrator with

regards to registration and invoking the smart contracts where as module 2 gives a

detailed brief of procedures related to change of ownership and completion of the

purchasement of land.

Types of Tests

Unit testing

Unit testing involves the design of test cases that validate that the internal

program logic is functioning properly, and that program input produces valid

outputs. All decision branches and internal code flow should be validated. It is the

testing of individual software units of the application .it is done after the

completion of an individual unit before integration. This is a structural testing, that

relies on knowledge of its construction and is invasive. Unit tests perform basic

tests at component level and test a specific business process, application, and/or

system configuration. Unit tests ensure that each unique path of a business process
performs accurately to the documented specifications and contains clearly defined

inputs and expected results.

Functional test

Functional tests provide systematic demonstrations that functions tested are

available as specified by the business and technical requirements, system

documentation, and user manuals.

Functional testing is centered on the following items:

Valid Input : identified classes of valid input must be accepted.

Invalid Input : identified classes of invalid input must be rejected.

Functions : identified functions must be exercised.

Output : identified classes of application outputs must be

exercised.

Systems/Procedures: interfacing systems or procedures must be invoked.

System Test

System testing ensures that the entire integrated software system meets

requirements. It tests a configuration to ensure known and predictable results. An


example of system testing is the configuration oriented system integration test.

System testing is based on process descriptions and flows, emphasizing pre-driven

process links and integration points.

Performance Test

The Performance test ensures that the output is produced within the time

limits, and the time taken by the system for compiling, giving response to the users

and request being send to the system for to retrieve the results.

Integration Testing

Software integration testing is the incremental integration testing of two or

more integrated software components on a single platform to produce failures

caused by interface defects.

The task of the integration test is to check that components or software

applications, e.g. components in a software system or – one step up – software

applications at the company level – interact without error.

Acceptance Testing
User Acceptance Testing is a critical phase of any project and requires

significant participation by the end user. It also ensures that the system meets the

functional requirements.

Acceptance testing for Data Synchronization:

 The Acknowledge will be received by the Sender Node after the Packets are

received by the Destination Node

 The Route add operation is done only when there is a Route request in need

 The Status of Nodes information is done automatically in the Cache

Updating process

Build the test plan

Any project can be divided into units that can be further performed for

detailed processing. Then a testing strategy for each of this unit is carried out. Unit

testing helps to identity the possible bugs in the individual component, so the

component that has bugs can be identified and can be rectified from errors.

FEASIBILITY STUDY:
The feasibility of the project is analyzed in this phase and business proposal is

put forth with a very general plan for the project and some cost estimates.

During system analysis the feasibility study of the proposed system is to be

carried out. This is to ensure that the proposed system is not a burden to the

company. For feasibility analysis, some understanding of the major

requirements for the system is essential.

ECONOMICAL FEASIBILITY:

This study is carried out to check the economic impact that the system will

have on the organization. The amount of fund that the company can pour into the

research and development of the system is limited. The expenditures must be

justified. Thus the developed system as well within the budget and this was

achieved because most of the technologies used are freely available. Only the

customized products had to be purchased.

TECHNICAL FEASIBILITY :

This study is carried out to check the technical feasibility, that is, the

technical requirements of the system. Any system developed must not have a high

demand on the available technical resources. This will lead to high demands on the

available technical resources. This will lead to high demands being placed on the
client. The developed system must have a modest requirement, as only minimal or

null changes are required for implementing this system.

SOCIAL FEASIBILITY:

The aspect of study is to check the level of acceptance of the system by the user.
This includes the process of training the user to use the system efficiently. The user
must not feel threatened by the system, instead must accept it as a necessity. The
level of acceptance by the users solely depends on the methods that are employed
to educate the user about the system and to make him familiar with it. His level of
confidence must be raised so that he is also able to make some constructive
criticism, which is welcomed, as he is the final user of the system.

SAMPLE CODE:

import java.io.IOException;

import java.io.InputStream;

import java.io.PrintWriter;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;
import javax.servlet.ServletException;

import javax.servlet.annotation.MultipartConfig;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.Part;

@WebServlet("/userupload")

@MultipartConfig(maxFileSize = 16177215) // upload file's size up to 16MB

public class userupload extends HttpServlet {

// database connection settings

private String dbURL = "jdbc:mysql://172.17.1.111:3306/knowledge";

private String dbUser = "root";

private String dbPass = "admin";

protected void doPost(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

// gets values of text fields


PrintWriter out = response.getWriter();

String freename = request.getParameter("fname");

String email = request.getParameter("email");

String pass = request.getParameter("pass");

String mobile = request.getParameter("mobile");

String address = request.getParameter("address");

InputStream inputStream = null; // input stream of the upload file

// obtains the upload file part in this multipart request

Part filePart = request.getPart("photo");

if (filePart != null) {

// prints out some information for debugging

System.out.println(filePart.getName());

System.out.println(filePart.getSize());

System.out.println(filePart.getContentType());

// obtains input stream of the upload file

inputStream = filePart.getInputStream();

}
Connection conn = null; // connection to the database

String message = null; // message will be sent back to client

try {

// connects to the database

DriverManager.registerDriver(new com.mysql.jdbc.Driver());

conn = DriverManager.getConnection(dbURL, dbUser, dbPass);

// constructs SQL statement

String sql = "INSERT INTO user(username,email,pass,mobile,address,photo) values


(?,?,?,?,?,?)";

PreparedStatement statement = conn.prepareStatement(sql);

statement.setString(1, freename);

statement.setString(2, email);

statement.setString(3, pass);

statement.setString(4, mobile);

statement.setString(5, address);

if (inputStream != null) {

// fetches input stream of the upload file for the blob column

statement.setBlob(6, inputStream);
}

// sends the statement to the database server

int row = statement.executeUpdate();

if (row > 0) {

message = "File uploaded and saved into database";

response.sendRedirect("index.jsp");

} catch (SQLException ex) {

message = "ERROR: " + ex.getMessage();

//out.println(ex);

response.sendRedirect("already.jsp");

<%--
Document : FreelancerRegister

Created on : May 20, 2015, 5:15:57 PM

Author : sivakumar

--%>

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="utf-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1">

<title>About Us | Corlate</title>

<!-- core CSS -->

<link href="css/bootstrap.min.css" rel="stylesheet">

<link href="css/font-awesome.min.css" rel="stylesheet">

<link href="css/prettyPhoto.css" rel="stylesheet">

<link href="css/animate.min.css" rel="stylesheet">

<link href="css/main.css" rel="stylesheet">

<link href="css/responsive.css" rel="stylesheet">

<link href="css/freelancer.css" rel="stylesheet">


<script src="js/cussignup.js"></script>

<script src="placeholders.min.js.js"></script>

<!--[if lt IE 9]>

<script src="js/html5shiv.js"></script>user

<script src="js/respond.min.js"></script>

<![endif]-->

<link rel="shortcut icon" href="images/ico/favicon.ico">

<link rel="apple-touch-icon-precomposed" sizes="144x144" href="images/ico/apple-touch-icon-


144-precomposed.png">

<link rel="apple-touch-icon-precomposed" sizes="114x114" href="images/ico/apple-touch-icon-


114-precomposed.png">

<link rel="apple-touch-icon-precomposed" sizes="72x72" href="images/ico/apple-touch-icon-


72-precomposed.png">

<link rel="apple-touch-icon-precomposed" href="images/ico/apple-touch-icon-57-


precomposed.png">

<script type="text/javascript">

function isNumber(evt)

evt = (evt) ? evt : window.event;

var charCode = (evt.which) ? evt.which : evt.keyCode;


if (charCode > 31 && (charCode < 48 || charCode > 57)) {

return false;

return true;

function onlyAlphabets(e, t) {

try {

if (window.event) {

var charCode = window.event.keyCode;

else if (e) {

var charCode = e.which;

// alert(charCode);

if (charCode == 8 || charCode == 0 || charCode == 32)

{
return true;

else {

return true;

if ((charCode > 64 && charCode < 91) || (charCode > 96 && charCode < 123))

return true;

else

return false;

catch (err) {

alert(err.Description);

}
}

</script>

</head><!--/head-->

<body>

<header id="header">

<div class="top-bar">

<div class="container">

<div class="row">

<div class="col-sm-6 col-xs-4">

</div>

<div class="col-sm-6 col-xs-8">

<div class="social">

<blink><p style="color: white;font-weight: bold">Already have a Account ?&nbsp;&nbsp;<a


href="login.jsp"><button style="background: #C52D2F;height: 28px;width: 129px;color:
white;border-radius: 25px;font-weight: bold">Login</button></a></p></blink>

</div>

</div>

</div>
</div><!--/.container-->

</div><!--/.top-bar-->

<nav class="navbar navbar-inverse" role="banner">

<div class="container">

<div class="navbar-header">

<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-


collapse">

<span class="sr-only">Toggle navigation</span>

<span class="icon-bar"></span>

<span class="icon-bar"></span>

<span class="icon-bar"></span>

</button>

<a class="navbar-brand" href="index.jsp"><img src="logo1.png" style="margin-left: -


72px;margin-top: -20px" width="500px"alt="logo" height="40px" width="30px"></a>

</div>

<div class="collapse navbar-collapse navbar-right" style="">

<ul class="nav navbar-nav">

<li class="active"><a href="index.jsp">Home</a></li>

<li class="dropdown"><a href="about-us.html"class="dropdown-toggle" data-


toggle="dropdown">Registration <i class="fa fa-angle-down"></i>
<ul class="dropdown-menu">

<li><a href="user.jsp">User Registration </a></li>

<li><a href="FreelancerRegister.jsp">Freelancer Registration</a></li>

</ul>

</a></li>

<li><a href="newletter.jsp">Newsletter</a></li>

<li><a href="tips.jsp">Tricks and Tips</a></li>

<li><a href="adminlogin.jsp">Site Admin</a></li>

</ul>

</div>

</div><!--/.container-->

</nav><!--/nav-->

</header><!--/header-->

<section id="about-us">

<div class="container">
<div class="center wow fadeInDown">

<h2>Freelancer Registration</h2>

</div>

<!-- about us slider -->

<div id="about-slider">

<div id="carousel-slider" class="carousel slide" data-ride="carousel">

<!-- Indicators -->

<ol class="carousel-indicators visible-xs">

<li data-target="#carousel-slider" data-slide-to="0" class="active"></li>

<li data-target="#carousel-slider" data-slide-to="1"></li>

<li data-target="#carousel-slider" data-slide-to="2"></li>

</ol>

<div class="carousel-inner">

<div class="item active">

<img src="images/slider_one.jpg" class="img-responsive" alt="">

</div>

<div class="item">

<img src="images/slider_one.jpg" class="img-responsive" alt="">


</div>

<div class="item">

<img src="images/slider_one.jpg" class="img-responsive" alt="">

</div>

</div>

<a class="left carousel-control hidden-xs" href="#carousel-slider" data-slide="prev">

<i class="fa fa-angle-left"></i>

</a>

<a class=" right carousel-control hidden-xs"href="#carousel-slider" data-slide="next">

<i class="fa fa-angle-right"></i>

</a>

</div><!--/#carousel-slider-->

</div><!--/#about-slider-->

<hr>

<!-- Our Skill -->

<div class="skill-wrap clearfix">

<!--/.our-skill-->
<!-- our-team -->

<div class="team">

<div class="row clearfix">

<div class="col-md-4 col-sm-6">

<div class="single-profile-top wow fadeInDown" data-wow-duration="1000ms" data-wow-


delay="300ms">

<div class="media">

<div class="pull-left">

<a href="#"><img class="media-object" src="images/man1.jpg" alt=""></a>

</div>

<div class="media-body">

<h4>Jhon Doe</h4>

<h5>Founder and CEO</h5>

<ul class="tag clearfix">

<li class="btn"><a href="#">Web</a></li>

<li class="btn"><a href="#">Ui</a></li>

<li class="btn"><a href="#">Ux</a></li>

<li class="btn"><a href="#">Photoshop</a></li>

</ul>
<ul class="social_icons">

<li><a href="#"><i class="fa fa-facebook"></i></a></li>

<li><a href="#"><i class="fa fa-twitter"></i></a></li>

<li><a href="#"><i class="fa fa-google-plus"></i></a></li>

</ul>

</div>

</div><!--/.media -->

<p>There are many variations of passages of Lorem Ipsum available, but the majority have
suffered alteration in some form, by injected humour, or randomised words which don't look
even slightly believable.</p>

</div>

</div><!--/.col-lg-4 -->

<div class="col-md-4 col-sm-6 col-md-offset-2">

<form method="post" name="free" action="upload" enctype="multipart/form-data"


onsubmit="return reg();">

<table>

<tr><td><input type="text" id="fname"name="fname" placeholder="Freelancer Name"


style="height: 45px;width: 394px;"class="free" onkeypress="return onlyAlphabets(event, this);"
maxlength="20" onpaste="return false;"></td></tr>

<tr><td><input type="text" id="email"name="email" placeholder="Email Id(This is ur


Username )" style="height: 45px;width: 394px" class="free"></td></tr>
<tr><td><input type="password" id="pass"name="pass" placeholder="Enter Your
Password"style="height: 45px;width: 394px" class="free"></td></tr>

<tr><td><input type="text" id="mobile" name="mobile" placeholder="Enter your Mobile


Number"style="height: 45px;width: 394px" class="free"onkeypress="return isNumber(event)"
maxlength="10"></td></tr>

<tr><td><textarea name="address" id="address" placeholder="Enter your


Address"style="height: 100px;width: 394px" class="free"></textarea></td></tr>

<tr>

<td>

<select name="cata" class="free" id="cata">

<option style="background-color: mistyrose">Select Your Freelancer category</option>

<option>Software Coding</option>

<option>Graphics Designer</option>

<option>Content Writer </option>

</select>

</td>

</tr>

<tr>

<td class="free" style="border: none"><br></td>

</tr>

<tr>

<td class="free" style="border: none"><u>Upload your Photo </u></td>


</tr>

</table>

<input type="file" name="photo" id="photo"class="free"placeholder="Upload your Photo"


accept="image/x-png, image/gif, image/jpeg">

<input type="submit" value="Register"class="free" style="width: 396px;background-


color:green;color: white">

</form>

</div><!--/.col-lg-4 -->

</div><!--/.row -->

<div class="row team-bar">

<div class="first-one-arrow hidden-xs">

<hr>

</div>

<div class="first-arrow hidden-xs">

<hr><i class="fa fa-angle-up"></i>

</div>

<div class="second-arrow hidden-xs">

<hr><i class="fa fa-angle-down"></i>

</div>

<div class="third-arrow hidden-xs">

<hr><i class="fa fa-angle-up"></i>


</div>

<div class="fourth-arrow hidden-xs">

<hr><i class="fa fa-angle-down"></i>

</div>

</div><!--skill_border-->

<div class="row clearfix">

<div class="col-md-4 col-sm-6 col-md-offset-2">

<div class="single-profile-bottom wow fadeInUp" data-wow-duration="1000ms" data-wow-


delay="600ms">

<div class="media">

<div class="pull-left">

<a href="#"><img class="media-object" src="images/man3.jpg" alt=""></a>

</div>

<div class="media-body">

<h4>Jhon Doe</h4>

<h5>Founder and CEO</h5>

<ul class="tag clearfix">

<li class="btn"><a href="#">Web</a></li>

<li class="btn"><a href="#">Ui</a></li>


<li class="btn"><a href="#">Ux</a></li>

<li class="btn"><a href="#">Photoshop</a></li>

</ul>

<ul class="social_icons">

<li><a href="#"><i class="fa fa-facebook"></i></a></li>

<li><a href="#"><i class="fa fa-twitter"></i></a></li>

<li><a href="#"><i class="fa fa-google-plus"></i></a></li>

</ul>

</div>

</div><!--/.media -->

<p>There are many variations of passages of Lorem Ipsum available, but the majority have
suffered alteration in some form, by injected humour, or randomised words which don't look
even slightly believable.</p>

</div>

</div>

<div class="col-md-4 col-sm-6 col-md-offset-2">

<div class="single-profile-bottom wow fadeInUp" data-wow-duration="1000ms" data-wow-


delay="600ms">

<div class="media">

<div class="pull-left">

<a href="#"><img class="media-object" src="images/man4.jpg" alt=""></a>

</div>
<div class="media-body">

<h4>Jhon Doe</h4>

<h5>Founder and CEO</h5>

<ul class="tag clearfix">

<li class="btn"><a href="#">Web</a></li>

<li class="btn"><a href="#">Ui</a></li>

<li class="btn"><a href="#">Ux</a></li>

<li class="btn"><a href="#">Photoshop</a></li>

</ul>

<ul class="social_icons">

<li><a href="#"><i class="fa fa-facebook"></i></a></li>

<li><a href="#"><i class="fa fa-twitter"></i></a></li>

<li><a href="#"><i class="fa fa-google-plus"></i></a></li>

</ul>

</div>

</div><!--/.media -->

<p>There are many variations of passages of Lorem Ipsum available, but the majority have
suffered alteration in some form, by injected humour, or randomised words which don't look
even slightly believable.</p>

</div>

</div>

</div> <!--/.row-->
</div><!--section-->

</div>

</div><!--/.container-->

</section><!--/about-us-->

<footer id="footer" class="midnight-blue">

<div class="container">

<div class="row">

<div class="col-sm-6" style="margin-left: 314px">

&copy; <a target="_blank" href="index.jsp">Online knowledge Transfer Freelancer portal </a>.


All Rights Reserved.

</div>

<div class="col-sm-6">

<ul class="pull-right">

</ul>

</div>

</div>

</div>

</footer><!--/#footer-->
<script src="js/jquery.js"></script>

<script type="text/javascript">

$('.carousel').carousel()

</script>

<script src="js/bootstrap.min.js"></script>

<script src="js/jquery.prettyPhoto.js"></script>

<script src="js/jquery.isotope.min.js"></script>

<script src="js/main.js"></script>

<script src="js/wow.min.js"></script>

</body>

</html>

SCREENSHOTS:
HOME PAGE:

USERHOME PAGE:

FREELANCER LIST:
VIEW TIPS AND TRICKS:

ADMIN UPDATE CONTENT:


FUTURE WORK:

Future enhancements for the platform aim to improve functionality and user satisfaction.
Matchmaking features will connect users with freelancers who best meet their project
requirements, ensuring better outcomes. Blockchain-based smart contracts will provide secure
and transparent payment solutions, fostering trust between users and freelancers. Personalized
dashboards will offer tailored insights and analytics, enabling efficient management of tasks,
jobs, and performance metrics. Fraud detection mechanisms will help maintain the integrity of
the platform by preventing fake jobs or low-quality responses. These enhancements will make
the platform more reliable, efficient, and user-friendly for both freelancers and users.

CONCLUSION:
In conclusion, the proposed system offers a unique and integrated solution by combining a
freelancing job portal with an optimized Q&A platform, addressing key challenges faced by
users in existing systems. By leveraging a voting prediction algorithm, the platform ensures
efficient and accurate answer retrieval, while also providing seamless access to skilled
freelancers for complex tasks. This combination enhances user satisfaction, streamlines
workflows, and fosters collaboration, allowing users to find both immediate solutions to their
queries and long-term assistance for project execution. The system is designed for scalability and
reliability, ensuring it can grow alongside its user base. Ultimately, this platform aims to improve
efficiency, productivity, and overall user experience, offering a comprehensive solution that
meets the evolving needs of users and freelancers alike.

REFERENCES:

[1] PUJI CATUR SISWIPRAPTINI, HARCO LESLIE HENDRIC SPITS WARNARS, ARIEF
RAMADHAN AND WIDODO BUDIHARTO. Information Technology Job Profile Using
Average-Linkage Hierarchical Clustering Analysis. VOLUME 11, pp. 94647 - 94663, 01
September 2023.

[2] IBRAHIM RAHHAL, KATHLEEN M. CARLEY, ISMAIL KASSOU AND MOUNIR


GHOGHO. Two Stage Job Title Identification System for Online Job Advertisements.
VOLUME 11, pp.19073 - 19092, 22 February 2023.

[3] ROBERT KWIECIŃSKI, GRZEGORZ MELNICZAK , AND TOMASZ GÓRECKI.


Comparison of Real-Time and Batch Job Recommendations. VOLUME 11, pp. 20553 - 20559,
27 February 2023.

[4] SYED MAHBUB , ERIC PARDEDE AND A. S. M. KAYES. Online Recruitment Fraud
Detection: A Study on Contextual Features in Australian Job Industries. VOLUME 10, pp.
82776 - 82787, 08 August 2022.
[5] SAEED ASHRAFI, BABAK MAJIDI, EHSAN AKHTARKAVAN AND SEYED
HOSSEIN RAZAVI HAJIAGHA. Efficient Resume-Based Re-Education for Career
Recommendation in Rapidly Evolving Job Markets. VOLUME 11, pp. 124350 - 124367, 02
November 2023.

[6] P. Mahalakshmi and N. S. Fatima, ‘‘Summarization of text and image captioning in


information retrieval using deep learning techniques,’’ IEEE Access, vol. 10, pp. 18289–18297,
2022.

[7] F. Gurcan and N. E. Cagiltay, ‘‘Exploratory analysis of topic interests and their evolution in
bioinformatics research using semantic text mining and probabilistic topic modeling,’’ IEEE
Access, vol. 10, pp. 31480–31493, 2022.

[8] K. Abbas, M. K. Hasan, A. Abbasi, U. A. Mokhtar, A. Khan, S. N. H. S. Abdullah, S. Dong,


S. Islam, D. Alboaneen, and F. R. A. Ahmed, ‘‘Predicting the future popularity of academic
publications using deep learning by considering it as temporal citation networks,’’ IEEE Access,
vol. 11, pp. 83052–83068, 2023.

[9] I.Rahhal, K. Carley, K. Ismail, and N. Sbihi, ‘‘Education path: Student orientation based on
the job market needs,’’ in Proc. IEEE Global Eng. Educ. Conf. (EDUCON), Mar. 2022, pp.
1365–1373.

[10] Q. Guo, F. Zhuang, C. Qin, H. Zhu, X. Xie, H. Xiong, and Q. He, ‘‘A survey on knowledge
graph-based recommender systems,’’ IEEE Trans. Knowl. Data Eng., vol. 34, no. 8, pp. 3549–
3568, Aug. 2022.

You might also like