타임리프 문법관련 오류(RFC 7230 and RFC 3986)
·
편안한코딩생활/오류 해결 일지
https://developer-rooney.tistory.com/181 [Thymeleaf] 타임리프 a태그 링크 작성 방법 타임리프에서 a태그를 작성할 때는 th:href="@{}" 을 이용하여 작성합니다. 글 상세보기 게시글 리스트 글 상세보기 글 상세보기 글 상세보기 developer-rooney.tistory.com HTTP Status 400 – Bad Request Type Exception Report Message Invalid character found in the request target [/review/delete?reviewId=${content_view.reviewId} ]. The valid characters are defined in RFC 7230 and RFC 398..
xml 경로 설정 오류
·
편안한코딩생활/오류 해결 일지
xml이 바인딩이 안되는 오류 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.example.project_machimo.review.dao.ReviewDao.list 인텔리제이의 디렉터리를 만들때 위처럼 mapper/review라고 했어야 했는데 패키지처럼 mapper.review로 만드는 바람에 계속 저 오류가 떴었다.. db에서 스네이크 표기법을 한 후 자바 dto변수에서도 스네이크를 했는데, 자바 변수에 롬복으로 @DATA를 달면 자동으로 get+카멜표기법의 변수이름 이 되서 오류가 난줄 알고, 그걸 수정하고 있었다.,, 스프링 부트가 스프링보다 훨씬 쉽다길래 금방 적응할 수 있을 줄 알았는데 ..
프로젝트 마취모- spring boot의 구조 파악하기
·
프로젝트
드디어 우리 팀 레포지토리가 생겼다! 이제 점프 투 스프링을 참고하여 차근차근 내가 맡은 파트인 [판매하기 기능/ 리뷰게시판]을 구현해보자. 판매게시판은 관리자에게 먼저 승인을 받은 후 올라가는 형태이기에 생각할 부분이 좀 더 필요할 것 같다. 일단 익숙한 리뷰게시판부터 구현하기로 했다. 스프링부트로 프로젝트를 만들면 기본 구조가 이렇게 된다고 한다. 스프링과 달라진 점이라면 1. 프로젝트 관리 도구 :이때까지는 maven을 통해 빌드했지만, gradle이 더 성능이 좋고 설정이 편리하다고 한다. 2. 자바버전 : 이때까지 8버전을 사용했으나 스프링 부트 3.0 이후로는 17버전 이상을 사용해야한다. 그리고 지금 받을 수 있는건 전부 3점대 이상임...ㅎ 3. 프로젝트 타입이 spring legecy가 ..
스프링부트 3. 스프링 부트 동작원리
·
백/spring boot
1. 스프링부트 동작원리 (1) 내장 톰켓을 가진다. 톰켓을 따로 설치할 필요 없이 바로 실행가능하다. 우선 톰켓에대한 개념 정리 다시필요. 소켓이 뭔지 알아야함. 소켓 : 운영체제가 가지고 있는 것. a가 5000번 포트를 열고 b가 ip주소 5000을 넣으면 서로 통신이 가능함. 그런데 이미 b가 a의 5000번 포트를 쓰고 있으면 c는 5000 번 포트로 연결할 방법이 없음 ⇒5000번 포트는 연결용도로만 쓰고 새로운 포트를 랜덤 생성해서 그걸로 통신함 근데 이렇게 되면 다른 사용자의 요청을 받을 수 없음 cpu가 b와 5001번으로 소통하고 있기 때문에 ⇒ 5001번을 만들때는 새로운 스레드를 만들어줌, 그리고 스레드가 만들어지면 원래 5000번은 끊김 소켓통신 : 시간을 쪼개서 동작. 장점: 연..
스프링 부트 2. JPA
·
백/spring boot
JPA란? JPA는 Java Persistence API 이다. JPA는 ORM 기술이다. JPA는 반복적인 CRUD 작업을 생략하게 해준다. JPA는 영속성 컨텍스트를 가지고 있다. JPA는 DB와 OOP의 불일치성을 해결하기 위한 방법론을 제공한다. (DB는 객체저장 불가능) JPA는 OOP의 관점에서 모델링을 할 수 있게 해준다. (상속, 콤포지션, 연관관계) 방언 처리가 용이하여 Migration하기 좋음. 유지보수에도 좋음. JPA는 쉽지만 어렵다. JPA는 Java Persistence API 이다. ⇒ persistence: 영속성 컴퓨터의 ram에 있는 데이터는 휘발성이다. 이 데이터를 날아가지 못하게 하기 위해 하드디스크에 영구적으로 저장을 한다. 영속성 : 데이터를 생성한 프로그램이 종..
스프링부트 1. 기본개념정리
·
백/spring boot
스프링부트 1.기본개념정리 스프링부트 강좌 개념 정리 스프링은 프레임워크이다. 프레임워크이므로 우리가 아무리 내용을 바꿔도 스프링이 만든 틀안에 속하게된다. 틀 안에서 개발을 하면 아무리 이상하게 해도 최소한 틀 밖에 튀어나가지는 않는다! 스프링은 오픈소스이다. 오픈소스이기에 스프링의 내부 구조를 사용자가 볼 수 있으며, 불편한 부분을 내가 고칠수도 있다. 스프링은 IoC 컨테이너를 가진다. 스프링은 DI 를 지원한다. 스프링은 엄청나게 많은 필터를 가지고 있다. 스프링은 엄청나게 많은 어노테이션을 가지고 있다. (리플렉션, 컴파일체킹) 스프링은 MessageConverter를 가지고 있다. 기본값은 현재 Json이다. 스프링은 BufferedReader와 BufferedWriter를 쉽게 사용할 수 있..
oracle과 jsp를 연동해서 간단한 게시판(CRUD) 만들기
·
백/jsp
프로젝트 TO DO LIST 게시글 정보를 담을 수 있는 클래스 정의 BoardVo.java 데이터베이스에 접근하는 클래스 BoardDao.java WEB.XML INDEX.JSP지 CRUD 쿼리문