내가 만든 페이지에 가입한 User의 정보 리스트를 다 볼 수 있는 요청을 만들어보겠다.
요청을 만들기 전에 user 라는 table이 존재하여야하고 샘플 데이터가 필요하다.
create table user(
id varchar(100) primary key,
password varchar(10) not null,
name varchar(30),
age int(3),
jno int(1),
info varchar(30),
point float(7, 2),
birthday varchar(10),
rid varchar(30),
uploadfile varchar(30)
);
insert into user values
INSERT INTO user(id, password, name, age, jno, info, point, birthday, rid, uploadfile) VALUES
("user002", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이영희", 33, FLOOR(RAND() * 5) + 1, "반갑습니다", 72.3, "1991-10-28", "recommend002", "aaa.jpg"),
("user003", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "박민수", 29, FLOOR(RAND() * 5) + 1, "즐겁게 만나요", 91.2, "1995-12-07", "recommend003", "aaa.jpg"),
("user004", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "정지영", 40, FLOOR(RAND() * 5) + 1, "열심히 공부해요", 68.7, "1984-08-22", "recommend004", "aaa.jpg"),
("user005", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "홍길동", 22, FLOOR(RAND() * 5) + 1, "잘 부탁드립니다", 77.8, "2002-06-14", "recommend005", "aaa.jpg"),
("user006", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이지수", 36, FLOOR(RAND() * 5) + 1, "함께 즐겁게", 63.2, "1988-02-25", "recommend006", "aaa.jpg"),
("user007", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김영호", 27, FLOOR(RAND() * 5) + 1, "끝까지 화이팅", 88.9, "1997-04-30", "recommend007", "aaa.jpg"),
("user008", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "박수진", 45, FLOOR(RAND() * 5) + 1, "건강하세요", 74.1, "1979-09-21", "recommend008", "aaa.jpg"),
("user009", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "최재원", 31, FLOOR(RAND() * 5) + 1, "같이 성장합시다", 79.6, "1993-12-19", "recommend009", "aaa.jpg"),
("user010", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장민석", 29, FLOOR(RAND() * 5) + 1, "즐거운 하루", 55.3, "1995-01-08", "recommend010", "aaa.jpg"),
("user011", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "송현주", 24, FLOOR(RAND() * 5) + 1, "환영합니다", 82.7, "2000-05-03", "recommend011", "aaa.jpg"),
("user012", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이정호", 38, FLOOR(RAND() * 5) + 1, "행복하세요", 69.4, "1986-10-18", "recommend012", "aaa.jpg"),
("user013", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김수빈", 30, FLOOR(RAND() * 5) + 1, "밝게 웃어요", 76.5, "1991-11-11", "recommend013", "aaa.jpg"),
("user014", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "정민재", 41, FLOOR(RAND() * 5) + 1, "가장 좋은 곳", 84.1, "1983-07-17", "recommend014", "aaa.jpg"),
("user015", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장지우", 35, FLOOR(RAND() * 5) + 1, "잘 부탁드립니다", 57.2, "1989-02-14", "recommend015", "aaa.jpg"),
("user016", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "신은지", 28, FLOOR(RAND() * 5) + 1, "힘차게 출발", 43.8, "1996-09-09", "recommend016", "aaa.jpg"),
("user017", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서영철", 43, FLOOR(RAND() * 5) + 1, "열심히 달려요", 69.9, "1977-05-08", "recommend017", "aaa.jpg"),
("user018", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "양태원", 50, FLOOR(RAND() * 5) + 1, "즐겁게 즐겨요", 84.8, "1974-06-20", "recommend018", "aaa.jpg"),
("user019", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김지연", 42, FLOOR(RAND() * 5) + 1, "행복하세요", 32.4, "1977-09-01", "recommend019", "aaa.jpg"),
("user020", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "임재훈", 37, FLOOR(RAND() * 5) + 1, "끝까지 화이팅", 65.7, "1982-11-10", "recommend020", "aaa.jpg"),
("user021", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "정민지", 32, FLOOR(RAND() * 5) + 1, "건강하세요", 71.8, "1987-04-05", "recommend021", "aaa.jpg"),
("user022", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이승우", 26, FLOOR(RAND() * 5) + 1, "같이 성장합시다", 48.7, "1993-03-11", "recommend022", "aaa.jpg"),
("user023", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "최지윤", 39, FLOOR(RAND() * 5) + 1, "즐거운 하루", 87.5, "1985-02-13", "recommend023", "aaa.jpg"),
("user024", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "박지훈", 33, FLOOR(RAND() * 5) + 1, "환영합니다", 78.2, "1991-10-20", "recommend024", "aaa.jpg"),
("user025", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김윤서", 48, FLOOR(RAND() * 5) + 1, "가장 좋은 곳", 92.9, "1975-09-28", "recommend025", "aaa.jpg"),
("user026", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장예원", 29, FLOOR(RAND() * 5) + 1, "즐겁게 웃어요", 96.7, "1995-12-21", "recommend026", "aaa.jpg"),
("user027", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이준호", 35, FLOOR(RAND() * 5) + 1, "밝게 웃어요", 57.1, "1989-06-11", "recommend027", "aaa.jpg"),
("user028", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "윤지우", 47, FLOOR(RAND() * 5) + 1, "열심히 달려요", 81.4, "1977-01-01", "recommend028", "aaa.jpg"),
("user029", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서민서", 30, FLOOR(RAND() * 5) + 1, "즐겁게 즐겨요", 69.8, "1994-07-25", "recommend029", "aaa.jpg"),
("user030", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "최정원", 42, FLOOR(RAND() * 5) + 1, "힘차게 출발", 83.2, "1978-03-15", "recommend030", "aaa.jpg"),
("user031", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김하은", 31, FLOOR(RAND() * 5) + 1, "건강하세요", 74.6, "1993-11-30", "recommend031", "aaa.jpg"),
("user032", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "박동민", 27, FLOOR(RAND() * 5) + 1, "새로운 시작", 84.9, "1997-08-05", "recommend032", "aaa.jpg"),
("user033", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김수진", 35, FLOOR(RAND() * 5) + 1, "꿈을 향해", 71.8, "1989-11-12", "recommend033", "aaa.jpg"),
("user034", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이민수", 30, FLOOR(RAND() * 5) + 1, "함께 성장해요", 68.3, "1994-04-18", "recommend034", "aaa.jpg"),
("user035", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "정하은", 42, FLOOR(RAND() * 5) + 1, "끝까지 간다", 79.5, "1978-07-27", "recommend035", "aaa.jpg"),
("user036", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김민지", 23, FLOOR(RAND() * 5) + 1, "빛나는 미래", 63.6, "2001-09-30", "recommend036", "aaa.jpg"),
("user037", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이상현", 31, FLOOR(RAND() * 5) + 1, "열정적인 삶", 86.4, "1993-12-03", "recommend037", "aaa.jpg"),
("user038", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "최준혁", 38, FLOOR(RAND() * 5) + 1, "멋진 여정", 72.9, "1986-11-22", "recommend038", "aaa.jpg"),
("user039", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서지윤", 28, FLOOR(RAND() * 5) + 1, "즐거운 날", 68.2, "1996-05-15", "recommend039", "aaa.jpg"),
("user040", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김태원", 39, FLOOR(RAND() * 5) + 1, "미래를 준비하며", 77.1, "1985-08-19", "recommend040", "aaa.jpg");
INSERT INTO user(id, password, name, age, jno, info, point, birthday, rid, uploadfile) VALUES
("user041", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이정훈", 33, FLOOR(RAND() * 5) + 1, "밝게 웃어요", 79.4, "1989-04-08", "recommend041", "aaa.jpg"),
("user042", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김지훈", 29, FLOOR(RAND() * 5) + 1, "새로운 시작", 66.5, "1995-03-10", "recommend042", "aaa.jpg"),
("user043", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장지훈", 34, FLOOR(RAND() * 5) + 1, "함께 성장해요", 72.8, "1988-08-25", "recommend043", "aaa.jpg"),
("user044", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서지현", 25, FLOOR(RAND() * 5) + 1, "행복한 순간", 84.7, "1999-10-14", "recommend044", "aaa.jpg"),
("user045", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김태훈", 37, FLOOR(RAND() * 5) + 1, "좋은 하루", 59.2, "1987-05-30", "recommend045", "aaa.jpg"),
("user046", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장지우", 28, FLOOR(RAND() * 5) + 1, "힘차게 출발", 77.3, "1996-07-28", "recommend046", "aaa.jpg"),
("user047", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김재우", 45, FLOOR(RAND() * 5) + 1, "행복한 미래", 91.8, "1979-01-19", "recommend047", "aaa.jpg"),
("user048", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김민서", 26, FLOOR(RAND() * 5) + 1, "열심히 공부해요", 82.5, "1998-12-03", "recommend048", "aaa.jpg"),
("user049", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이예준", 41, FLOOR(RAND() * 5) + 1, "함께 웃으면 행복해요", 76.9, "1983-02-08", "recommend049", "aaa.jpg"),
("user050", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장은지", 32, FLOOR(RAND() * 5) + 1, "새로운 도전", 68.2, "1990-06-30", "recommend050", "aaa.jpg"),
("user051", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "정지우", 34, FLOOR(RAND() * 5) + 1, "같이 성장합시다", 84.7, "1988-08-05", "recommend051", "aaa.jpg"),
("user052", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김현우", 27, FLOOR(RAND() * 5) + 1, "환영합니다", 67.8, "1997-02-11", "recommend052", "aaa.jpg"),
("user053", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이지윤", 30, FLOOR(RAND() * 5) + 1, "열심히 달려요", 79.2, "1994-09-29", "recommend053", "aaa.jpg"),
("user054", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장예은", 23, FLOOR(RAND() * 5) + 1, "즐거운 하루", 56.4, "2001-01-17", "recommend054", "aaa.jpg"),
("user055", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이승준", 35, FLOOR(RAND() * 5) + 1, "행복한 순간", 87.1, "1989-03-12", "recommend055", "aaa.jpg"),
("user056", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서지민", 31, FLOOR(RAND() * 5) + 1, "새로운 시작", 72.8, "1993-12-27", "recommend056", "aaa.jpg"),
("user057", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김하윤", 40, FLOOR(RAND() * 5) + 1, "행복한 미래", 93.6, "1984-07-22", "recommend057", "aaa.jpg"),
("user058", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장예준", 28, FLOOR(RAND() * 5) + 1, "열심히 공부해요", 68.2, "1996-08-14", "recommend058", "aaa.jpg"),
("user059", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김시우", 36, FLOOR(RAND() * 5) + 1, "함께 웃으면 행복해요", 81.9, "1988-04-04", "recommend059", "aaa.jpg"),
("user060", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장예지", 24, FLOOR(RAND() * 5) + 1, "새로운 도전", 74.5, "2000-02-23", "recommend060", "aaa.jpg");
INSERT INTO user(id, password, name, age, jno, info, point, birthday, rid, uploadfile) VALUES
("user061", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김태윤", 29, FLOOR(RAND() * 5) + 1, "즐겁게 시작하세요", 77.3, "1995-05-18", "recommend061", "aaa.jpg"),
("user062", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이지민", 26, FLOOR(RAND() * 5) + 1, "화이팅하세요", 83.5, "1998-11-08", "recommend062", "aaa.jpg"),
("user063", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장성우", 33, FLOOR(RAND() * 5) + 1, "같이 성장합시다", 69.8, "1989-07-31", "recommend063", "aaa.jpg"),
("user064", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김하윤", 36, FLOOR(RAND() * 5) + 1, "새로운 시작", 82.5, "1988-04-23", "recommend064", "aaa.jpg"),
("user065", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이민서", 30, FLOOR(RAND() * 5) + 1, "행복한 순간", 74.2, "1994-09-11", "recommend065", "aaa.jpg"),
("user066", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "박태영", 27, FLOOR(RAND() * 5) + 1, "끝까지 화이팅", 61.9, "1997-03-29", "recommend066", "aaa.jpg"),
("user067", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김성민", 41, FLOOR(RAND() * 5) + 1, "열심히 달려요", 87.6, "1983-08-14", "recommend067", "aaa.jpg"),
("user068", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장예진", 28, FLOOR(RAND() * 5) + 1, "즐거운 하루", 72.3, "1996-06-05", "recommend068", "aaa.jpg"),
("user069", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김태호", 39, FLOOR(RAND() * 5) + 1, "행복하세요", 79.1, "1985-01-28", "recommend069", "aaa.jpg"),
("user070", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이재현", 32, FLOOR(RAND() * 5) + 1, "함께 웃으면 행복해요", 64.7, "1990-12-22", "recommend070", "aaa.jpg"),
("user071", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장준우", 35, FLOOR(RAND() * 5) + 1, "행복한 순간", 88.4, "1989-10-02", "recommend071", "aaa.jpg"),
("user072", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김정민", 29, FLOOR(RAND() * 5) + 1, "새로운 시작", 76.2, "1995-04-09", "recommend072", "aaa.jpg"),
("user073", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서영민", 31, FLOOR(RAND() * 5) + 1, "즐겁게 시작하세요", 67.5, "1993-11-14", "recommend073", "aaa.jpg"),
("user074", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김수민", 26, FLOOR(RAND() * 5) + 1, "열심히 달려요", 59.8, "1998-08-22", "recommend074", "aaa.jpg"),
("user075", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이태영", 37, FLOOR(RAND() * 5) + 1, "같이 성장합시다", 81.3, "1987-03-17", "recommend075", "aaa.jpg"),
("user076", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장재현", 33, FLOOR(RAND() * 5) + 1, "힘차게 출발", 73.6, "1989-06-10", "recommend076", "aaa.jpg"),
("user077", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김예준", 30, FLOOR(RAND() * 5) + 1, "새로운 도전", 65.2, "1994-09-03", "recommend077", "aaa.jpg"),
("user078", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서지윤", 36, FLOOR(RAND() * 5) + 1, "함께 웃으면 행복해요", 87.9, "1988-04-17", "recommend078", "aaa.jpg"),
("user079", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이윤우", 27, FLOOR(RAND() * 5) + 1, "열심히 공부해요", 68.4, "1997-07-09", "recommend079", "aaa.jpg"),
("user080", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김서우", 31, FLOOR(RAND() * 5) + 1, "행복하세요", 73.1, "1993-10-28", "recommend080", "aaa.jpg");
INSERT INTO user(id, password, name, age, jno, info, point, birthday, rid, uploadfile) VALUES
("user081", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서준우", 29, FLOOR(RAND() * 5) + 1, "즐겁게 시작하세요", 76.8, "1995-06-18", "recommend081", "aaa.jpg"),
("user082", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김재원", 26, FLOOR(RAND() * 5) + 1, "화이팅하세요", 81.5, "1998-12-08", "recommend082", "aaa.jpg"),
("user083", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이시우", 33, FLOOR(RAND() * 5) + 1, "같이 성장합시다", 68.9, "1989-08-31", "recommend083", "aaa.jpg"),
("user084", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김준서", 36, FLOOR(RAND() * 5) + 1, "새로운 시작", 80.7, "1988-04-23", "recommend084", "aaa.jpg"),
("user085", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이예원", 30, FLOOR(RAND() * 5) + 1, "행복한 순간", 72.4, "1994-09-11", "recommend085", "aaa.jpg"),
("user086", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장서우", 27, FLOOR(RAND() * 5) + 1, "끝까지 화이팅", 63.9, "1997-03-29", "recommend086", "aaa.jpg"),
("user087", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김민우", 41, FLOOR(RAND() * 5) + 1, "열심히 달려요", 86.6, "1983-08-14", "recommend087", "aaa.jpg"),
("user088", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이하윤", 28, FLOOR(RAND() * 5) + 1, "즐거운 하루", 71.3, "1996-06-05", "recommend088", "aaa.jpg"),
("user089", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김서준", 39, FLOOR(RAND() * 5) + 1, "행복하세요", 78.5, "1985-01-28", "recommend089", "aaa.jpg"),
("user090", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서정우", 32, FLOOR(RAND() * 5) + 1, "함께 웃으면 행복해요", 65.7, "1990-12-22", "recommend090", "aaa.jpg"),
("user091", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김준우", 35, FLOOR(RAND() * 5) + 1, "행복한 순간", 88.4, "1989-10-02", "recommend091", "aaa.jpg"),
("user092", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이지현", 29, FLOOR(RAND() * 5) + 1, "새로운 시작", 76.2, "1995-04-09", "recommend092", "aaa.jpg"),
("user093", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장하윤", 31, FLOOR(RAND() * 5) + 1, "즐겁게 시작하세요", 67.5, "1993-11-14", "recommend093", "aaa.jpg"),
("user094", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김예은", 26, FLOOR(RAND() * 5) + 1, "열심히 달려요", 59.8, "1998-08-22", "recommend094", "aaa.jpg"),
("user095", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이시윤", 37, FLOOR(RAND() * 5) + 1, "같이 성장합시다", 81.3, "1987-03-17", "recommend095", "aaa.jpg"),
("user096", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "장예원", 33, FLOOR(RAND() * 5) + 1, "힘차게 출발", 73.6, "1989-06-10", "recommend096", "aaa.jpg"),
("user097", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김예진", 30, FLOOR(RAND() * 5) + 1, "새로운 도전", 65.2, "1994-09-03", "recommend097", "aaa.jpg"),
("user098", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "서예준", 36, FLOOR(RAND() * 5) + 1, "함께 웃으면 행복해요", 87.9, "1988-04-17", "recommend098", "aaa.jpg"),
("user099", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "김태민", 27, FLOOR(RAND() * 5) + 1, "열심히 공부해요", 68.4, "1997-07-09", "recommend099", "aaa.jpg"),
("user100", "$2a$10$1phx008Whb7KcW9p/PBnP.78TtMdwHmJNdjJrjaAFEKwDdizZyyEq", "이준우", 31, FLOOR(RAND() * 5) + 1, "행복하세요", 73.1, "1993-10-28", "recommend100", "aaa.jpg");
랜덤하게 99개 정도 insert문을 만들었고 1번은 나중에 내가 가입 창을 만들어서 가입하겠다.
user table이 잘 추가된 모습

** 비밀번호는 12345! 를 스프링시큐리티 API를 이용해서 bcrypt 다이제스트로 통일해서 만든 것이다. (추후에 PasswordEncoder 도 해볼 수 있겠다.)
앞서 말했던 회원 관리 부분, Team 관리 부분, Board 관리 부분을 하나씩 form을 만들어서 그 안에서 AJAX 기법으로 만들어보려고 한다.
먼저 home.jsp에 UserManagement form을 생성하는 요청을 만들겠다.


그럼 이제 UserManagement form을 먼저 만들어주자
위의 home.jsp에서 a태그로 user/userManagement 로 요청해주었으니 해당 위치에 생성해주면 된다.

form을 생성하고 다음과 같이 간단한 코드를 만든다.
UserList를 클릭했을 때 아래 textArea01 div에 데이터를 출력할 것이기 때문에 onclick 이벤트를 갖고있는 span과 출력을 받을 div를 만들어준다.

home.jsp 에서 a태그를 클릭했을 때 방금 만든 userManagement.jsp 로 넘어가야 하니까 해당 요청을 실행할 controller가 필요하다.
UserController 생성


에노테이션 처리해주고 /user/userManagement 식으로 처리할 수 있도록 클래스에 /user request맵핑을 준다.
그리고 form을 생성하는 void getMapping을 만든다.
=> void로 생성하는 경우 스프링이 요청명과 같은 jsp 파일을 찾아준다.
여기까지하고 잘들어가지는지 테스트해보자

home.jsp 에서 해당 요청을 클릭하면

userManagement로 넘어가는 것을 확인할 수 있다.
이제 userManagement.jsp에 userList 요청을 했을 때 form을 생성해보자
view폴더의 user폴더로 가서 userList.jsp 생성

userList.jsp에 간단하게 list를 출력할 수 있는 jsp를 만들자

이제 요청처리하고 sql 연동해서 데이터를 주면 된다.

userManagement.js 도 만들어서 onclick 이벤트를 수행하자
/resources/myLib/userManagement.js 생성

AJAX 형태로 데이터를 출력할 것이기 때문에 a태그 같은 걸로 페이지가 넘어가는 것이 아니라 axios 를 활용해서 데이터를 받아서 그 페이지 내에서 출력을 해보겠다.
url 에 요청값을 주고 axios 로 요청을 보내면 된다.
UserController으로 userList 요청을 보내고 then 값 (요청의 status 가 200번대로 제대로 왔을 경우) 처리 하고 그외 status 값을 받는 catch 블록처리를 해주겠다.
간단하게 console 창으로 문제 있고 없음을 표현하려고 한다.

user 정보를 실어나를수 있는 DTO class를 만들어서 롬복으로 생성자 초기화를 해주겠다.
domain에서 UserDTO 생성

컬럼은
id, password, name, age, jno, info, point, birthday, rid, uploadfile, multipartFile 총 10개이다.
각 컬럼을 선언하고 롬복으로 초기화 해주겠다.

service와 mapper를 전혀 만들지 않았기 때문에 지금부터 만들어서 하나씩 추가하도록 하겠다.
먼저 service와 serviceImpl 을 만들겠다.

service는 interface 역할이고 serviceImple이 상속받아서 사용할 예정이다.

UserService에 userList 추상메서드 생성

UserServiceImple에 오버라이딩 후 mapper 로 연결

mapperInterface 패키지에서 UserMapper 인터페이스 생성

List 컬렉션을 반환타입으로 userList() 생성

UserMapper.xml 에서 해당 sql문 생성

controller에서 요청을 받고 sql 구문을 완성해주면 된다.
이번 UserList는 form을 받아와서 데이터를 넣고 jsp를 반환해주는 형식으로 만들어 보겠다. UserController로 넘어가서

userList의 요청을 받는 userList 메서드 생성하고 service 를 통해 userList()를 호출한다. 그러면 service -> mapperInterface -> mapper.xml 으로 요청이 들어가고 서버 DB로부터 userList의 Data을 List 컬렉션 형태로 반환받는다.
반환받은 Data를 model을 이용해서 userList라는 requestScope에 담아주고 jsp를 리턴한다.

클릭한 결과 500번대 에러가 발생했음을 확인할 수 있다. (한번에 될리가 없지..)
에러를 찾아보자
내 예상으로는 UserList를 클릭했을 때 빈 div에 응답받은 data가 채워지면서 리스트를 보여줘야하는데 500번대 에러가 발생한다.
두 가지 문제가 파악되었다.
axios를 사용할 때는 cdn을 form에 입력해줘야한다..
학원에서 실습할 때는 내가 직접 cdn을 넣은 적이 없어서 전혀 생각도 못하고있었다. axios 부분이 아예 인식을 못하는 느낌이라서 집중적으로 검색하다가 알게되었다.
mapper namesapce가 mapperInterface 의 패키지명과 interface명이랑 같아야 한다는 것은 알고는 있었는데 처음부터 mapper.xml 패키지 명을 확인하면서 만들지 않아서 실수가 생긴 것 같다.
userManagement.jsp cdn 추가

namespace 수정

namespace의 경로가 아래 사진의 이름과 같아야 한다.

이제 다시 UserList를 클릭해보면 제대로 나오는 것을 확인할 수 있다.

에러가 생각보다는 단조로워서 다행이었다. 그래도 깔끔하게 실수없이 만들진 못해도 혼자 "이렇게 해볼까?" 생각하면서 만들 수 있게 된 것 자체가 큰 발전이라고 생각한다. 만들어 놓은 클래스들이 전혀 없는 상태에서 만드려고 하니까 손 댈 부분이 너무 많은 것 같긴하지만 역시 직접 만들어봐야 와닿는 부분이 많은 것 같다.