Skip to content
This repository has been archived by the owner on Nov 12, 2022. It is now read-only.
/ webp2021 Public archive

경기대학교 소프트웨어중심대학 홈페이지 개발 프로젝트 (CS-HOME 6기)

License

Notifications You must be signed in to change notification settings

gabrielyoon7/webp2021

Repository files navigation

경기대학교 SWAIG 프로젝트

경기대학교 AI컴퓨터공학부 웹서버 프로젝트 (cshome 6기)

홈페이지에서 확인하기

🟥🟥공지🟥🟥

7월 중순 학과 서버실 정전 이후 현재 같은 랙에 있는 서버가 모두 연결이 안되고 있어서 해결책 기록이 필요함!!! (허브 문제로 추정중) → 학교 방문해서 고침

8080포트에서 80포트로 연결하는 작업 진행 예정

8월 초에 초기 데이터 입력 예정 (관리자 계정도 새로 발급 필요)

🟥🟧🟨🟩🟦🟪🟫⬛⬜

경기대학교 AI컴퓨터공학부

이은정 지도교수님


SWAIG Developers

✔cs home 6기 (2021 여름방학)

  • 윤주현(201713919) [Project Manager]

    github@gabrielyoon7

  • 김가영(201912021)

    github@gykim0923

  • 박선애(201912067)

    github@SeonaePark

  • 박소영(201912069)

    github@soyoung125

  • 박의진(201912072)

    github@jinny-park


