전체 글 131

JDBC (Mapper) / Exception

Mapper interface : 갖고있는 모든 메서드가 추상메서드이다 root-context에 Mapper를 사용하겠다고 등록해주어야 함 Namspaces에서 mybatis클릭해주면 source에 mybatis 추가된것을 볼 수 있음 com.zerock.mapper 패키지를 스캔해서 사용 하라고 추가해줘야 함 클래스의 정보를 꺼내서 이름이 무엇인지 사용하고 있는 logger가 공식적으로는 log4j이다 query를 다 확인하려면 기본jdbc가 아닌 모듈에서 바꾼 jdbc로 사용해야한다. 변경 전 변경 후 오류났을때 확인해야 할 사항 중 한 가지 repository에 저장된 jar파일 @ControllerAdvice 컨트롤러 역할을 하고, advice exception처리를 한다는 것을 의미 @Excep..

JDBC

1. JDBC드라이버 다운 2. connection pool (HikariCP)모듈로 설치 3. pool을 만드는 것은 spring이 해준다 4. root-context.xml에 bean 추가해준다 p.80 pom.xml에서 JDBC드라이버를 다운 Ojdbc (Oracle JDBC) pom.xml에 dependany를 추가해줌 ojdbc저장되었음을 확인 할 수 있음 메이븐 라이브러리 저장되는 곳 web.xml : 서블릿jsp와 관련된 설정 파일 context.xml : 어플리케이션 관련 파일 Connection pool : 기본적인 형태 HikariCP(JDBC Connection객체 관리) JDBC 드라이버 필요 getConnection ( protocol url , 로그인 아이디 , 비번, JDBC드..

Controller

심플 바인딩 get방식 parameter는 ulr뒤에 ?붙여서 사용 Appender: log를 어디에 출력할것인가 기존에 있던 것 뒤에 붙여 나가는 것. 로그를 찍을때 두 가지 appender가 있는데 console appender, 로그로 찍어주는 형태. 어떤 식으로 찍을 것인가. 밑에 패턴으로 나와있는 부분이 있다 콘솔에 이러한 형식으로 appender를 찍어라 %c : 클래스 -%m%n : file appender 로그를 찍을때 파일을 이용하는 로그가 있고, db를 이용하는 로그도 있다. 파일 로그를 이용하는 형태가 많다. 기본적인 로그라는 것이 있다. appender는 어딘가에 출력한다는 것이고, log는 무엇을 출력할 것인가. Model 객체를 spring에서 만들어줌. view에 공유될 수 있..

MVC설정

MVC 사용자의 Requset로 Controller를 호출 -> Controller에서 Model을 이용해 data처리 -> model을 통해 view로 전달 설계이유 : 추후 view를 교제할 때 사용자가 호출하는 URL자체에 변화 없게 만들 수 있기 때문 Controller: 개발자가 작성하는 클래스. Request를 처리하는 로직 작성. view에 전달해야 하는 데이터는 주로 Model 객체에 담아 전달. Spring MVC사용시, Servlet/JSP의 API (HttpServletRequest/Response) 사용 불필요 => 어노테이션, XML로 개발 가능 XML파일 : (Java confinguration은 xml필요X) web.xml : 톰캣 구동과 관련된 설정 - DispatcherSe..

spring 환경 설정

톰캣 서버 설정 java에서 묶어놓은 archvie압축파일 WAR : 결과물이 war한 파일로 나옴. 프로젝트 할때마다 변경해야 할 사항 1) 스프링프레임워크 2) 자바버전 버전을 5.0.7로 변경한 뒤 Build Path에서 maven libraries확인 하면 버전이 위와같이 5.0.7로 변경된 것을 확인 할 수 있음 오류 뜨는경우 problems에서 확인 가능 자바 버전 변경 3) 인코딩 (web.xml 인코딩 코드를 추가) UTF-8 인코딩 web.xml파일에 인코딩 파일 추가해주어야 함. UTF-8 소스코드 encodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true en..

Mybatis

return false를 하지 않은 경우 기본 이벤트 처리하러 감 =>href url처리하러.. service ( ) : 요청방식과 무관. 요청시마다 호출되는 메서드. 요청방식이 get/post인 경우 자동호출됨. 구분하고 싶지 않은 경우 service( ) 오버라이딩 하면 됨. nio 패키지 : 입출력보다 확장된 패키지. 출력에서 제공되지 않던 path에 관련된 라이브러리 제공해줌. contentType // 다운로드 할 파일의 형식 ex) 이미지/png, 이미지/jpg String contentType = Files.probeContentType(path); 파일의 형식을 찾으려하다보니 path인자가 필요함. 첨부파일로 무조건 다운로드를 할 경우 : attachment 응답파일 내용을 파일로 만들어주..

개발 공부/WEB 2023.08.02

git으로 협업하기

1. Repository 생성 2. 팀원 초대 Add people 팀원 id입력 수락을 기다리고 있는 멤버들 목록이 나옴 master branch : 완벽한 코드만 오라 (고객에게 보여주는 파일) git init : 추척 시작 git add 파일명 git commit -m " " git remote add origin http~ 주소 : 로컬 컴퓨터랑 repository 연결 git push origin 브랜치 : 브랜치로 로컬 컴퓨터에 있던 코드가 업로드 repository에 파일이 업로드 됨 develop 브랜치 생성 : 브랜치 하나 더 만들어줌 ( master 복사본 ) : 개발자를 위한 연습장이 필요함 git checkout -b develop master에서 develop으로 변경된 것을 확인 ..

개발 공부/GIT 2023.07.26

싱글톤패턴/ 파일 업로드

서블릿마다 service객체와 respository객체가 생성되어 메모리 낭비가 서블릿을 하나로 묶는 방법 서비스 객체를 싱글톤 패턴으로 만드는 방법 java -cp 클래스 1) .class찾아 JVM에 로드 2) ByteCode 검증 3) Byte -> Binary 재해석 4) 0,1로 해석된 내용 기억(Method영역) 5) static변수 자동초기화 6) Main( ) 호출 - Java SE 싱글톤패턴으로 변경하기 미리 생성된 service객체를 반환만 해준다 파일 업로드할때 요청 형식을 바꿔야 함. 첨부할때 규칙 ajax 다음페이지로 넘어가지 않고 바로 첨부가능!

개발 공부/WEB 2023.07.19

session / MVC

html -> jsp로 확장자 변경할 경우 property에서 인코딩 UTF-8해주어야 함 응답할 형식을 한번 만 결정해주어야 한다. 실행할 때 include태그를 이용하여 포함하면 정상 포함된다. 로그인 여부에 따라 메뉴가 바뀌도록 설정 로그인에 마우스를 가져가면 아래와 같이 path경로가 뜸! http://localhost:888/frontback/jsp/login.html 스타벅스코리아 상대경로보다 사용 권장 세션 속성(이름 :"loginedId")을 제거 요청 성공 시 , 중복된 경우 status를 서블릿에서 ( id 중복시 0, 사용가능 시 1로 설정) 응답 CustoemrRepository - selectById() 재사용 return타입으로 성공실패를 확인하지 않고 예외처리로 확인한다. id..

개발 공부/WEB 2023.07.14