1. 다운로드 받고 싶은 경로로 이동 2. 다운로드 (root 권한으로 다운로드 해야 함) wget -c http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.78/bin/apache-tomcat-8.5.78.tar.gz 3. 압축 해제 tar -zxvf apache-tomcat-8.5.78.tar.gz 4. 디렉터리 이름 변경 mv apache-tomcat-8.5.78.tar.gz tomcat 5. 톰캣 실행하기 cd [tomcat 위치 경로]/bin ./startup.sh 6. 방화벽 설정 firewall-cmd --permanent --zone=public --add-port=8080/tcp firewall-cmd --reload 7. http://IP주소:8..
AJAX (Async Javascript and XML) - 비동기 자바스크립트와 XML (요즘엔 JSON을 많이 사용) - 해당 웹 페이지를 새로고침하지 않고 요청을 보내 응답 받은 내용을 현재 페이지에 반영할 수 있는 문법 - 주로 @RestController에 요청을 보내 데이터만 가져와서 활용하는 방식으로 사용한다. - 서버로부터 데이터를 응답받을 때마다 이벤트가 발생하고 해당 이벤트를 처리하여 사용한다. XMLHttpRequest - 자바스크립트의 비동기 통신 요청 객체 - 요청을 보내도 페이지가 새로고침 되지 않는다. - 인스턴스를 생성한 후 해당 인스턴스에 여러 설정을 한 뒤 요청을 보낸다. xhttp.open(method, url) - 첫 번째 파라미터에는 요청 방식을 설정한다. (GET,..
web.xml에 다음과 같이 에러페이지를 등록할 수 있다. 404 /error/notfound - 해당 에러 코드 발생 시 포워드 처리가 아니라 리다이렉트 처리이므로 컨트롤러에서 별도 처리가 필요하다. 에러 처리 컨트롤러 @RequestMapping("/error") @Controller public class ErrorController { @GetMapping("/notfound") void notFound() { } }
JSON - JavaScript Object Notation - 언제든지 자바스크립트 오브젝트로 변환할 수 있는 문자열 형식 - 다양한 다른 언어들의 객체로 변환하기에도 편리하기 때문에 객체들의 공용어로 활용되고 있다. - 언어에 종속되어 있지 않은 공통 규격 자바에서 JSON 활용하기 com.googlecode.json-simple json-simple 1.1.1 JSONParser - JSON 형식 문자열을 JSONObject로 변환하는 기능을 가진 클래스 - 문자열로 전달하거나 Reader를 전달하여 사용할 수 있다. JSONObject - 자바의 Map처럼 사용할 수 있는 객체 - 해당 객체에 값들을 추가한 후에 .toJSONString()을 호출하여 JSON 형식의 문자열을 얻을 수 있다. - ..
REST - HTTP URI로 해당 자원을 식별하고 HTTP method로 해당 자원에 대한 CRUD를 구분하여 자원만 리턴하는 방식 - HTML 뷰 페이지가 아닌 자원만 응답하기 때문에 웹 브라우저가 아닌 프로그램에서도 서버를 활용할 수 있다는 장점이 있다. - Create, Insert (POST method) POST:/employee - 새 사원을 추가한다. - Read, Select (GET method) GET:/employee/105 - 105번 사원을 조회한다. - Update (PUT method) PUT:/employee/183 - 183번 사원을 수정한다. - Delete (DELETE method) DELETE:/employee/170 - 170번 사원을 삭제한다. Spring RE..
Log4jdbc - jdbc에서 발생하는 작업들을 로그로 찍어주는 라이브러리 - 디버깅이 매우 수월해진다. 적용 순서 1. pom.xml에 등록 org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4.1 1.16 2. jdbcUrl, driverClassName 설정 (root-context.xml) 3. resources에 파일 추가 파일명: log4jdbc.log4j2.properties 파일내용: log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator 4. log4j.xml에 logger 추가 jdbc.sqlonly : 실행하는 SQL문을 출력한다. jdbc.sqltiming : 실행하는 ..
프로젝트 계층 - 프로젝트를 구성하는 소스 코드들을 계층별로 분리한 것 - 화면 계층 (Presentation Layer) - 비즈니스 계층 (Business Layer) - 영속 계층 (Persistence Layer) 화면 계층 - 화면에 보이는 코드를 작성하는 계층 비즈니스 계층 - 고객의 요구사항과 관련된 내용을 구현하는 계층 - 하나의 요청이 여러개의 비즈니스 로직을 요구하거나 하나의 비즈니스 로직이 여러 요청에서 사용되는 경우가 있기 떄문에 계층의 분리가 필요하다. 영속 계층 - 저장되어있는 데이터를 꺼내오는 작업을 구현하는 계층 - 하나의 비즈니스 로직이 데이터에 여러번 접근해야하는 경우도 있고 하나의 데이터가 여러 비즈니스 로직에 사용되는 경우가 있기 때문에 계층의 분리가 필요하다. 스프링..