Update Log

  • 2021.08.21

    • [윤주현]
      • 로그인-회원가입 페이지가 모바일에서 자연스럽게 보이도록 변경
      • 각종 링크들이 &&을 사용하지 않고 &으로 구분지을 수 있도록 개선
      • 전공 추가에 안내문 추가
      • whatIdo가 모바일에서 자연스럽게 보이게 개선
      • bbs-reg에서 각종 글자들이 무너지는 현상 해결
      • 비로그인자의 추천버튼 오류 해결
      • information의 모바일 화면이 자연스럽게 보이도록 변경
      • 기본 db에 기본 information row 추가
    • [박소영]
      • 서버에서 엑셀 다운로드 오류 수정
      • 신청하기 접근 권한 수정
      • BBS 접근 권한 수정
      • 로그인, 회원가입, bbs, 신청하기 업로드 페이지 뒤로가기로 페이지 접근 방지
  • 2021.08.20

    • [윤주현]
      • DB 정리, 모든 페이지에서 업로드된 이미지 이탈 현상 수정 (절대값 -> 상대값), 사이트맵 디자인 전면 개편, JUnit 삭제
      • 비로그인자가 마이페이지 및 하위 메뉴에 접근이 가능하던 문제 수정, 로그인 페이지에서 시크릿 모드 사용자에 대한 안내문 추가
      • 로그인 및 회원가입 시 해상도에 따른 디자인 무너짐 현상 해결, 회원가입에서 select 문의 padding 및 font-size를 form-control과 동일하게 만들어줌
      • 커리큘럼 버튼 테마 다시 적용
      • OS정보 연동, Heap 메모리 관련 코드 수정 및 로그 페이지에 GUI로 보일 수 있도록 연동
      • 자유게시판의 추천 버튼 디자인 로직을 전면 개편 (직관적인 인터페이스로 개선)
      • bbs_view 디자인 개선 (해상도에 따른 이미지 이탈 현상 제거, 제목과 글정보 여백을 훨씬 자연스럽게 변경)
      • 모든 db 테이블의 컬럼명을 소문자와 언더바 형식으로 변경 및 그에 따른 DAO 메소드 전부 변경
      • 프로젝트 보안 패치 (antiClickJacking 및 타임아웃 등 적용)
  • 2021.08.19

    • [박소영]
      • 공지사항, 신청하기 업로드 페이지 파일 삭제 취소해도 삭제되는 오류 수정
      • 공지사항, 신청하기 업로드 페이지 파일 업로드 칸 일괄 업로드, 미리보기 창 안 닫히는 오류 수정
      • 신청하기 뷰 페이지 답변 파일이 없을 때 압축 파일을 다운로드 받지 못하도록 수정
      • 서버에서 압축 파일 다운로드 안되는 오류 수정
      • 신청하기 업로드 페이지 글 수정 후 알림창이 바로 사라지는 오류 수정
      • 신청하기 뷰 페이지 글 삭제세 관련 파일 삭제 안되는 오류 수정
      • 신청하기 뷰 페이지 글 삭제 시 리스트 화면으로 돌아가지 않는 오류 수정
      • 회원가입 페이지 아이디에 빈칸 입력해도 사용가능뜨는 오류 수정
    • [김가영]
      • 홈페이지관리 폼,버튼 일관성있게 수정, 메인페이지 일정 간격 수정, 전체공지 삭제 방지
      • 이용약관 폼 수정, 이용약관 체크 안해도 회원가입됨 수정
    • [박의진]
      • information.jsp 에서 수정하기 버튼이랑 뒤로가기 버튼 스윗 알러트 기능 추가
      • 게시판 댓글 클릭시 위로 올라가는 버그 수정
    • [박선애]
      • 마이페이지에 가입한지 며칠인지 나오는 기능
      • 공지게시판 메뉴 추가 후 글쓰면 전체 공지에 반영되도록 함
      • 부전공 아이디 중복되는데 추가 되는 거 막음
      • 부전공 삭제 취소 부분 수정
  • 2021.08.12

    • [박소영]
      • 글 삭제 시 관련 파일 삭제 안되는 오류, 글 삭제 시 리스트 화면으로 돌아가지 않는 오류, 파일 삭제하겠습니까?에서 취소해도 삭제안되는 오류 수정
    • [윤주현]
      • 관리자 메뉴에 관리자가 아닌 사람은 접근 금지, 회원관리페이지에서 구글 인증계정과, 신규가입(미승인)회원에 대해 색상 처리
      • 회원 탈퇴 or 강퇴 시 세션 강제로 끊어버리게 변경, 미승인 회원 구분이 명확하게 개선, 구글 메일 인증됨을 명확하게 보임
      • 반응형에 따라 aside가 자동으로 들어가고 자동으로 나올 수 있도록 개선 및 기존 틀 유지하려는 버그 수정
      • 불필요한 컬럼 삭제, 메뉴의 min-max levels
      • aside의 스크롤바가 보이지 않게 처리함
      • 교수진 기능을 전공 하위 메뉴로 넣는 과정에서 발생한 메뉴 기능 변경 대응 패치
      • 교수진 페이지를 전공 메뉴로 이동, 부전공 삭제 시 main이 삭제되지 않도록 백엔드에서 2중 검사토록 개선, 안쓰는 교수진 관련 메소드 주석처리
    • [박의진]
      • 관리자페이지 일정관리 테이블 헤더 수정
    • [박선애]
      • major 전공 삭제 못하도록 함
  • 2021.08.11

    • [윤주현]
      • collapse가 안되던 문제 해결
      • aside_v3 제작 및 aside에 관련된 각종 스크롤 버그 수정. 연관된 페이지 전부 v3로 교체 완료
      • 삼성인터넷을 위한 메인 영역 패치
    • [박의진]
      • 교수님 삭제시 오류 수정
      • 부전공 삭제시 관련 데이터 db에서 다 삭제
      • jsp 필요 없는 파일 정리
    • [박선애]
      • 본전공 삭제 기능
      • 부전공 추가시 전공소개 및 커리큘럼 내용 자동 추가
      • db 불필요 데이터 삭제, 자바 print문 삭제
      • 마이페이지 활동내역 구현(작성글, 추천한글, 작성댓글, 신청내역)
  • 2021.08.10

    • [윤주현]
      • main Title 다시 만듦
      • h1~h6의 굵기를 extra bold로 변경, bbs에 있는 필요없는 경계선 안보이게 변경
      • 카드 디자인 개선, 회원가입 약관 변경
      • 전공 페이지 들어갈 경우 page_title에 현재 전공을 출력하도록 개선
      • 마이페이지 디자인 개선
      • bbs 리스트에 반응형 적용
      • req 리스트에 반응형 적용
    • [박선애]
      • 부전공 삭제 가능하도록 함
      • db에 있는 전공 체크 표시, 학년 및 상태 셀렉트문 수정
  • 2021.08.09

    • [윤주현]
      • 교수님 배경을 색상으로 선택이 가능하게 처리함.
      • 영역1, 영역2에 게시판에 게시글이 아예 없는 경우에 발생하는 오류 해결
      • 정보게시판 수정버튼 디자인 변경, 이미지 삽입 시 가로 길이가 절대 값으로 적용되는 문제 해결
      • 교수님 페이지 사진 가로길이 문제를 경고문으로 해결, 첨부파일 다운로드 기능 추가
      • 위치및연락처페이지 디자인 완성, 교수 페이지 디자인 완성
      • 인터넷 익스플로러 사용 시 경고문 출력
      • aside에서 전공 0번째는 출력 금지, page.jsp 디자인 복구
      • sitemap에 전공 메뉴가 뜨도록 개선
      • main 일정 부분 디자인 (완성)
    • [박의진]
      • 게시판에서 수정, 삭제 버튼 권한수정
      • bbs_list 자유게시판 학생 글쓰기 권한 수정
      • bbs_upload 본인이 쓴 글 수정, 삭제 가능 기능
      • bbs_upload 뒤로가기 버튼 오류 수정
      • bbs_view 댓글 아이콘 수정 및 댓글 등록 날짜 형식 수정
      • 게시글 삭제시 bbsdao에서 댓글 db도 같이 삭제시킴
    • [박선애]
      • 마이페이지 학년, 상태 select문 추가, 마이페이지 학년 및 상태 option 수정
      • 관리자 메뉴관리 추가기능 수정
      • 메인 화면 슬라이드 이미지 해상도 통일 문구 작성
      • 부전공, 전공 삭제 버튼 위치 수정 및 추가 버튼 색 변경
      • 부전공 삭제 기능 구현
  • 2021.08.08

    • [윤주현]
      • page.jsp 디자인을 최신 테마에 맞게 수정, header의 로그인 크기 줄임, 메인 영역1탭에 밑줄 그어봄
      • 불필요한 js 삭제, aside에 아이콘을 db와 연동, 로그인 페이지에 회원가입 안내 페이지 개선, 신청 리스트에서 정렬이 불가능하도록 변경
      • 새로운 글꼴 적용, 로그인 페이지(구버전)에 밑줄 그어지는 버그 수정, 사이트맵 전면 개편(진행중)
      • 서버 메모리 상태 모니터 기능 완성
      • 메인화면 - 영역2 - 학과 자료실 연동
      • 교수님 배경을 색상으로 선택이 가능하게 처리함.
    • [박선애]
      • side menu dropdown 열고 닫기 개선
  • 2021.08.07

    • [박소영]
      • 파일 업로드 수정
    • [윤주현]
      • aside에 collapse 스타일로적용, bbs_view에 댓글이 없습니다 추가, bbs_list에 고정 높이 삭제
  • 2021.08.06

    • [박소영]
      • 신청하기 업로드 페이지 업로드 수정(업로드 오류있음)
      • 신청하기 업로드 페이지 업로드 오류 수정
    • [박선애]
      • 학생 마이페이지 부전공 선택 기능 구현
    • [윤주현]
      • bbs_list에 추천 정렬 기능 off, bbs_view에 조회수 뜨게 수정, bbs_view에 올바른 조회수가 뜨도록 수정, 열어본 페이지 기록 코드 개선
      • main 영역1,2 에서 날짜가 어긋나는 현상 수정
      • mypage의 deafult 이미지 크기 개선, 메인 페이지 간격 조절(완성), 헤더 로그아웃 이름 변경
    • [박의진]
      • 게시판 조회수 증가 기능
  • 2021.08.05

    • [박선애]
      • 메인화면 더보기(+) 버튼 url 이동 구현
    • [윤주현]
      • 연락처 디자인 개선, 헤더에 구글 로그인만 남기고 기존 로그인은 사이트맵으로 숨김처리
      • 로그인v2의 로고삭제
      • 독립된 문서들의 제목이 안뜨는 문제 해결, 게시판 관련 수정
      • bbs_list가 모바일 화면에서 튀어나오는 문제 해결, bbs_view에서 댓글이 더 예쁘게 나오도록 개선, information의 컨텐츠 간격 조절, mypage에서 사진이 div 영역 내에서 가운데에 오도록 조정, page의 소메뉴 디자인을 개선
      • bbs 댓글이 오래된 순 부터 나오게 변경, 콘텐츠 영역 최소 높이 설정, 댓글 영역에 댓글이라고 표시
  • 2021.08.04

    • [박의진]
      • register_upload 신청하기 수정 기능 완료, 파일 업로드 일부 완료(경로설정필요)
      • 마이페이지 이메일 수정 금지기능, 관리자 탈퇴 금지 추가
      • 마이페이지 일반회원 비밀번호 변경 불가능 완성
      • 마이페이지 구글프로필 설정
    • [박선애]
      • 관리자 페이지 kgu전공 추가/수정/삭제 기능 구현
      • 관리자 페이지 로그인 로그 삭제 구현
      • 이용약관 내용 추가
      • 위치 및 연락처 페이지 디자인 수정
    • [윤주현]
      • 메인페이지에 타이틀 복귀, 영역1과 영역2에 대한 간격 조절
    • [김가영]
      • 전체 알림창 디자인 수정
      • 폰트 적용 구현중
    • [박소영]
      • 신청하기 뷰 페이지 신청내용 수정, 삭제 기능 추가
      • 신청하기 뷰 페이지 모든 신청 내용 보기 추가
      • 신청하기 업로드 페이지 뒤로가기 오류 수정
      • 신청하기 삭제 기능 추가
      • 신청하기 리스트 접근 권한 수정
      • 신청하기 뷰 페이지 첨부파일 보이게 수정
  • 2021.08.04

    • [윤주현]
      • 테마 교체 및 메인 페이지의 그리드 개념을 전면 개편함 (기존 상하 -> 좌우로 1차 분할)
      • 로그인 페이지에 학교 계정 생성 안내 페이지 연결
  • 2021.08.02

    • [박소영]
      • 신청하기 뷰 페이지 슬라이더(척도형) 오류 수정.
      • 신청하기 업로드 페이지 뒤로가기 버튼 오류 수정.
      • 신청하기 뷰 페이지 신청 폼 보기 권한 수정.
    • [박의진]
      • 신청하기 신청 폼 삭제기능 완료
    • [윤주현]
      • 구글 로그인 페이지 디자인 전면 개편
      • sweetalert 적용
      • 메인의 게시글 리스트 디자인 개편 및 즐겨찾기 메뉴에 아이콘이 자연스럽게 위치할 수 있도록 적용
      • page.jsp도 새 테마 시범 적용 (많은 수정 필요함)
    • [김가영]
      • 대문삭제기능 완료, 관리자페이지 전공 테이블 수정, 모달 수정, 알림 디자인 수정
  • 2021.08.01

    • [윤주현]
      • 메인 콘텐츠의 spacing이 자연스럽게 조절함 (반응형으로 padding을 3~5으로만 적용)
  • 2021.07.31

    • [박소영]
      • 신청하기 뷰 페이지에서 신청 폼 보이도록 수정.
    • [윤주현]
      • 기존 테마 작업을 모두 되돌리고 테마와 헤더를 mazer으로 변경. main 페이지에 시범 적용함
  • 2021.07.30

    • [박소영]
      • 신청하기 작성 페이지 질문 폼 생성, db에 저장 성공.
    • [윤주현]
      • 테마와 헤더를 windmill dashboard로 변경
  • 2021.07.29

    • [박소영]
      • 신청하기 작성 페이지 주관식, 파일 업로드 형 신청 폼 추가하기 구현.
    • [박선애]
      • 신청하기 척도형 추가/삭제 구현
  • 2021.07.28

    • [박의진, 김가영]
      • 신청하기 신청폼 버튼 + 모달 생성
      • 신청하기 submit 기능 구현 중
    • [윤주현]
      • 구글 아이디로 회원가입 지원이 가능토록 기능 추가
    • [박선애]
      • 메뉴 추가/수정/삭제 기능 추가
    • [박소영]
      • 신청하기 작성 페이지 추가(신청 폼 추가 제외 구현).
      • 신청하기 작성 페이지 신청 폼 모달 수정.
      • 메인 페이지 신청하기 리스트 표시.
  • 2021.07.27

    • [윤주현]
      • main.jsp의 영역1에 nav-tabs 수정
      • 구글용 로그인, 구글용 회원가입 제작 중, 구글 로그인 지원
      • 헤더 버그 수정
    • [박소영]
      • 신청하기 뷰 페이지 추가.
      • 신청하기 리스트 페이지 수정
  • 2021.07.26

    • [박의진]
      • bbs_view 댓글기능 수정/삭제기능 수정
      • bbs_view 댓글 추가/ 수정 / 삭제 기능 완성
    • [김가영]
      • K-WITH교육원 홈페이지에서 데이터 수집해 db 작성
      • 연락처 및 오시는길 뒤로가기 버튼 구현, 수정
    • [김가영, 박의진, 박소영]
      • 신청하기 게시판 테이블 작성
    • [박선애]
      • 메뉴 관리 페이지 메뉴 리스트 띄우기
    • [윤주현]
      • 일반 게시판에서 전체일 때는 글 쓰기 버튼이 뜨지 않도록 수정, 주석처리 되어있던 것 복원, 메인에서 게시글로 바… 로 이동하게 수정
      • 신청하기 등 태그라이브러리를 bbs에 적용함
      • 전공별 게시판 + 전공용 헤더 제작
      • 전공별 게시판 분리
      • 구글 로그인 도입 (테스트 시작)
    • [박소영]
      • 관리자 페이지 회원 권한 수정 기능 추가
      • 로그확인 페이지 추가.
      • 로그확인 페이지 로그인, 회원가입, 탈퇴, 비밀번호변경, 구분변경, 회원정보수정 로그 추가 기능 구현.
      • 신청하기 리스트 페이지 추가.
  • 2021.07.24

    • [박의진]
      • 게시판 댓글 기능 완료
      • bbs 댓글기능 수정
    • [윤주현]
      • 구글 People API 정책에 따라 토큰을 이용한 백엔드 인증 기능 테스트(완료)
      • 메인 페이지에 바로가기를 DB에 연동시킴 (최대 6개 리미트 걸어야 할듯)
      • 메인 페이지에 게시판 연동
    • [박소영]
      • 커리큘럼 페이지 수정, 삭제 버튼 권한 제한
    • [김가영]
      • 게시판 업로드 파일 삭제, 보기 구현
  • 2021.07.23

    • [박의진]
      • 게시판 댓글 UI 수정 (ajax구현 아직)
    • [윤주현]
      • JUnit 연결
      • 메인 바로가기 레이아웃 설정
      • 회원가입 시 학과 통제용 db 제작
      • 구글 프론트 인증이 가능하도록 테스트
    • [박선애]
      • 엑셀 기능>DB에 있는 유저 데이터 엑셀 형식으로 다운로드 가능
  • 2021.07.22

    • [윤주현]
      • 게시판 호환 이슈 해결
  • 2021.07.21

    • [박의진]
      • bbs_view에서 댓글 UI 구현 (ajax구현 아직)
      • Comment DTO, CommentDAO, Comment DB 구현
    • [공 통]
      • 홈페이지 리뉴얼
      • 각종 DB 변경 및 홈페이지 구조에 맞는 컨셉으로 재설계
    • [윤주현]
      • 다운로드 기능 활성화
      • 슬라이더, 위치 및 연락처 (구.연구실) 호환 이슈 해결
      • 헤더에 num 설정 수정
      • 메인 페이지에서 전공 이동 기능 삭제
    • [박소영]
      • 게시판 글 작성, 수정, 삭제 기능 구현
      • 게시판 글 작성, 수정, 삭제 버튼 권한 제한
      • 커리큘럼 페이지 파일 업로드 오류 수정
    • [박선애]
      • 추천 기능 구현
    • [김가영]
      • 게시판 파일 업로드 구현중
  • 2021.07.20

    • [박의진]

      • 메인화면 슬라이더 데이터 없을시 디폴트 화면 구성
      • 슬라이더 DB수정
    • [박소영]

      • 개발진 페이지 레이아웃 수정
    • [윤주현]

      • BBS 기본 규격 설계 및 구현 (기본 게시판 분류 및 게시글 확인까지 성공)
      • 전공 전환에 색상 연동
  • 2021.07.19

    • [윤주현]

      • BBS 기본 규격 설계 및 구현 (리스트 띄우기까지 성공)
      • page.jsp 경로 수정
    • [박소영]

      • 커리큘럼 페이지 연도별 이미지 추가, 수정, 삭제 기능 구현.
      • 비밀번호 초기화 기능 구현.
      • 에러페이지 화면 수정.
    • [박선애, 박소영, 윤주현]

      • ckeditor 이미지 업로드 에러 고침. (Uploader 클래스의 경로 문제)
    • [김가영, 박의진]

      • 연구실 페이지 사진 업로드기능 완료(데이터 추가, 삭제, 사진업로드 모든 기능 구현 완료)
    • [김가영]

      • 교수 페이지 대체 이미지 기능 추가
      • 경기대 로고 수정
    • [박의진]

      • 연구실 페이지 사진 업로드기능 완료(데이터 추가, 삭제, 사진업로드 모든 기능 구현 완료)
      • 연구실 페이지 대체 이미지 기능 추가, DB BBS 테이블 추가
      • BBS DTO 생성
      • 메인화면 슬라이더 사진 연동 완성
    • [박선애]

      • 동아리 수정 및 삭제 구현
  • 2021.07.18

    • [박소영]
      • 커리큘럼 페이지 연도별 이미지 추가하기, 수정하기 모달 레이아웃 구현. (동작 미구현)
  • 2021.07.17

    • [박소영]
      • 개발진 페이지 레이아웃 및 추가하기 모달 띄우기 구현.
      • 개발진 페이지 데이터 추가, 수정, 삭제 기능 구현.
      • 마이페이지 비밀번호 변경 버그 수정.
    • [박의진]
      • 사이트맵 완성 및 디자인 수정 (카드형식 / 리스트 형식 /그리드 레이아웃으로)
    • [윤주현]
      • 파일 업로드 기능 완성 (대문 관리에 시범 적용)
      • 파일 업로드 기능 전면 개편 (통합 업로드 방식), DAO 인터페이스 삭제 후 FileDAO를 통해서 작업토록 개선
      • 대문 파일 및 디비 추가 기능 완성 (메인 화면에 연동은 미구현)
      • 이미지 뷰어 기능 추가
  • 2021.07.16

    • [박소영]
      • 메인 페이지 우측 하단 일정 칸, 일정 검색 모달 구현.
      • 연구실 페이지 데이터 추가하기 기능 추가. (버그 있음)
    • [박의진]
      • 연구실 페이지 연구실 데이터 수정 /추가하기 기능 버그 수정 완료
    • [윤주현]
      • 서버 설정 완료 (도메인은 추후 연결 예정)
      • 파일 업로드 기능에서 formData를 통해 ajax로 파라미터 넘기는 작업 완료 (DAO연결부터는 미구현)
      • 원활한 서버 연동을 위해 마리아디비 비밀번호 변경!!!!!
  • 2021.07.15

    • [박의진]
      • 연구실 페이지 UI 개선 및 수정 기능을 Modal로 처리할 수 있도록 개선
    • [박소영]
      • admin_main의 하위 코드 전면 개편 및 최적화 (JS 전부 나눠버림 및 jQuery를 활용한 공동 Modal 사용으로 코드량 대폭 감소)
      • 일정 기능 추가, 수정을 Modal로 띄울 수 있게 개선. (동작은 미구현)
      • 일정 데이터 추가, 삭제, 수정 기능 구현.
    • [윤주현]
      • page_stand_alone 레이아웃 추가 및 연관된 페이지 (위치, 사이트맵, 개발진) 추가.
      • 좀 더 효율적인 taglib 사용을 위한 작업(customAction에 json관련 코드 추가). 이제부터 일부 변수는 taglib에서 Java -> JSON 직접 접근이 가능해짐.
      • 동아리 페이지 개선
      • admin_main.jsp의 코드가 복잡해져 분리 시도
      • location.kgu에 지도 연동
    • [박선애]
      • 위치 및 연락처 페이지 구현
  • 2021.07.14

    • [김가영]
      • 교수 페이지 레이아웃 및 DB 연동(구현중)
    • [박선애]
      • 동아리 페이지 레이아웃 및 DB 연동(구현중)
    • [박의진]
      • 연구실 페이지 레이아웃 및 DB 연동
      • 연구실 수정/삭제(구현중)
    • [박소영]
      • 마이페이지 레이아웃 작성 및 개인정보 수정기능 추가
      • 비밀번호 변경 기능 추가
      • 개인 로그 레이아웃 작성
    • [윤주현]
      • 모바일 해상도 지원
      • 관리자가 전공을 추가/수정 기능 추가(삭제는 미구현)
      • 관리자 페이지에서 일정 DB 연동
  • 2021.07.13

    • [윤주현]
      • offcanvas에 전공DB가 연동될 수 있도록 개선 (중간 텍스트는 임시로 넣어놓은 관계로 수정 필요)
      • 회원 삭제 기능 추가(추후에 회원 탈퇴에서도 메소드 재활용이 가능할 것으로 보임)
      • 부트스트랩 아이콘 css 적용(page.jsp에서 확인 가능)
    • [박소영]
      • 교육과정 기능 추가(이미지 업로드는 추후 구현)
  • 2021.07.12

    • [공 동]
      • 프로젝트 전면 검토 및 각종 용어 통일 (header및 page 레이아웃에 관련된 용어 전면 수정)
      • 전공 간 이동 페이지 개선 (부트스트랩 offcanvas 도입)
      • information.kgu 관련 기능 완성 및 ckeditor 라이브러리 연동
      • 설계 ppt 완성
  • 2021.07.10

    • [윤주현]
      • 회원가입 시 희망구분이 DB와 연동되도록 개선
      • 페이지 제어 주체를 헤더에서 page.jsp로 변경
      • 홈페이지 내 전공 개념 추가
  • 2021.07.09

    • [윤주현]
      • 각 페이지에 따른 페이지 헤더, 페이지 메뉴가 뜰 수 있도록 DB 연동
      • 메인 화면에 그림자 적용
      • 손쉬운 레이아웃 관리를 위한 jsp 통합
      • 홈페이지 관리 페이지 추가
      • taglib 도입
  • 2021.07.08

    • [윤주현]
      • 관리자용 헤더 구현, 회원별 테스트 계정 생성
  • 2021.07.07

    • [박소영, 박의진, 박선애, 김가영]
      • 회원가입 기능 구현
    • [윤주현]
      • 모든 Action 클래스에서 상속받을 CustomAction 클래스의 개념을 추가함.(상속을 통해 모든 페이지가 공동으로 execute할 수 있는 역할을 함. 예를들어 Session에 저장할 핵심 정보를 어떤 페이지를 통해 접근하더라도 동일하게 적용할 수 있는 효과를 보일 수 있음. 기존에는 첫 페이지를 MainAction으로 시작해야만 이 모든것이 가능했음.)
      • 로그인에 성공 시 메인페이지로 이동할때 url이 login.kgu에서 main.kgu가 뜰 수 있도록 개선 (깔끔한 URL 정리를 위해 이걸로 대체함)
      • 헤더 디자인 개선 및 탭/페이지 DB 작성
  • 2021.07.06

    • [박소영] 회원가입 레이아웃 수정
    • [윤주현]
      • 로그인 기능 활성화(form 방식, sha256 적용), Header에 로그인 정보 태우기
      • 로그아웃 시 발생하는 리다이렉트 문제 해결(Index -> /)
      • Header를 collapse 스타일로 변경, 메인 레이아웃 그리드형식으로 제작, Header 2단으로 분리 및 container 적용, 로그인 버튼 경계면 삭제로 너비 재조정, 정보 페이지 레이아웃 작성 및 페이지 연동, 프로젝트 구조 개선
    • [박의진] 중복확인버튼 수정이랑 생년월일 희망구분 성별 학과, 메인화면 레이아웃 수정
  • 2021.07.05

    • [공 동] ERP으로 DB 계획 작성
    • [박선애, 김가영, 박의진, 박소영] 데이터베이스 테이블 생성<user, usertype, major, menu_pages, menu_tabs>
    • [윤주현] header 작성 및 탭 DB 연동, 로그인 관련 로직 제작 (기존 AI 관련 기능 전부 삭제. 버튼 연결은 하지 않음)
    • [박선애, 김가영] 로그인 페이지 레이아웃 작성 및 페이지 연결
    • [박의진, 박소영] 회원가입 레이아웃 작성 및 페이지 연결
  • 2021.07.01

    • [윤주현] 연습용 페이지에 Bootstrap Table 예제 넣음
  • 2021.06.30

    • [윤주현] 연습용 페이지에 각종 예제 탑재 (데이터 받아오기, 데이터 추가하기, 데이터 삭제하기, get방식으로 임시데이터 주고받기, 부트스트랩 모달페이지, 부트스트랩 탭전환)
  • 2021.06.26

    • [윤주현] 연습용 페이지 및 DAO DTO 제작, 마리아 디비 연결
  • 2021.06.24

    • [윤주현] 기본 프로젝트 핵심 코드 이식 및 작성, 각종 버전 Update 및 플랫폼 변경 (JavaEE6 -> JavaEE8, mysql -> mariaDB10.5, bootstrap4.0 -> bootstrap5.0), readme 작성, 프로젝트 github에 공개 (교수님 허락 받음.)
  • 2021.06.23

    • [전 체] 프로젝트 인수 인계

