목록Server (101)
써먹는 웹개발
Q) Url 호출별 결과값 호출방법 const http = require("http"); const { resolve } = require("path"); http .createServer((req, res) => { if (req.url === "/") { res.writeHead(200); res.end("main url"); } else if (req.url === "/upload") { res.writeHead(200); res.end("upload url"); } else if (req.url === "/delete") { res.writeHead(200); res.end("delete url"); } else { res.writeHead(404); res.end("Not Found!!!"); ..
1. 서버 실행 1) 소스 입력 - 파일명 : server.js const http = require("http"); http .createServer((req, res) => { res.writeHead(200, {"Content-Type": "text/html"}); res.end("Hello Word~!!!"); }) .listen(3000, () => { console.log("3000번 포트 서버 접속 완료~!!"); }); 2) 실행 node server.js 결과 : 3000번 포트 서버 접속 완료~!! 2. 다운로드 한 Postman 프로그램 확인 ※ 인터넷에서 실행시 'localhost:3000' 입력 Postman 실행 중간에 로그인 페이지 출력시, 페이지 하단의 'Skip signin..
1. @RequestMapping : Get 또는 Post 방식으로 매핑 요청 @Controller @RequestMapping("/home") // 1) Class Level public class HomeController { /* an HTTP GET for /home */ @RequestMapping(method = RequestMethod.GET) // 2) Handler Level public String getAllEmployees(Model model) { ... } /* an HTTP POST for /home/employees */ @RequestMapping(value = "/employees", method = RequestMethod.POST) public String addEmp..
Mybatis가 XML에 정의하기 때문에 부등호를 그냥 쓰면 오류가 나는데 태그에 존재하는 꺽쇠랑 동일하기 때문에 파싱에러가 난다. 문법은 예시 select * from A where A.START_DATE > TO_CHAR(sysdate,'yyyy-mm-dd') ]]>
의존 주입은 생성자로 생성된 함수를 인자로 주입받는 것을 말한다 소스 public class UnderstandDI { public static void memberUse1() { // 강한 결합 : 직접 생성 Member m1 = new Member(); // Member함수가 public일 경우는 정상작동, private일 경우에 에러발생 } public static void memberUse2(Member m) { // 약한 결합 : 생성된 것을 주입 받음 - 의존 주입 (Dependency Injection) Member m2 = m; } } // Member를 사용한다. --> Member의 기능에 의존한다 class Member { private Member() {} } 의존 주입의 장점은 주..
spring boot는 spring framework를 경량화 한 것이다. spring boot의 장점은 1) spring framework에서는 설정이 수동으로 되어있는 것에 비해 yml에서 대부분 간편하게 설정 가능하다. 2) 톰캣이 내부에 설치되어있기 때문에 구동시간이 반으로 줄어든다. 3) 기본 설정된 옵션들. ex) logback spring boot의 단점은 spring framework보다 설정이 제한적이며, 당연히 spring framework에서 안되는 기능은 spring boot에서 안된다. 요약 : spring boot는 개발자들이 개발에만 더욱 집중할 수 있도록한다. 참고 : https://www.youtube.com/watch?v=6h9qmKWK6Io
1. AOP(Advice Target Pointcut / 관점 지향 프로그래밍) 개념 - 비즈니스 로직 객체와 공통적인 부분 (권한, 트랜잭션, 예외처리, 로깅 등)을 분리하여 처리하는 것 ex) 모든 서비스에 시간 측정 기능(종료-시작 시간)이 필요할때 - 시간 측정 기능을 넣을때 개별적으로 해도 되는데 AOP를 쓰는 이유 : 소스 중복제거 용어정리 1) Advice : 어떤 부가기능을 언제 사용할지에 대한 정의 2) Target : 부가 기능이 적용될 대상 ex) 시간 측정하는 A,B 메서드는 Target / 그 외에는 Target이 아님 3) Pointcut : Advice를 적용할 Jointpoint를 선별하는 작업 - 시간 측정을 원하는 서비스에만 할 수 있게 선별하는 작업 ※ JointPoin..
1. Array 파라미터를 넘길때 AND 컬럼명 IN #{item} 2. Array 파라미터를 안 넘길때 service 부분 package kr.co.develop.service; import ...; @... public class CmCodeService { // 파라미터값이 없을때 public static boolean isEmpty(Object obj){ if( obj instanceof String ) return obj==null || "".equals(obj.toString().trim()); else if( obj instanceof List ) return obj==null || ((List)obj).isEmpty(); else if( obj instanceof Map ) return o..