Java/Spring MVC 43

[20.10.29 SpMVC_EMS_2,4(메일송수신 프로젝트), SpMVC_EMS_3(xml을 쓰지않고 자바Config를 사용한 프로젝트)]

SpMVC_EMS_3 이거세개만둠 클래스 상속 extends 인터페이스 상속 implements 이 세개의 xml을 만든것이다!!!! config라는 접미사가 붙은 클래스를 만들엇다 쟤네가하는일을 xml이없어도 오류내지말아라!하고 프로퍼티 pom.xml만들어줌 일단 config만들면 config어노테이션 붙이자 파일 업 컨피그 만듬 SpMVC_EMS_2,4 메일전송에 필요한 dependency 스프링컨텍스트 support 랑 mvc아래에 붙여넣어줌 버전은 아무거나 가져오고 버전별로 칸막이쳐져있는데 5.3은 칸막이쳐져있어서 우리 코드와ㅓ 호환성이 떨어질수도 있다 어쨋든 우린 버전을 일관성있기 5.2.8로 사용하고있어서 아무버전 가지고온다음에 복붙하고 mvc버전부분 복사해서 붙여넣어준다! java mail ..

Java/Spring MVC 2020.10.30

[20.10.28 SpMVC_EMS_2 ] 스프링 CRUD 구현하는 순서 적어놓음/ 기본 CRUD했움/ 운영체제 별로 파일 저장할 경로 설정

스프링 CRUD 구현하는 순서 더보기 pom.xml home.jsp 삭제 후 재생성 controller 패키지 만들고거기로 홈컨트롤러 이둥 서블릿컨텍스트에서 스캔하는 부분 변경 mybatis context model패키지 만들면서 VO생성 매퍼패키지에에 다오만들기 홈.jsp꾸미기 write.jsp만듬 홈컨트롤러 주석삭제하고 write get,post메서드만들깅 그다음 다시 view.jsp만듬 서비스 인터페이스 만들고 서비스 임플림먼트 클래스만듬 거기의 서비스 이름을 컨트롤러에 붙여줄때 오타안나게 제대로 복붙하장 (퀄리파이어) 다오만들기 컨트롤러에 메서드 구현 update만들기 GET 만듬 EMsServiceimpl가서 파인드바이 아이디 리턴햊두는 코드 만들고 다오에 아직 안만들어서 크리에이트 메서드 실행..

Java/Spring MVC 2020.10.30

[20.10.23 SpMVC_BBS_2020] 멀티이미지

멀티이미지 멀티 이미지하려면 name="files"해줘야함 이미지 name은 일부러 vo와 다르게 해줘떠 >> write.jsp 이 name과 멀티파일의 files와 fileserviceV5 이 파람의 네임이같아야 동작을 하는거임!! >> bbsController null 포인터 exception을 막으려면 null 체크해줘야하는데 스프링 내부적으로 방어체계가 만들어져있어서 이걸빼먹어도 가능했던거임

Java/Spring MVC 2020.10.30

[20.10.22 HTML/bbs_2020, SpMVC_BBS_2020] 웹 서버와 WAS 연동 , RestFul(PUT,DELETE,GET,POST)

@RequestBody를 쓸 때 jackson-databind 를 반드시 넣어줘야한다. 안넣어주면 변환이 안되어서 오류가 발생! >> pom.xml 카피 퀄리파이드 하고 .class지워 이걸 안해주면 put method타입으로 데이터가 넘어오지 않는다!! 톰캣은 보안상 문제때문에 put delete를 사용안함 버전에 따라서 수신을 못하는 경우가 있음. 그때는 톰캣을 버전업해주자~! 9.0.26인가 그전부터는 막혀있음 8.x 는열려있고 9.x에 넘어오면서 닫아버림 인코딩 부분, put 필터, 시큐리티 필터 시큐리티 안하면 빼도됌! RESTFul 을 자주 사용해줄텐데 안되면 저 필터를 사용해주장~!!! 5.1 버전 이상에서는 FormContentFilter를 써주라고 적혀져있었음 그래서 httpPut 말고!..

