Java 87

[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

[20.10.08 SpMVC_ReadBook2,오라클 9/25 독서록] PathVariable, @SessionAttribute(), @ModelAttribute(), Spring form taglib를 연동한 write(입력 form) 구현, 다중 INSERT

여기서 BooksController와 MemberController가 중요하다 MemberController는 Security와 관련이 없지만 CRUD때문에! Spring Security만 가지고 와도 이걸 사용할 수 있다. 이 세가지는 security와 관련되어있음 jasypt는 암호를 암호화시키고 복호화시키고 DB에 연동할때 사용했던거임 실제로는 xml파일에서 거의썼지 나머지부분들에 설정하지 않았음. pathVariable은 ?seq= + seq를 사용 x >> book-detail.jsp @ResponseBody @RequestMapping(value = "/user_info", method=RequestMethod.GET) public UserDetailsVO userInfo(Principal p..

Java/Spring MVC 2020.10.08

[20.10.07 SpMVC_ReadBook2] SessionAttributes MemberController,BooksController참조

tx-context.xml은 beans와 tx만 체크 해준다 tx-context.xml 은 반드시 servlet-context.xml과 함께 있어야한다. 같은 폴더아래에 만들어준다. @SessionAttributes("bookVO") 이걸 붙여놓으면 입력박스에 히든으로 seq를 안넣어놔도된다 얘가 다 해주기 때문에 String seq해서 가능한거!!!!! >> BooksController readonly="true" 이걸 붙여주면 회원 아이디가 고정이 된다. >> member-update.jsp

Java/Spring MVC 2020.10.08

[20.10.05 SpMVC_ReadBook] security-contex.xml 코드 해석, 로그아웃 메소드는 포스트, web.xml의 <context-param> 순서, 모델어트리뷰트가 하는일

스프링에서 공통으로 사용하는 url 사용자가 어떠어떠한 패턴으로 요청을햇을때 권한을 부여하는 부분 policy! /admin/~~ url 관리자 권한으로 접근을 하면 "hasRole('ADMIN')" : 권한이 ADMIN인 사람만 접근을 가능하게 하라! RLOE이 ADMIN인 사람만 접근을 가능하게 하라는 이야기 여러 롤들을 지정할때는 hasAnyRole 필요할때는 컴마 찍어서 지정해주면 된다 자기와 관리자만 접근이 가능하도록 permitAll() : url이 가장 길게 올라와있는거 부터 올려라 패턴이 긴쪽부터 위로 올려야만이 내가 원하는대로 적용이 됌!!!!!! use-expressions : 를 설정 해주지 않으면 hasRole함수가 실행이 되지않는다 이 항목은 기본값으로 포함이된다. 로그아웃이 되면..

Java/Spring MVC 2020.10.05

[20.09.25 SpMVC_ReadBook] security-context, web.xml 파일 코드 해석, @RequiredArgsConstructor

' ~~/read' 우리 전체 프로젝트를 하게되면 객체, 클래스들을 지정하는 곳임 context parameter 컨텍스트가 실행된 다음에 appServlet은 자바 서버로 만든것이다라는 키워드 여기는 내가 코딩하는 것에 대한 설정들이 들어있는 코드 문지기 역할 : DispatcherServlet : 초기화 값 어떻게 구성되는지 알려주는 .xml에 들어있다 이런 이야기 우리는 아무것도 없지만 ~~.do 이런게 잇으면 그 페이지만 보안에 관련 네이버는 ~~.nhn이라는 접미사를 붙이기도한다. security에서는 enKor한글인코딩에 제일 먼저 나와야한다 org.springframework.web.filter.DelegatingFilterProxy DelegatingFilterProxy 찾아가기 DI : ..

Java/Spring MVC 2020.10.05

[20.09.25 SpMVC_Security_Simple]

SpMVC_Security_Simple //로그인이 끝나면 모두들어가도된다. /login : 모든사람들에게 인가된 페이지 // ** : 모든 패턴은 인증된사용자만 접근할 수 있도록 인증받은 사용자만 접근하라 // noop : 암호화 되지 않은 로그인을 시도하면 이 매니저가 실행이 되는 거임 로그인이 됏다 하면 인증이되었고 토큰이 부여된다. ↓ 이 아래는 필요한만큼 나열하면 된다. ex )roll 이 admin인 사람만 뭘 하고싶으면 새로 만들면 됌 이게 인증과 권한 부여 // 스프링에서 제공하는 아주 가장 기본적인 >> applicationContext.xml 이 값을 보내야 로그아웃이 된다 저것을 보고 토큰(token)이라고 한다 로그인을 하게되면 토큰을 부여받게 된다. CRUD의 CU를 할 때 우리가..

Java/Spring MVC 2020.10.05