클래스를 만들었다! >> 빨리 스프링한테 알려줘야지!! 스프링에 등록하는 어노테이션 @Component VO, DTO @Repository DAO @Controller Controller @Mapper Mapper @Service Service @SpringBootTest Test @Configuration 설정파일 왼쪽에 콩(Bean)이 생기면 spring이 관리하는 것임. Lombok library Mybatis 설정 hikari = 라이브러리 이름, mybatis를 연동시켜줄 수 있는 친구 자동 mapping : 태그에 아이디가 메소드와 자동으로 매핑됨. 자동으로 알아서 구현체 들어가서 프록시 들어감. mapper.xml mapper.java > 인터페이스 : 미리 구현할 수 없음. 어떤 쿼리가 발..
*spring 순서 Mapper.xml > interface > method 매퍼(namespace)랑 인터페이스(경로)랑 연결 매퍼의 태그(아이디)가 메소드(이름)와 연결 버그. @Autowired 프록시가 들어와서 빨간 줄 그이는 건 버그니까 무시해도 됨. Spring MVC 동작 순서 1. 사용자의 Request는 Front-Controller인 DispatcherServlet을 통해 처리한다. 2. HandlerMapping은 Request의 처리를 담당하는 컨트롤러를 찾기 위해서 존재한다. HandlerMapping 인터페이스를 구현한 여러 객체 중 @RequestMapping 어노테이션이 적용된 것을 기준으로 판단하며, 적절한 컨트롤러가 찾아졌다면 HandlerAdapter를 이용해서 해당..
스프링이 구현체를 만들어서 프록시 수법으로 전달함. 실제 원본객체를 상속받아서 프록시를 만듦. 원본객체를 상속받으면 자식타입이 되니까 객체를 비교했을 때 ==은 false이지만(서로 다른 객체) instanceof은 true(같은 타입) 실무에서 객체2개를 비교해야 하는 상황이 많을 것임. DB를 조회했을 때 동일한 쿼리를 발생되면 동일한 객체에 일관성이 필요함. SELECT를 3번한다면, 3개의 객체를 만드는 게 아니라 기존 객체가 3번 돌아옴. 일관성이 있어야 다른 곳에서 수정을 했을 때 반영이 되기 때문. 객체의 주소가 똑같아야지만, 여기서 수정했을 때 다른 곳도 반영이 되므로. 객체 주소가 다르면 안됨. 프록시는 원본 주소를 가져오는 것이 아니라 내가 필요한 것만 갖고 있다가 갖고 있지 않은 것을..
[실습 1] 외부에서 상품명, 상품가격, 상품재고, 브랜드 전달받아서 화면에 전송 화면에서 4개 정보 입력 후 form태그로 전송한다. [실습 2] TaskVO 선언 int num, int kor, int eng, int math 선언 총점과 평균 점수 화면에 출력 [실습 3] 아이디와 비밀번호를 입력받은 후 아이디가 admin일 경우 admin.html로 이동 아이디가 user일 경우 user.html로 이동 - login.html : 아이디와 비밀번호 입력 페이지 출력 - admin.html : 관리자 페이지 출력 - user.html : 일반 회원 페이지 출력 [실습 4] 이름을 입력하고 출근 또는 퇴근 버튼을 클릭한다. 출근 시간은 09:00이며, 퇴근 시간은 17:00이다. 출근 버튼 클릭 시 ..
void 메소드일 경우, 요청한 경로의 페이지를 자동으로 응답한다. >> templates/test1/test1 원하는 페이지가 있다면, 리턴타입을 String으로 하고, return " " 경로 작성 ViewResolver가 return 앞에는 경로 뒤에는 확장자를 붙여줌. templates + " " + .html 페이지이동(GET) / 연산(POST) 동일한 경로일지라도 어떻게 요청하느냐에 따라서 다른 작업이 들어가야 한다. 경로 > /join GET > join페이지 이동 POST > 회원가입 DB insert 원래 value안에다가 써야하지만 하나만 쓸 때는 생략가능 경로는 동일하게 /ex02이지만 무슨 방식으로 전송했는지에 따라서 실행되는 메소드가 다름. 보통, get : 페이지 이동 post..
Intellij 설치 - 2020.01.01 구글에 IntelliJ 검색하고 다운로드 https://www.jetbrains.com/ko-kr/idea/download/other.html 20.1.1 버젼 무설치 버전 다운받기 기타 버전 - IntelliJ IDEA www.jetbrains.com https://blog.naver.com/PostView.nhn?blogId=adonise007&logNo=221944787819 Jetbrains Intellij IDEA 2020.1.1 and webstorm 2020.1.1 version crack Jetbrains 2020.1.1 버젼이 나왔습니다. 2010.1버전의 버그패치 버전입니다. Jetbrains 2020.1.1 이하 버... blog.naver..
프레임워크 뼈대나 근간을 이루는 코드들의 묶음. 라이브러리란, 개발자가 작성해놓은 코드파일을 의미하며, API란, 여러 라이브러리가 모여있는 패키지(JAR)를 의미한다. 프레임워크란, API가 굉장히 많이 모여져서 덩치가 커져있는 것을 의미한다. 개발자는 각 개개인의 능력차이가 큰 직종이고, 개발자 구성에 따라 프로젝트 결과 역시 큰 차이를 낳는다. 이런 상황을 극복하기 위한 코드의 결과물이 바로 프레임워크이다. 프로그램의 기본 흐름이나 구조를 정하고 모든 팀원이 이 구조에 자신의 코드를 추가하는 방식으로 개발하게 된다. 프레임워크의 장점 개발에 필요한 구조를 이미 코드로 만들어 놓았기 때문에, 실력이 부족한 개발자라 하더라도 반쯤 완성한 상태에서 필요한 부분을 조립하는 형태의 개발이 가능하다. 회사 입..