Project Structure

  • .idea

    IntelliJ 관련 설정. 컴퓨터마다 환경이 달라질 수 있습니다.

    ❌❌❌절대로 Github에 전송하지 마세요.❌❌❌

  • lib

    자바 프로젝트에서 사용 하는 외부 라이브러리(*.jar)를 모아 놓은 폴더입니다. 특정 클래스를 사용하려면 해당 라이브러리가 필요하며, 추가되는 경우 이 폴더에 등록해줘야 합니다. 최초 클론 시, 인텔리제이에 라이브러리 등록이 필요합니다.

  • out

    컴파일 시 생성되는 임시 폴더로, 이 폴더를 기반으로 프로그램을 실행하게 됩니다. 예를들어 실행 후, 파일을 첨부하는 경우 이 폴더에 저장이 됩니다. run 할때마다 out 폴더가 새롭게 생성됩니다. WAR파일을 생성하는 경우에도 out폴더에 들어오게됩니다.

    ❌❌❌절대로 Github에 전송하지 마세요.❌❌❌

  • src

    Web Server를 담당합니다. Java로 작성합니다.

    • kr.ac.kyonggi.swaig
      • common

        이 프로젝트의 뼈대를 잡고 있는 클래스들입니다. 절대로 수정하지 말아주세요.

        수정 시 반드시 수정 사유를 공유할 것

        • controller

          요청으로 인해 실행되는 클래스인 Controller가 들어있습니다. Tomcat과 직접 통신합니다. 또, Action Interface가 들어있어 Controller를 조금 더 쉽게 다룰 수 있도록 돕습니다.

        • filter

          UTF-8설정 등을 담당합니다. 모든 페이지가 실행될 때 이 클래스가 영향을 끼치곤 합니다.

        • index

          레거시 코드

        • sql

          sql 로그인을 대신 해주는 Config클래스가 있습니다.

      • handler

        이 패키지는 저희가 100% 구현해야하는 부분입니다.

        • action

          Controller 클래스로부터 실행이 되는 Action 클래스들이 모여있습니다.

          //action 코드 예시
          public class TestAction implements Action {
              @Override
              public String execute(HttpServletRequest request, HttpServletResponse response) throws Exception {
                  Gson gson = new Gson();
                  request.setAttribute("getSomething", gson.toJson(TestDAO.getInstance().getSomething(1)));
                  return "RequestDispatcher:test.jsp";
              }
          }
        • dao

          쿼리문을 직접 작성하는 클래스들 입니다.

          DBUtils 라이브러리를 사용하며, mariaDB와 직접 통신합니다.

          //DAO클래스 예시
          public class TestDAO {
              public static TestDAO it;
              public static TestDAO getInstance() { //인스턴스 생성
                  if (it == null)
                       it = new TestDAO();
                  return it;
              }
          //테스트 메소드
          public ArrayList<TestDTO> getSomething(int num) {
              ArrayList<TestDTO> result = null;
              List<Map<String, Object>> list = null;
              Connection conn = Config.getInstance().sqlLogin();
              try {
              QueryRunner queryRunner = new QueryRunner();
              list = queryRunner.query(conn, "SELECT * FROM customer WHERE oid=?", new MapListHandler(), num);
              } catch (SQLException e) {
              e.printStackTrace();
              } finally {
              DbUtils.closeQuietly(conn);
              }
              Gson gson = new Gson();
              result = gson.fromJson(gson.toJson(list), new TypeToken<List<TestDTO>>() {
              }.getType());
              return result;
              }
          }
          • DTO

            mariaDB로 부터 받은 DB를 자바 클래스에 태우기 위한 클래스입니다.

            DB 테이블 하나 당 DTO 한 개가 존재한다고 생각하시면 편합니다.

            public class TestDTO {
                private String oid;
                private String name;
                private String phoneNumber;
                public String getOid() {return oid;}
                public void setOid(String oid) {this.oid = oid;}
                public String getName() {return name;}
                public void setName(String name) {this.name = name;}
                public String getPhoneNumber() {return phoneNumber; }
                public void setPhoneNumber(String phoneNumber) {this.phoneNumber = phoneNumber;}
            }
  • web

    View를 담당합니다. JSP로 작성합니다.

    • css

      JSP에서 사용 할 css를 모아놓은 폴더입니다.

    • js

      JSP에서 사용 할 js를 모아놓은 폴더입니다.

    • WEB-INF
      • jsp

        JSP에서 *.kgu 형식으로 된 action클래스를 요청합니다.

        *.kgu 형식의 경로는 class.properties에서 찾을 수 있습니다.

        앞선 Action 클래스에서 정의된 DB를 받아와서 JS로 가공한 후, HTML에 삽입합니다.

        //앞선 설정으로 setAttribute 된 자바 변수를 JSP에서 받는 예시 (JQuery와 JSP문법을 사용하여 데이터를 가공한 후, id에 넘겨서 삽입함.)
        <script> 
        $(document).ready(function(){
            makeinfo1();
        })
        function makeinfo1(){
            var data = <%=getSomething%>;
            var list = $('#testDataPrinter');
            var text = '';
            text+= '<div>'+'oid : '+data[0].oid+'/ name : '+data[0].name+'/ phoneNumber : '+data[0].phoneNumber+'</div>';
            list.append(text);
        }
        </script>
      • lib

        웹에서 사용할 라이브러리를 넣습니다.


How To Deploy


How it works

  • 메인화면이 뜨기까지의 동작과정
  • 로그인
  • ㅇㅇ

Tools

  • IntelliJ Ultimate 2021.1
  • Tomcat 9.0.48

    현 시점의 Tomcat 10에서는 javax를 지원하지 않아 업데이트하면 안됩니다. server api를 인식하지 못하는 문제가 있음.

  • JSP
  • MariaDB 10.5

    mysql과 다르게 대소문자를 확실히 지켜야 합니다.

  • DBUtils
  • Java EE8
  • Bootstrap 5.0
  • JQuery
  • Ajax

References


About

경기대학교 소프트웨어중심대학 홈페이지 개발 프로젝트 (CS-HOME 6기)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published