IHelloRepository.java
package kr.or.kosa.hello.dao;
public interface IHelloRepository {
String sayHello(String message);
}
HelloRepository.java
package kr.or.kosa.hello.dao;
public class HelloRepository implements IHelloRepository {
@Override
public String sayHello(String message) {
System.out.println("데이터베이스와 통신하는 클래스 실행");
return ">>>---" + message + "---<<<";
}
}
IHelloService.java
package kr.or.kosa.hello.service;
public interface IHelloService {
String sayHello(String message);
}
HelloService.java
package kr.or.kosa.hello.service;
import kr.or.kosa.hello.dao.IHelloRepository;
public class HelloService implements IHelloService {
public IHelloRepository repository;
@Override
public String sayHello(String message) {
return repository.sayHello(message);
}
}
HelloService12345.java
package kr.or.kosa.hello.proxy;
import kr.or.kosa.hello.dao.IHelloRepository;
import kr.or.kosa.hello.service.HelloService;
public class HelloService12345 extends HelloService {
public HelloService12345(IHelloRepository repository) {
this.repository = repository;
}
}
HelloMain.java
package kr.or.kosa.hello;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import kr.or.kosa.hello.dao.HelloRepository;
import kr.or.kosa.hello.dao.IHelloRepository;
import kr.or.kosa.hello.proxy.HelloService12345;
import kr.or.kosa.hello.service.HelloService;
import kr.or.kosa.hello.service.IHelloService;
public class HelloMain {
public static void main(String[] args) {
IHelloRepository repository = new HelloRepository();
IHelloService service = new HelloService12345(repository);
System.out.println(service.sayHello("안녕하세요"));
}
}
|