개발새발

[2019.12.04] 본문

[Daliy]

[2019.12.04]

재래김유진 2019. 12. 4. 11:28
728x90
반응형

이클립스랑 오라클 연결 테스트중 

 

failed to load applicationcontext 오류나서 

src/main/resources 아래에 log4jdbc.log4j2.properties 파일을 만들어줬다 

1
 

이렇게 그랬더니 오류가 바꼈다 

//JUnit은 success했지만  console에서 오류

 

No suitable driver found for jdbc -> jdbc에 적합한 드라이버가 없습니다.

WEB-INF 폴더 밑에 lib폴더 만들어서 톰캣안에 있는 ojdbc6.jar추가하고 

[오른쪽클릭]-[build path]-[configure build path]

 

 

모델 2 방식과 스프링 MVC

  • 모델 (Model) : 데이터 혹은 데이터를 처리하는 역할
  • 뷰 (View) : 결과 화면을 만들어 내는 데 사용하는 자원
  • 컨트롤러 (Controller) : 웹의 요청(request)을 처리하는 존재로 뷰와 모델 사이의 중간 통신 역할

 

 

모델 2 방식은

1) 개발자와 웹 퍼블리셔의 영역 분리.

2) 컨트롤러의 URI를 통해서 뷰를 제어하기 때문에, 뷰의 교체나 변경과 같은 유지보수에 유용하게 사용.

 

servlet-context.xml = 스프링 MVC 관련 설정만을 분리하기 위해서 만들어진 파일.

 

 

 

 

 

스프링 MVC에서 주로 사용하는 애노테이션의 종류

 

 

 

Model이라는 클래스를 파라미터로 사용 

Model 클래스는 import 구문에서 보듯이 스프링  MVC에서 기본적으로 제공되는 클래스이다.

이 클래스의 용도는 뷰에 원하는 데이터를 전달하는 일종의 컨테이너나 상자의 역할을 한다고 생각하면 된다.

 

Model에 데이터를 담을 때 addAttribute()메소드 사용 

 


(controller생성)리다이렉트를 해야하는 경우

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
 
@Controller
public class SampleController4 {
    private static final Logger logger = LoggerFactory.getLogger(SampleController2.class);
 
    @RequestMapping("/doE")
    public String doE(RedirectAttributes rttr) {
        logger.info("doE called but redirect to /doF..");
        
        rttr.addFlashAttribute("msg""THIS IS THE MESSAGE!! WITH REDIRECTED!");
        return "redirect://doF";
    }
    
    @RequestMapping("/doF")
    public void doF(@ModelAttribute String msg) {
        logger.info("doF called..."+msg);
    }
}
 
 

doE()메소드의 URI는 '/doE'로 외부에서 호출하도록 되어있다.

메소드의 파라미터 선언에 RedirecctAttributes를 파라미터로 사용하는 점을 주목

doE() 메소드의 결과로 리다이렉트 시점에 문자열 정보를 하나 더 전달하고 싶어서 

'msg'라는 이름의 데이터 추가 

이때, addFlashAttribute()는 임시데이터를 전달한다.

 

doE() 호출결과

 


마이바티스에서는 CDATA 구문을 많이 쓴다.

이유는 쿼리문에 문자열 비교연산자나 부등호를 처리할 때가 있기때문이다.

CDATA를 쓰지 않는다면, < 와 같은 기호를 괄호인지 아니면 비교연산자 인지 확인 되지 않는다.

이외에도 특수문자 사용하는데 제한이 있다.

(CDATA는 태그안에서는 전부 문자열로 치환시켜벌임.)

<![CDATA[ ]]>

 

[참고링크] https://epthffh.tistory.com

 

Mybatis 에서 CDATA 사용하기

마이바티스에서는 CDATA 구문을 많이 씁니다 이유는 쿼리문에 문자열 비교연산자나 부등호를 처리할 때가있습니다 그러면 < 와 같은 기호를 괄호인지 아니면 비교연산자 인지 확인이 되지않아요 이외에도 특수문자..

epthffh.tistory.com

 

 

728x90
반응형

'[Daliy]' 카테고리의 다른 글

[2019.12.13]  (0) 2019.12.13
[2019.12.12]  (0) 2019.12.12
[2019.12.11]  (0) 2019.12.11
[2019.12.09]  (0) 2019.12.09
[2019.12.05]  (0) 2019.12.05
Comments