choose a man — final presentation at tongji university shanghai
DESCRIPTION
Choose a man — Final Presentation at Tongji University Shanghai This project was for our Java EE course at Tongji University in Shanghai, China. The ideas come from an online dating service in France (AdopteUnMec.com) with a copycat approach for the Chinese market. The goal of this presentation was to present the final presentation of our project. We made the presentation the 18th June 2013 for the Java EE course. Team : Adrien ABAD (EPITECH 2014) Romain CAPOT (EPITECH 2014) Nicolas DANINO (EPITECH 2014) Sylvain DEVAUX (EPITECH 2014) Bertrand NGUYEN-HAO (EPITECH 2014) Suresh RAJALINGAM (EPITECH 2014) Roger TAN (EPITECH 2014)TRANSCRIPT
![Page 1: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/1.jpg)
Choose a man Love is complicated, shopping is simple
Java EE - Tongji University Shanghai
IntroducingThe new online dating service in China
![Page 2: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/2.jpg)
The idea
1
![Page 3: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/3.jpg)
Boys are pr ducts
Girls are cust mers
Online dating serviceWhere
![Page 4: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/4.jpg)
Our values
E-commerce styleGameDedicated to girls
![Page 5: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/5.jpg)
The team
2
![Page 6: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/6.jpg)
RogerTan
![Page 7: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/7.jpg)
BertrandNguyen-Hao
![Page 8: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/8.jpg)
RomainCapot
![Page 9: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/9.jpg)
NicolasDanino
![Page 10: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/10.jpg)
SureshRajalingam
![Page 11: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/11.jpg)
SylvainDevaux
![Page 12: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/12.jpg)
AdrienAbad
![Page 13: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/13.jpg)
7 members2 Team
![Page 14: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/14.jpg)
Technologies
3
![Page 15: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/15.jpg)
1 Project
![Page 16: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/16.jpg)
Java
JavaServer Faces
Hibernate Framework
PrimeFaces
Google Maps API
Yoda-Time
Tomahawk
Compass
Mustache.js
Socket.io
jQuery
HTML5
CSS3
AJAX
Node.js
MySQL
16Technologies
![Page 17: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/17.jpg)
The way to love
3
![Page 18: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/18.jpg)
Sign-up
![Page 19: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/19.jpg)
Fill herprofile
![Page 20: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/20.jpg)
Receive a charmfrom a guy
![Page 21: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/21.jpg)
Talk
Put the handsome guy
in her cart
![Page 22: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/22.jpg)
Talk
Talk
![Page 23: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/23.jpg)
And more...
Talk
![Page 24: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/24.jpg)
Demo
4
![Page 25: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/25.jpg)
DEMO
![Page 26: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/26.jpg)
Architecture
5
![Page 27: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/27.jpg)
Model ViewController
![Page 28: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/28.jpg)
Model ViewController
![Page 29: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/29.jpg)
![Page 30: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/30.jpg)
![Page 31: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/31.jpg)
![Page 32: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/32.jpg)
![Page 33: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/33.jpg)
Code
5
![Page 34: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/34.jpg)
The map Research Home Registration Notification
We are going to explain you the operationof five elements of the website
![Page 35: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/35.jpg)
The map
![Page 36: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/36.jpg)
City + Region
1
We have the city and the regionof each user in the database
The map
![Page 37: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/37.jpg)
Google MapsAPI
City + Region
1 2
We sends the city and the region to the Google Maps API
The map
![Page 38: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/38.jpg)
Google MapsAPI
City + Region
1 2 3
GPS Data
The API sends back the GPS information of the city
The map
![Page 39: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/39.jpg)
Google MapsAPI
City + Region
1 2 3 4
Google MapsAPI
GPS Data
Then, we send the GPS information to the Google Maps API again
The map
![Page 40: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/40.jpg)
The map
Google MapsAPI
City + Region
1 2 3 4 5
Google MapsAPI
GPS Data The map
Finally, we get the map with the pin.We display it on the user’s profile
![Page 41: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/41.jpg)
Research
![Page 42: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/42.jpg)
When a search form is filledAn object research is build
with all criteria
Object research
![Page 43: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/43.jpg)
But the information are stored in many tables
Information stored into tables
Object research
![Page 44: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/44.jpg)
How to match them for building our research query ?
Information stored into tables
Object research
![Page 45: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/45.jpg)
Information stored into tables
Object research
We use the reflection to solve it (reflective programming paradigms)
Reflection
![Page 46: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/46.jpg)
Information stored into tables
Object research
So now we have our research query
SQL Query
![Page 47: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/47.jpg)
So, we have our research query
The researchThe process
SQL Query
1
![Page 48: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/48.jpg)
We send it to Hibernate(Object-Relational Mapping)
The researchThe process
Hibernate ORM
1 2
SQL Query
![Page 49: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/49.jpg)
The researchThe process
We get back a list of users that match with the research query
Hibernate ORM
List of users
1 2 3
SQL Query
![Page 50: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/50.jpg)
The researchThe process
Then, the list is changed accordingto the distance between the two users
Hibernate ORM
List of usersSort by
distance
1 2 3 4
SQL Query
![Page 51: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/51.jpg)
Finally, a match percentage is calculated and the list is sorted
The researchThe process
Hibernate ORM
List of usersSort by
distanceMatch
Percentage
1 2 3 4 5
SQL Query
![Page 52: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/52.jpg)
Home
![Page 53: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/53.jpg)
Quick Research
Home
![Page 54: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/54.jpg)
Quick Research
Carousel of thebest buyers of the month
Home
![Page 55: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/55.jpg)
Quick Research
Carousel of thebest buyers of the month
Carousel of peoplein the same province
Home
![Page 56: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/56.jpg)
Quick Research
Carousel of thebest buyers of the month
Carousel of lastconnected people
Home
Carousel of peoplein the same province
![Page 57: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/57.jpg)
Quick Research
Carousel of thebest buyers of the month
Home
Carousel of peoplein the same province
Carousel of lastconnected people
Carousel ofthe contact list
![Page 58: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/58.jpg)
Home
Quick Research
Carousel of thebest buyers of the month
Carousel of peoplein the same province
Carousel of lastconnected people
Carousel ofthe contact list
![Page 59: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/59.jpg)
Registration
![Page 60: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/60.jpg)
RegistrationA form example
E-mailVerified format
BirthdayMinimum 18
Password SHA1 Encryption
GenderNicknameReal name
![Page 61: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/61.jpg)
Notification
![Page 62: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/62.jpg)
The notification system
We have 3 types of events
Adoption Message Charm
The events
![Page 63: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/63.jpg)
The notification systemThe process
The user makes one of the three eventsto another user
1
Action
![Page 64: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/64.jpg)
The notification systemThe process
The Javascript client sends the event to the server with 2 parameters : the sender’s nickname
and the receiver’s nickname
1 2
Action Event sender
![Page 65: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/65.jpg)
The notification systemThe process
The server catches the eventand finds the socket of the receiver
in an associative array
1 2 3
Action Event sender Node.js Server
![Page 66: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/66.jpg)
The notification systemThe process
The server sends an eventto the receiver
1 2 3 4
Action Event sender Event receiverNode.js Server
![Page 67: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/67.jpg)
The notification systemThe process
The receiver receives the event and displays the pop-up to the user
1 2 3 4 5
Action Event sender Node.js Server Event receiver Pop-up
![Page 68: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/68.jpg)
Choose a man Love is complicated, shopping is simple
Your new online dating service
![Page 69: Choose a man — Final Presentation at Tongji University Shanghai](https://reader033.vdocuments.net/reader033/viewer/2022052222/54595796b1af9fb66e8b5824/html5/thumbnails/69.jpg)
Thanks to them !Concept
Original idea by AdopteUnMec.com
Slides inspirationEmiland de Cubber
Nancy Duarte
The Noun ProjectEngrenages by Max Hancock
Search by Phil GoodwinCompare by Tim Shedor
Magic by Natalia BłaszczykSign Up by Charlene Chen
Divorce by Luis PradoPhare by Paulo Volkova
User by Ryan OksenhornLocation by Ricardo Moreira
Shopping Cart by John CasertaLove Shack by Luis Prado
Birthday Cake by Grant WilsonCompare by Tim Shedor
Database by Ed JonesCompass by Jardson AraújoTeam by Björn Andersson Time by Richard de Vos
Double Tap by Mert GutavChat by Atelier Iceberg
Heart by Jetro Cabau Quirós
Eye by Mateo ZlatarSign Up by Jens Windolf
Lock by Andy FuchsBuilding Block by Michael Rowe
Boy by Michael RoweConstruction by OCHA AVMUMustache by Ade Harnusa Azril
Test Tube by Zach GrahamKey by William J. SalvadorCity by Juan Pablo Bravo
Axe by Guvnor CoData Analysis by Brennan Novak
Button by Travis YunisTeam by Ed Gray
Server by aLfEnvelope by Jonathan Gibson
Race Track by Liau Jian JieFlag by Stanislav Levin
Percent by Axel HerrmannQuestion by Chok Hernández
CSS by Qinq Li
UniversityEPITECH Paris
Tongji University Shanghai