통합 준비
1 알리바바 두보 통합 springboot 오픈 소스 프로젝트를 제공;
3, 우리는 프로젝트의 통합에 의해 제공되는 항아리 패키지를 사용합니다;
<! - 의존 두보 통합 springboot 추가 -> <의존성> <의 groupId> com.alibaba.spring.boot </의 groupId> <artifactId를> 두보 - 스프링 부팅 스타터 </ artifactId를> <버전> 1.0.0 </ 버전> </ 의존성>
두보 개발은 일반적으로 세 가지 프로젝트를 권장합니다 :
두보 프로젝트 개발 서비스 인터페이스
두보 프로젝트 개발 서비스 제공
두보 소비자 프로젝트 개발 서비스
두보 서비스 인터페이스 개발 프로젝트를 받는다는 [일반]을 투사하기
두보 공식 개발 계획안에 따르면 만 인터페이스와 모델 클래스를 정의하는 인터페이스 프로젝트를 만들 수 있습니다
정의 된 인터페이스 클래스
패키지 com.joinlabs.dubbo.service; 수입 com.joinlabs.dubbo.model.User; / ** * 2018/10/26/026에 대한 관리자에 의해 만들어진. * / 공공 인터페이스 UserService { 공공 사용자 findById 메소드 ( INT의 ID); 공공 문자열 findUserName ( INT의 ID); }
모델 클래스를 정의
패키지 com.joinlabs.dubbo.model;
/ **
* 2018/10/26/026에 대한 관리자에 의해 만들어진.
* /
공용 클래스 사용자 {
개인 INT 아이디;
개인 문자열 이름;
공공 사용자 () {
}
공공 INT getId () {
반환 아이디;
}
공개 무효 setId (INT 아이디) {
this.id = ID;
}
공공 문자열 getName () {
반환 이름;
}
공공 무효에서는 setName (문자열 이름) {
this.name = 이름;
}
}
프로젝트에 대한 인터페이스 패키지 받는다는 패키징 도구를 사용하여
성공적으로 포장 한 후 항아리 패키지는 pom.xml 파일에 언급 된 서비스 제공 업체와 프로젝트를 촉진하기 위하여 소비자의 형태로 로컬 저장소 받는다는 받는다는에 저장됩니다
두보 개발 서비스 제공 [프로젝트] springboot
1, Springboot 프로젝트를 작성하고 관련 종속성을 구성;
2, 추가 springboot와 통합은 의존성을 시작 두보 :
<! - 의존 두보 통합 springboot 추가 -> <의존성> <의 groupId> com.alibaba.spring.boot </의 groupId> <artifactId를> 두보 - 스프링 부팅 스타터 </ artifactId를> <버전> 1.0.0 </ 버전> </ 의존성>
3, 핵심 구성 파일의 구성 정보 두보는 Springboot가에있는 application.properties :
# 내장 포트 Tomcat 서버 시작 후 server.port = 8080 #Dubbo 구성 spring.dubbo.appname = springboot-dubbo- 제공 spring.dubbo.registry = 사육사 : // localhost를 : 2181
사육사와 같은 레지스트리의 사용은 사육사는 클라이언트 항아리 패키지를 추가 할 필요가있다 :
<! - 사육사 클라이언트는 시작에 의존 -> <의존성> <의 groupId> com.101tec </의 groupId> <artifactId를> zkclient </ artifactId를> <버전> 0.10 </ 버전> <제외> <제외> <의 groupId> log4j에 </의 groupId> <artifactId를> log4j에 </ artifactId를> </ 제외> <제외> <의 groupId> org.slf4j </의 groupId> <artifactId를> SLF4J-log4j12 </ artifactId를> </ 제외> </ 제외> </ 의존성> <! - 사육사 클라이언트는 말에 의존 ->
4 위의 인터페이스 프로젝트 서비스 인터페이스를하려고 이동, 두보의 인터페이스 구현 클래스를 작성 :
나는 pom.xml 파일에서 인터페이스 항아리 패키지의 도입에 의존 할
<의존성>
<의 groupId> com.joinlabs.dubbo </의 groupId>
<artifactId를> 01springboot-dubbo- 인터페이스 </ artifactId를>
<version>은 1.0 SNAPSHOT </ 버전>
</ 의존성>
클래스를 구현 :
패키지 com.joinlabs.dubbo.service.impl; 수입 com.alibaba.dubbo.config.annotation.Service; 수입 com.joinlabs.dubbo.model.User; 수입 com.joinlabs.dubbo.service.UserService; 수입 org.springframework.stereotype.Component; / ** * 2018/10/26/026에 대한 관리자에 의해 만들어진. * / @Service합니다 (interfaceClass . UserService = 클래스 ) // 이 주석은, 보행의 이전에 해당 <보행 : 서비스 인터페이스 = ""> </ 보행 : - 서비스> @Component // 애노테이션은 스프링 또는 @ org.springframework.stereotype.Service를 사용 공공 클래스 UserServiceImpl는 구현 UserService를 { @보수 공공 사용자 findById 메소드 ( INT의 ID) { 사용자 사용자 = 새 새 사용자 (); // 아날로그 데이터, 또한 데이터베이스 쿼리 데이터로 통합 될 수는 MyBatis로 user.setId (ID)를; user.setName ( "이름"+ ID); 반환 사용자; } @보수 공공 문자열 findUserName ( INT의 ID) { 반환 "이름"+ ID; } }
5, 정문은 두보 서비스 제공을 시작하는 프로그램을 작성합니다 :
패키지 com.joinlabs.dubbo; 수입 com.alibaba.dubbo.spring.boot.annotation.EnableDubboConfiguration; 수입 org.springframework.boot.SpringApplication; 수입 org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @EnableDubboConfiguration // 열린 두보 구성 지원 공공 클래스 응용 프로그램 { 공공 정적 무효 메인 (문자열 []에 args) { SpringApplication.run (. 응용 프로그램 클래스 , 인수); } }
설치 및 시작 사육사
설치 패키지를 다운로드
C 루트 디렉토리에 압축을 풉니 다
프로필 이름을 사육사-3.4.10 \ conf의 \의 zoo_sample.cfg 수정 zoo.cfg하기
구성 파일의 내용을 편집
인가
사육사-3.4.10 \ bin 디렉토리에, 그리고 zkServer.cmd을 시작 콘솔 창을 닫지 마십시오
당신은 JSP 명령을 통해 과정을 볼 수 있습니다
내장 된 클라이언트를 통해하는 연결
명령을 실행, 새로운 콘솔을 엽니 다 zkCli.cmd
두보는 소비자 봉사 프로젝트] [springboot 개발
1, Springboot 프로젝트를 작성하고 관련 종속성을 구성;
2, 추가 springboot와 통합은 의존성을 시작 두보 :
<의존성> <의 groupId> com.alibaba.spring.boot </의 groupId> <artifactId를> 두보 - 스프링 부팅 스타터 </ artifactId를> <버전> 1.0.0 </ 버전> </ 의존성>
3, 핵심 구성 파일의 구성 정보 두보는 Springboot가에있는 application.properties :
# 웹 서비스 포트 server.port = 9090 # 두보 구성 spring.dubbo.appname = springboot-dubbo- 소비자 spring.dubbo.registry = 사육사 : // 192.168.91.129:2181
사육사와 같은 레지스트리의 사용은 사육사는 클라이언트 항아리 패키지를 추가 할 필요가있다 :
<의존성> <의 groupId> com.101tec </의 groupId> <artifactId를> zkclient </ artifactId를> <버전> 0.10 </ 버전> </ 의존성>
4 더보을하는 컨트롤러 클래스를 작성 원격 서비스를 호출
@Controller 공공 클래스 UserController { @Reference // 사용하여 주석을 참조 원격 두보 서비스 두보 개인 UserService userService을; (@RequestMapping "/ sayHi" ) 공공 @ResponseBody 문자열 sayHi () { 반환 userService.sayHi ( "봄 부팅 두보을 ..." ); } }
5, 정문은 두보 서비스 제공을 시작하는 프로그램을 작성합니다 :
@SpringBootApplication @EnableDubboConfiguration // 열기 보행 지원하도록 공용 클래스 SpringbootApplication { 공공 정적 무효 메인 (문자열 []를 인수) { SpringApplication.run (. SpringbootApplication 클래스 , 인수); } }