개발환경이클립스자바 1.8windowpakage explorer에서 마우스 우클릭 - new - spring legacy project 선택project name 입력, templates에 spring mvc project 선택 후 nextapkage name 입력 후
위치 : pom.xml추가 해야할 것mybatis : mybatis 라이브러리mybatis-spring : mybatis와 spring 연동spirng-tx: spring에서 database 처리와 transaction 처리 라이브러리spring-jdbc: spring
log4jdbc-remix 추가slf4j-log4j12 추가Log4JdbcCustomFormatter 추가오류 수정설정하려고 파일을 여니까 갑자기 오류라며 빨간줄이 생겼다.\-> 해결 방법 이 부분을 이렇게 변경하면 된다.추가 코드
예시 url : localhost:8081?param1=1¶m2=2사용 방법 : 해당 url의 controller 메서드의 매개변수 부분에서 사용String뿐만 아니라 int등으로 자동 타입 변환3\. 속성 1\. value : url에 값이 넘어오는 변수 명 지정(다
pom.xml 파일자신의 junit버전에 맞게 commons-csv 라이브러리 추가url 맵핑리턴을 "ResponseEntity<byte\[]>"으로 해서 url을 연결시켜 줍니다.DB에서 csv 파일로 받을 데이터 가져오기그리고 csv 파일로 만들 데이터를 가져
배포할 PC에 JAVA가 없다면 설치하지만 설치 되어있다면 생략1\. 배포할 용도로 설치하는 것이라면 openjdk로도 충분하니 프로젝트와 맞는 버전으로 jdk를 설치합니다. msi 파일로 설치한다면 따로 java home을 설정하지 않아도 설정됩니다. 프로젝트와 맞는
spring 3.0부터 지원spring에서 제공하는 http 통신 템플릿http 통신을 단순화RESTful 원칙을 지킴 (json, xml을 쉽게 응답 받음)기계적이고 반복적인 코드들을 깔끔하게 정리Object로 받기getForObject나 postForObject를
문제상황 서버를 실행하고 오랜시간이 지나면 웹페이지 동작시 500에러가 발생했다.에러 내용은 DB connection 관련된 내용으로 발생했는데, 새로고침만으로 해결이 되는 단순한 문제라 connection 시간이 문제인거같아 관련 설정을 찾아보았고, 찾아본 내용을 정
npm install을 통해서 받아야 하므로 node.js가 설치되어있지 않다면 node.js부터 설치해야한다.1\. cmd를 관리자 권한으로 실행 한 뒤에 node.js가 설치된 경로로 이동한다.(그렇게 하지 않으니까 설치된 파일이 보이지 않거나 오류가 발생했었다,,
스프링 프로젝트를 배포해야 할 때, 배포할 pc에 java나 tomcat이 설치되어있지 않을 때 배포해야하는 상황일 때 간단히 배포하는 방법은 tomcat을 다운받을 때 .exe 설치 파일이 아니라 .zip 파일을 다운받아서 하는 것이다.이 방법은 window와 lin
관리자 권한으로 실행하지 않으면 오류가 날 수도 있으니 반드시 관리자 권한으로 실행한다.혹시 만약 삭제를 해야한다면이 명령을 입력합니다.들어가면 목록에 Apache Tomcat 이라고(서비스 이름을 따로 지정하지 않았을때) 뜨는 것을 찾아서 우클릭 - 속성 - 일반탭
jsp 프로젝트나 spring 프로젝트를 완성하면 배포해서 리눅스 서버에 배포하는 일이 종종 있는데 순서와 방법에 대해서 적으려고 합니다.기존에 있던 tomcat 폴더를 복사합니다.그 안에 webapps 폴더에서 ROOT 폴더와 ROOT.war파일을 삭제합니다.체크해야
어떤 사이트를 들어가게 되면 header, footer, sidebar, nav등은 여러 페이지에서 같은 레이아웃을 같고, 내용부분만 변하게 된다. 이러한 레이아웃을 적용하는 방법에는 아래처럼 여러가지가 있다.1\. <jsp:include>나 <%@ incl
예시 ) NginX, apache 등HTTP 요청에 대해 정적 리소스(이미지, 영상, html, css, js, 영상 등) 제공예시 ) tomcat, Jetty, Undertow 등HTTP 요청에 대해 1\. 정적 리소스 제공 (= Web Server 기능)다양한
코드를 하나하나 순차적으로 한 줄씩 실행동시 처리가 필요하다면 쓰레드를 여러개 생성해서 처리: java에서 main()을 실행하면, main이라는 이름을 가진 쓰레드가 실행되면서, main()안에 적혀있는 코드문을 한 줄 한 줄 실행함요청이 들어오면 쓰레드에게 할당\-
: 자바로 만든 어플리케이션의 구성요소들을 압축시켜 놓은 파일path 설정을 불필요: path정보를 유지하며 압축원하는 구성을 할 수 있음압축을 풀지 않아도 JDK에서 접근해서 사용할 수 있도록 지원스프링 부트는 WAS 서버 포함: 자바로 만든 어플리케이션의 구성요소들
HTTP 요청이 들어옴WAS : HTTP 요청 메세지를 기반으로 request와 response를 생성 후 Servlet에 전달Servlet : request와 response를 가지고 로직 수행을 하고, 결과를 response에 저장4.WAS : Servlet이 보
START LINE : 첫번째 줄HTTP 메서드 : exPOSTURL : ex) /save쿼리스트링 : url과 같이 붙어있기도 함스키마, 프로토콜 : ex) HTTP/1.1헤더 : START LINE 다음줄부터헤더 조회 : ex) Host , Content-Type
HTTP 메시지로 요청 GET - 쿼리 파라미터 특징 메시지 바디 없이 URL의 쿼리 파라미터에 데이터를 포함해서 전달 ex) /url?username=hello&age=20 검색, 필터, 페이징 등에서 많이 사용 > 쿼리 파라미터는 URL에 다음과 같이 ? 를 시작
HttpServletResponse HTTP 응답 메세지 역할 기본 사용법
Servlet 개발java코드에 HTML 코드를 같이 작성해야해서 작성하기 어렵고, 복잡하며, 지저분하다는 단점이 존재jsp 개발Servlet보다는 HTML작업은 조금 더 깔끔하게 진행 할 수 있지만, 이렇게 개발을 해도 상단에 java로 비즈니스 로직을 처리해서 유지
클라이언트로부터 요청이 들어왔을 떄, 클라이언트에게 응답이 나갔다가, 클라이언트가 다시 redirect경로로 다시 요청을 하는 것을 의미클라이언트가 인지 할 수 있고, URL도 redirect 경로로 변경됨서버 내부에서 일어나는 호출로 URL 변경이 되지 않고, 따라서
/WEB-INF 해당 경로 안에 jsp 페이지가 있으면 외부에서 직접 접근이 불가능ex) localhost:8080/WEB-INF/views/new-form.jsp 으로 new-form.jsp파일 접근 불가능해당 경로 안에 있다면 반드시 컨트롤러를 통해서만 접근이
도입 전도입 후controller 코드 중복: MVC 패턴을 적용해서 controller가 비즈니스 로직에만 집중 할 수 있게 되었지만,여러 기능에 맞추어 controller를 작성하다보면 controller마다 중복되는 코드가 존재함ex) view 주소, 해당 vie
RequestMappingHandlerAdapter는@RequestMapping은 를 처리하는 핸들러 어댑터이다.@RequestMapping 기반의 컨트롤러는 다양한 파라미터를 사용할 수 있다. 예를 들면 \`HttpServletRequest , Model, @Requ
devtools 의존성 추가 maven application.properties devtools는 파일 수정후 저장하면 자동으로 classpath에 존재하는 파일의 변경을 감지하고 자동으로 서버를 restart해주는 기능 JS 파일을 수정하기만 해도 자동으로 브라
openSSL 다운로드 openSSL.exe 실행다음 명령어 순서대로 입력ssl 적용 테스트 용이라 대충 만들었어요 :)keyStore 파일을 이용pem으로 인코딩된 인증서 및 개인 키 파일을 사용이렇게 설정을 하면 더이상 8080 포트에서 HTTP 연결을 지원하지 않
spring에서 만들 수 있는 응답 데이터는 크게 3종류로 나누어져 있다.각 응답 데이터를 어떻게 만들어서 응답하는지에 대해 정리해보고자 한다.정적 리소스 : js, css, images 등과 같이 변화가 없는 리소스를 의미동적인 html을 리턴할 때에는 뷰 템플릿을
클라이언트에서 서버로 요청 데이터를 전달할 때 가장 많이 사용하는 3가지 방식에 대해서 설명하고자한다./url?username=hello&age=20와 같이 HTTP 메시지 body없이 쿼리 파라미터에 데이터를 보내는 방식이다.html에 form 태그에 작성된 내용을
jdk : 1.8IDE : intelliJDB : Oracle 11gmavenspring bootmybatispom.xml 파일에 아래 코드를 추가해주세요.propetties 파일을 새로 생성해 아래의 코드를 추가해주세요. spring.datasource.driver-
컨트롤러의 중요한 역할 중 하나는 HTTP요청이 정상인지 검증하는 것이다.클라이언트 검증클라이언트 검증은 사용자에게 피드백이 빠르지만, 조작할 수 있어 보안에 취약서버 검증서버 검증은 보안에는 좋지만 피드백이 느림따라서 클라이언트 검증과 서버 검증을 적절하게 섞어서 사
개발을 하다보면 여러가지 환경(=개발, 배포, 테스트 등)에 맞춰 properties 파일의 값을 변경해줘야할 일이 있습니다.DB 접속 정보log 파일의 위치이런 내용들을 각 환경에 맞는 properties로 구성해놓는 뒤, 각 환경에서 가져다 쓰는 properties