2014-10-25 2 views
0

Теперь я знаю, что это очень широкий вопрос, и именно поэтому я ожидаю широкого ответа. Я просто хочу, чтобы меня направили в правильном направлении. Проще говоря, я намереваюсь создать сайт, на котором пользователи могут включать определенные данные в свой профиль и сопоставляться с другими пользователями, которые ввели соответствующие данные, чтобы создать «соответствие». Похоже на сайт знакомств, который соответствует пользователям на основе лучшей «химии». Однако это еще проще. У меня есть опыт кодирования в NetBeans, и я постоянно расширяю свои знания в области разработки веб-сайтов.Соответствующие пользователи, основанные на информации, они отправлены

Например:

101, 102 and 103 = MATCH 
User A - Data [User lists they have 101] 
User B - Data [User lists they have 102 and 103] 

Либо пользователь A или B использует «Найти пользователей, которые завершают свой набор» и таблицу или столбец списков сказал пользователи, завершить этот набор.

Итак, если кто-нибудь может по крайней мере указать мне в правильном направлении, это было бы очень признательно! Я сделал несколько веб-сайтов на Webs.com, но я не считаю, что их инструменты имеют что-то похожее на заполнение этой потребности. Я намерен запрограммировать эту систему соответствия с использованием Java (вероятно, с NetBeans) и внедрения на веб-сайт. Спасибо, парни!!!

+0

Вы собираетесь использовать базу данных? –

+0

Я предполагаю, что это лучший маршрут. Я никогда не строил сайт с нуля. Я буду изучать эту цель на некоторое время. Мне просто нужна хорошая основа для меня. –

+0

Вы знакомы с 'JDBC'? Можете ли вы писать SQL-запросы? –

ответ

0

Возможно, вам захочется использовать базу данных для хранения ваших пользователей, а также все возможные наборы атрибутов, которые могут быть выполнены для соответствия. Вот один из способов создания такой базы данных с PostgreSQL:

create table person (
    id int primary key, 
    first_name text not null, 
    attributes text[] 
); 

create table match (
    id int primary key, 
    attributes text[] 
); 

insert into person values (1, 'Bob', array['A']); 
insert into person values (2, 'Alice', array['B','D']); 
insert into person values (3, 'Carol', array['B','C']); 
insert into person values (4, 'Ted', array['D']); 
insert into match values (1, array['A','B','D']); 

Я использую массивы вместо таблиц плоскостных быть менее многословным. Теперь вы можете найти все человек, которые полный набор # 1 для Алисы, например, выполнив следующий запрос:

select 
    id, 
    first_name 
from 
    (select 
    p2.id as id, 
    p2.first_name as first_name, 
    array(  
     select unnest(p1.attributes) union select unnest(p2.attributes) 
    ) as match_potential 
    from 
    person p1 
    inner join person p2 on (p1.id = 2 and p2.id <> 2)) as p 
where 
    p.match_potential @> (select attributes from match where id = 1); 

Алиса и Боб теперь совпадает.

В конце концов вам нужно будет сделать что-то более сложное, но что-то вроде этого должно заставить вас начать работу на вашем веб-сайте и позволит вам создать свой первый прототип, который вы можете использовать для проверки своей концепции.

Смежные вопросы