전체 글

배운 것에 대한 내 생각을 가지고 정리하자
스프링 부트와 mySql을 연동하여 개발하던 도중, 아래와 같은 오류가 발생 com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Out of range value for column 데이터 길이만 바꾸면 되는줄 알고 데이터 유형은 INT인 채로 길이만 20으로 바꾸니 오류가 계속 났다.. 데이터 길이가 10 이상이면, BIGINT로 바꿔주자.
스프링 부트로 개발하던 도중 No serializer found for class 관련 오류가 났다. 나의 오류 원인은 @responseBody로 hashMap을 리턴했는데, 그 안에서 Json으로 변환 도중에 오류가 났던 것 같다. 관련 에러에 대해서 검색해본 결과, 아래 코드를 properties에 작성해주면 된다고 한다. jackson.serialization.fail-on-empty-beans = false 위 오류 사항에 대해서 다음번에 자세하게 알아봐야겠다.
이번 스프링 부트를 통한 MVC 설정은 JPA - MySql - Thymeleaf를 통해 만들었습니다. - [build.gradle]에 dependency 추가 dependencies { //jpa,jdbc관련 dependency implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-jdbc' implementation("commons-dbcp:commons-dbcp:1.4") implementation("org.springframework.boot:spring-boot-starter-jdbc:2.0.1.RELEASE") i..
git bash로 프로젝트 올리는 방법에 대하여... - 우선 github의 repository가 생성되어 있다고 가정 - 업로드하려는 프로젝트가 살고있는 workspace로 이동(현재 IDE에서 작업중인) - 해당 프로젝트 우클릭 후 [git bash] 클릭(git bash가 안뜬다면 -> 다운로드사이트) - 만약 처음 깃을 다운받고 사용한다면 기본 유저 정보를 등록해야 한다. 유저 정보를 등록하는 방법은 아래 소스에서! 자세한 설명은 Git-GIt 최초 설정 $ git config --global user.name "John Doe" $ git config --global user.email johndoe@example.com - git bash를 실행하면 아래와 같은 화면이 뜬다 - [git add..
깃에 프로젝트를 올리기 전에 repository를 커밋할 경우 push나 pull이 안되는 경우가 있다. 나도 안됐기 때문에 찾아봤고, 까먹을까봐 블로그에 남겨놓는다... 에러 메세지 C:\Users\git>git push origin master To https://github.com/user/project.git ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'https://github.com/user/project.git' hint: Updates were rejected because the tip of your current branch is behind hint: its remote coun..
깃에 프로젝트를 올리다보면 gitignore를 추가하기 전에 프로젝트를 올려서 업로드 하기싫은 파일이 업로드 되는 경우가 있다. 깃은 이미 업로드한 파일들을 track(추적)하게 되는데, gitignore를 올리기 전에 프로젝트를 업로드를 하면 이 track에 프로젝트의 모든 파일이 올라가므로, gitignore 파일을 추가해도 track에 잡혀서 업로드가 되는 것 같다. 이를 해결하기 위해서 나는 'git rm --cached [파일명]' 명령어를 사용했다. [파일명]에는 그 파일이 속해있는 모든 경로를 다 적어줘야 하는데, 그 이유는 깃이 기본 경로를 프로젝트명으로 잡고 있기 때문인 것 같다.
보통 스프링 부트에서는 타임리프를 사용하는데, 스프링을 먼저 써보고 타일즈를 먼저 배워서 그런지 아직까진 타일즈가 편하다고 느껴서 스프링 부트에서의 타일즈 설정을 찾아보고 내가 겪은 점을 써본다. - [build.gradle] tiles 관련 dependency 추가 - 우선 jsp를 파싱해주기 위해서 [tomcat-embed-jasper]를 추가해줘야한다. 이게 없으면, 경로를 아무리 잘 잡아도 해당 jsp를 찾을 수 없다는 mapping 에러가 뜨게 된다. - 그리고, jsp를 쓰면 view에서 처리해줄 jstl을 사용하기때문에 이와 관련된 dependency를 추가해준다 - 마지막으로 tiles관련 dependency들을 추가해준다. dependencies { ......... implementat..
스프링에서는 XML에서 리소스 경로를 추가해줘야했기 때문에, 스프링 부트에서 리소스 경로를 어떻게 잡아줘야할지 찾아보게 되었고, 스프링 부트의 편리함을 다시 한 번 느낀다.. - 우선 스프링 부트는 [spring-boot-web-starter]에서 이러한 경로들을 미리 잡아준다 - 필요한 정보만 적어보자면, 리소스 경로가 /resources/static/** 이렇게 잡혀있기 때문에 우리가 html이나 jsp에서 리소스 경로를 추가하려면, 저 밑에 폴더와 파일을 생성해주면 된다. - 아래는 내가 설정한 리소스 경로 사진과 실제 적용 코드이다.
iron_jin
學而不思則罔(학이불사즉망)