Java/Spring MVC 2020.10.22

[20.10.20 SpMVC_BBS_2020, HTML > bbs_2020] 파일 업로드 배우기!(FileUpload.md 참고), html event

이부분은 파일이름을 *로 생략하지말자! 파일이름들을 나열하는게 좋다 servlet부분은 상관 없음! url 끝에 .do라는 것만 따라왔을때만 서블릿 컨트롤러로 보냄 나머지는 webapp아래에 있는 jsp들을 찾기 시작한다! 원래는 / 이렇게 되어있는데 : 이건 모든 url들이 컨트롤러로 바로감 이러이러한 패턴도 있다는걸 보여주심 다시 /로 바꿈 이거 안해놓으면 404 오류가 날고양 저거는 같은 위치에잇어야함 >> web.xml 필요한만큼 패턴을 늘려서 사용 가능! 이런 패턴은 썩 좋은 패턴은 아니라는 것. 이런식들로 가능함 기본값은 이러이러한 패턴 가장 중요한 부분은 extends 상속부분! 필요한부분들은 상속받아 사용할 수 있음. >> tiles-layout.xml 파일 업로드에 필요한 Dependen..

Java/Spring MVC 2020.10.20

[20.10.19 SpMVC_BBS_2020]

bbs list를 호출하게되면 list.jsp파일을 열어서 렌더링하라는 것 마찬가지로 wirte를 보내게되면 *대신 write단어가 들어가능거! 저거 하나만 만들어놓으면 bbs로 시작되는 모든 레이아웃을 커버할 수 있음!! >> tiles-layout.xml 동적 sql 문 sql클래스가 sql query를 만들어 낸다. mapper의 @해서 만들수도 있고 xml을 만들수 있지만 별도의 클래스를 만들어서 sql 클래스를 호출해서 사용할수 있다. @InsertProvider(type = BBsSQL.class, method="bbs_insert") public int insert(BBsVO bBsVO); @UpdateProvider(type = BBsSQL.class, method="bbs_update")..

Java/Spring MVC 2020.10.19

[20.10.14 SpMVC_Security] tiles-context, 스프링 로그인 폼

>> tiles-context.xml 빈을 만드는 과정에서 오류가 발생했다는 의미 tiles컨텍스트를 가면 저위에처럼 주입을 시켜놨는데 인식을 못하게되는거임 그래서 오류가 발생 ref로 되어있던걸 변경해주고 똑같은 클래스를 value에 지정해줘야함 value에서 바로 자동완성이 안되기 때문에 임시로 클래스를 만들어준다음에 잘라서 붙여넣기해주자 제이에스파일을 찾을수 없을때 한글이 깨지는 경우 web.xml에 이 값을 추가해주면 한글을 다시 복구 할 수 있음 security 사용할때는 별 문제 없음 사용자가 왜 로그인이 실패했는지 알려주는!! 세션에 담겨있는 값을 삭제하라는!!! >>login.jsp

Java/Spring MVC 2020.10.19

[20.10.12 SpMVC_ReadBook2] @RequiredArgsConstructor

private final ReadBookDao rbookDao; Service, Dao와 같은 Dependency Inject가 일어나는 클래스들 @Autowired를 주로 많이 사용하는데 @Autowired로 묶을 때 초근에 권장사항이 모든 변수의 Scope를 private으로 선언하라고 한다. @Autowired가 내부에서 메모리 누수현상이 발견되어서 가급적이면 private final로 선언을 하고 생성자를 만들어서 각각 객체 변수 초기화하도록 한다. final로 선언된 모든 변수는 반드시 생성자에서 외부로부터 주입받거나 자체적으로 변수를 초기화 하는 코드를 만들어야한다. 코딩을 하다보면 변수는 final로 선언했는데 생성자를 만들지 않아서 문제가 발생한다. 변수만 private final로 선언하..

Java/Spring MVC 2020.10.19