에러 원인 톰캣에서 강제적으로 시작 페이지를 잡아 준다고 함 해결 Package Explorer에서 Servers → Tomcat → web.xml에서 해당 코드 주석 처리
SQLSyntaxErrorException 에러 원인 작업 중인 DB에 user라는 테이블이 존재하지 않음 해결 VIDEO테이블에 접근 해야 하는데 경로 지정을 잘못 해 준 케이스로 video_SQL.xml 파일에서 쿼리로 접근하는 insert into user → insert into VIDEO로 수정 Incorrect string value: ‘\xEB\x82\x98\… 에러 원인 DB의 데이터 타입이 TEXT인데 View에서 한글 입력 시 DB에서 UTF-8로의 인코딩이 되지 않아 발생하는 문제 해결 해당 테이블의 Charset 변경 ALTER TABLE `USER` CONVERT TO CHARSET UTF8;
MVC 프로젝트 폴더의 구조 src/main/java 자바 파일이 모여있는 곳 (Controller, service, vo, dao, dto, mapper, api..) src/main/resources 클래스의 리소스들을 보관하는 곳 DB연결을 위한 자원, 의존성 주입을 위한 XML 파일 등 자바 코드와 관련된 모든 것들을 보관한다 src/test 테스트를 위한 자바 파일 및 리소스를 보관하는 곳 Maven Dependencies 메이븐에서 자동으로 관리 해 주는 라이브러리 폴더로 pom.xml에 작성된 라이브러리들을 자동으로 다운받아 관리한다. src 웹 관련 자원들이 담겨 있는 루트 폴더로 test는 테스트 공간이다. src/main/webapp/resources 웹에 필요한 js, css, img..
프로젝트 만들기 1. New - Other에서 legacy검색 후 Spring Legacy Project 생성 2. 프로젝트 이름을 작성하고, Templates - Spring MVC Project 선택 후 Next 3. top-level package를 정의해주면 된다. pom.xml 사용할 버전과 pom.xml에 적혀 있는 버전이 다르다면 맞춰주면 된다. pom.xml (pom : project object model) Maven의 빌드 정보를 담고 있는 파일 Maven 자바 프로젝트를 관리하는 툴 (자바 소스를 컴파일하고 패키징해서 deploy까지 자동화 해 준다.) 미리 작성된 xml 파일을 이용하여 라이브러리를 자동으로 다운하거나 프로젝트를 빌드 해 준다. 해당 작업까지 완료한 후 1. Proj..
해당 프로젝트는 2023/01/25 ~ 2023/03/12 내에 진행되는 아카데미 내 수강생들끼리 팀을 나누어 진행한 모의 프로젝트입니다. 팀원은 5명이었으며, 프로젝트 리더를 맡았습니다. 이전 글 목록 1) 주어진 RFP를 바탕으로 주제 선정 - Spring MVC2 프로젝트 첫 회의 진행 후 바로 ERD 설계에 착수하였다. 딱히 셋이서 진행하는 것이 효율적이지 않다고 생각하여, 집에서 ERD 설계를 홀로 진행 후 팀원 간 공유를 통하여 부족 부분을 채워넣기로 하였다. ERD 설계 조 중 한 명은 자발적으로 노션 워크스페이스 생성 및 템플릿 제작을 해오겠다고 하여 노션 관련 사항은 맡기기로 하였다. ERD 설계 초안 내가 설계해 온 ERD는 다음과 같다 더 세부적인 DB 설계가 가능했지만, 기능 구현에..
해당 프로젝트는 2023/01/25 ~ 2023/03/12 내에 진행되는 아카데미 내 수강생들끼리 팀을 나누어 진행한 모의 프로젝트입니다. 팀원은 5명이었으며, 프로젝트 리더를 맡았습니다. 03.06 추가 개발언어 : Spring-framework(MVC) 5.2.18 RELEASE - Mybatis 3.5.4 mybatis - spring DB : MySQL 8.0.28 프론트 : HTML5 / CSS3 / JavaScript, J-Query / JSP 서버 : 톰캣 9.0.71 주제 선정 주어진 RFP는 총 네가지였다. 1. E-commerse 2. LMS 3. ERP 4. OTT시스템 주제 선정에 가장 큰 갈림길 두 가지는 완성도와 도전가치(난이도가 높은)였으며, 팀원 간에 회의 끝에 완성은 어떻게..
깊이 우선 탐색 ( Depth-First Search )루트 노드에서 시작해 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법 특징1. 모든 노드를 방문하고자 하는 경우에 사용한다.2. 단순 검색 속도는 너비 우선 탐색(BFS)에 비해 느리다.3. 검색이 아닌 순회를 할 경우 많이 사용한다.공통 상위를 가지는 아래 리프 노드들을 한방에 잘라내는게 가능하기 때문에 백트래킹에 사용된다.미로를 탐색할 때 한 방향으로 갈 수 있을 때까지 계속 가다가 더 이상 갈 수 없게 되면 다시 가장 가까운 갈림길로 돌아와서 다른 방향으로 다시 탐색을 진행하는 방법과 유사하다. 장점1. 현 경로상의 노드들만 기억하면 되기 때문에 저장 공간의 수요가 비교적 적다.2. 목표 노드가 깊은 단계에 있을 ..
너비 우선 탐색 ( Breadth-first search )트리나 그래프를 방문 또는 탐색하는 방법으로 루트 노드에서 시작해서 인접 노드를 먼저 탐색하는 방법. 탐색 방법1. 루트노드에서 시작한다. 2. 자식노드들을 저장한다. 3. 저장되어있는 노드를 방문하며 저장되어있는 노드들의 자식들을 저장하며 4. 위의 과정을 모든 노드를 방문할 때 까지 반복하며 완료 시 탐색을 종료한다. 특징1. 어떤 노드를 방문했는지 반드시 검사 해야 한다.2. Queue를 사용하는 경우가 일반적이며 재귀적으로 동작하지 않는다.3. Prim, Dijkstra알고리즘과 유사하다. 장점1. 노드의 수가 적고 깊이가 얕은 경우 빠르게 동작할 수 있다.2. 단순 검색 속도가 깊이 우선 탐색(DFS)보다 빠르다.3. 너비..