CAFE

함께풀어보기

Re: 스프링 DI REF 해보기 <팀별 연습문제>주용현 ,최솔,김진규,임동혁,이주하 배경린

작성자경린|작성시간26.06.22|조회수9 목록 댓글 0

Ex4MySome

 

package ex2;

public class Ex4MySome {
 private String msg;

public void setMsg(String msg) {
this.msg = msg;
}
  
public String someMessage() {
return msg;
// 의존성에서 보내줄 헤즈어관계에서 값을 보낼 데이터를 가진 객체다.
}
}

 

 

Ex4_SomeRef 

 

package ex2;

public class Ex4_SomeRef {
 private Ex4MySome some;
 //받을 준비 된 상태다

public void setSome(Ex4MySome some) {
this.some = some;

}
 public String send() {
 return some.someMessage();
 //의존성 사용
 }
}

 

======================================================

 

ex4_di.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
   <bean id="MySome" class="ex2.Ex4MySome">
   <property name="msg" value="msg연습문제"></property>
   </bean>
    <bean id="SomeRef" class="ex2.Ex4_SomeRef">
    <property name="some" ref="MySome"></property>
    
    </bean>
</beans>
<!-- bean id랑 class는 만들고 싶은 객체 클래스엔 클래스가 들어간다.  -->
<!-- property 값을 넣을때  해당 class에 set가 있을때 name은 set변수(단축키)  value 넣어줄 값 ref는 객체일때-->
<!-- <constructor-arg>생성자에 값을 넣을때 쓰는 태그 -->

 

===============================================================

 

 

Ex4Servlet.java

package ex2;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
@WebServlet("/ex4Servlet")//통켓이 해당 서블릿을 이동하기 위해서 어노테이션 통켓 보고 가라는 뜻 
public class Ex4Servlet extends HttpServlet{
private ApplicationContext ctx;//스프링 컨테이너 
@Override
public void init() throws ServletException {//서블릿 한번당 1번만 생성하기 위해서 init메서드 
ctx=new GenericXmlApplicationContext("ex2/ex4_di.xml");

}
 @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
 // class 변수명 =ctx.getBean("bean태그의 Id 값",받는 객체명.class);
 Ex4_SomeRef ref=  ctx.getBean("SomeRef",Ex4_SomeRef.class);//<bean에 잇는 값을 호출하기위해서 
 String res=ref.send();//res로  메서드값 반환
 req.setAttribute("res", res);
 req.getRequestDispatcher("ex4Servlet.jsp").forward(req, resp);
 
 //굉장히 중요하다. 
}
}

 

 

====================================================================================

 

ex4Servlet.jsp

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
${res }


</body>
</html>

 

=====================================================================================



 

다음검색
현재 게시글 추가 기능 열기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