전체 글
9) 모델의 사이클
모델은 MVC 아키텍쳐에서 정보를 담당하는 컴포넌트이다. 요청 정보를 담기도 하고, 비즈니스 로직에 사용되기도 하고, 뷰에 출력되기도 한다. 또한 이 모델은 아주 여러곳을 거쳐가며 만들어지고, 변형된다. 그러므로 모델의 사이클에 대한 지식은 스프링 MVC를 사용할 떄 가장 중요하다고 할 수 있다. HTTP 요청에서 컨트롤러 메서드까지 왼쪽에서 오른쪽으로 보면 된다. 컨트롤러 메서드에서 뷰까지 오른쪽에서 왼쪽으로 보면 된다. 모델의 생성, 변형, 사용이 한눈에 볼 수 있게 잘 표시되어 있다. 출처: https://joont92.github.io/spring/%EB%AA%A8%EB%8D%B8-%EB%B0%94%EC%9D%B8%EB%94%A9%EA%B3%BC-%EA%B2%80%EC%A6%9D/
8) Session에 넣어 전달하기
1. contoller에 있는 selectM 함수에서 HttpSession을 인자로 받고 Member_Dao에게 전달한다. 2. mapper.xml을 호출해서 sql 쿼리 결과를 받아온 것을 세팅 3. 인자로 받은 Hsession에 쿼리결과 값을 넣어준다. 4. JSP에서 받아온 결과를 출력할 떄는 ${sessionScope.m.m_id} 이와같이 sessionScope를 사용한다. controller에서 인자로 사용되는 것들 https://joont92.github.io/spring/@Controller/ @Controller 여기서 말하는 @Controller란 빈 자동 스캔시 사용되는 스테레오 타입 애노테이션이 아니라, 애노테이션을 이용해 컨트롤러를 개발하는 방법을 말한다. 즉, Annotation..
스프링 프로젝트 가이드 진행
스프링 사이트에 있는 가이드를 진행하면서 어떤 식으로 코드를 작성하였는지 살펴 볼 예정이다. 코드를 살펴보면 스프링이 웹에서만 사용되는게 아니구나 싶다. https://spring.io/guides Spring Guides these guides are designed to get you productive as quickly as possible and using the latest Spring project releases and techniques as recommended by the Spring team spring.io 1. Mysql 연동 : https://spring.io/guides/gs/accessing-data-mysql/
7) 전자정부 프레임워크 값 주고받는 3가지 방법
1. HttpServletRequest 방식 2. VO 방식 3. @RequestParam을 이용하는 방식 index.jsp index 전자정부프레임워크(Spring) 값 주고 받는 3가지 방법 1.HttpServletRequest방식 2.VO방식 3.@RequestParam 이용하는 방식 var header = { pageSubmitFn : function(pageName, form) { $("#pageName").val(pageName); //input 태그의 value를 설정한다. $("#"+form).attr("action",pageName+".do"); $("#"+form).submit(); } } 1. HttpServletRequest 방식 @RequestMapping에서 해당하는 url를 받..
6) Bean 의존관계 설정
Bean 의존관계 설정 방법 1. XML 1) Setter Inject - Setter 메서드를 통해 의존관계가 있는 Bean을 주입하려면 태그를 사용 할 수 있다. - ref 속성은 Bean 이름을 이용해 주입할 Bean을 찾는다. - value 속성은 단순 값 또는 Bean이 아닌 객체를 주입할 때 사용한다. 코드예시 2) Constructor Injection - Constructor를 통해 의존관계를 주입한다. - Constructor 주입방식은 생성자의 파라미터를 이용하기 때문에 한 번에 여러 개의 객체를 주입 할 수있다. 예시코드 com.spring.test 패키지 밑에 Ho.class의 생성자 값을 설정해준다. 참고) IoC 컨테이너 https://blog.outsider.ne.kr/753 ..
5) Spring Test와 Junit
Sprint-Test에서 테스트를 지원하는 어노테이션 @RunWith(SpringJUnit4ClassRunner.class) - Junit 프레임워크의 테스트 실행방법을 확장 할 때 사용하는 어노테이션이다. - SpringJUnit4ClassRunner 라는 클래스를 지정해주면 jUnit이 테스트를 진행하는 중에 ApplicationContext를 만들고 관리하는 작업을 진행한다. - @RunWith는 각각의 테스트 별로 객체가 생성되더라도 싱글톤(Singleton)의 ApplicationContext를 보장한다. @ContextConfiguration - 스프링 빈(Bean) 설정 파일의 위치를 지정할 때 사용되는 어노테이션이다. @Autowired - 스프링 DI에서 사용되는 특별한 어노테이션이다. ..
4-2) DI 애플리케이션 작성 - JUnit
jUnit의 특징 1) TDD의 창시자인 Kent Beck과 디자인 패턴 책의 Erich Gamma가 작성했다. 2) 단정(assert) 메서드로 테스트 케이스의 수행 결과를 판별한다. 예) assertEquals(예상 값, 실제 값) 3) jUnit4부터는 테스트를 지원하는 어노테이션을 제공한다. @Test, @Before, @After jUnit에서 테스트를 지원하는 어노테이션 Annotation 설명 @Test @Test가 선언된 메서드는 테스트를 수행하는 메소드가 된다. Junit은 각각의 테스트가 서로 영향을 주지 않고 독립적으로 실행됨을 원칙으로 하므로 @Test 마다 객체를 생성한다. @Ignore @Ignore가 선언된 메서드는 테스트를 실행하지 않게 한다. @Before @Before가 ..
namespace는 무엇이고 XML은 무엇일까?
https://srzero.tistory.com/entry/NameSpace%EB%9E%80 NameSpace란? NameSpace란 무엇인가? 우선 이것이 무엇인지부터 알기전에 Namespace라는 개념이 왜 생겨났는지에 대해 알아보도록 하자. [1] NameSpace가 생기게 된 계기 흔히 HTML, WML 등등 MarkUp Language들은 많이있다. 이.. srzero.tistory.com NameSpace란 무엇인가? 1) NameSpace가 생기게 된 계기 HTML, WML 등등 MarkUp Language들이 많이 있다. 이들 마크업 언어들의 특징은 무엇인가? 단일화된 표현 방법이다. HTML은 HTML로, WML은 WML로 작성한다. XML은 다수의 마크업 언어로 작성이 가능하다. 다수의..