Springboot + Gradle +Dubbo 相结合基础demo实例

Springboot + Gradle +Dubbo

最近新项目用到springboot 结合Dubbo,在一番折腾之后,终于跑起来基础框架结构,首次使用Dubbo 跟 Gradle,也踩了不少坑,所以总结一下项目搭建过程中的问题。防止今后再次遇到,也给其他道友指条明路,快速脱坑。

1 .安装zookeeper

我这里使用zookeeper作为服务注册中心,版本3.5.5,下载地址: https://archive.apache.org/dist/zookeeper/zookeeper-3.5.5/

下载后,解压
要先配置一下,否则没法启动,启动会报错,找到安装目录下面的conf目录, 将zoo_sample.cfg 文件拷贝,修改成 zoo.cfg 文件,然后修改zoo.cfg文件,添加dataDri 跟dataLogDir,相应路径自行配置,启动即可。
在这里插入图片描述
启动zookeeper
window +R -> cmd 进入zookeeper安装目录bin目录下面,服务端启动用:zkServer.cmd (如果没有看.cmd,开启文件后缀显示就行),正常启动即可。

在这里插入图片描述

2. Dubbo-admin-master 安装,启动

下载dubbo-admin-master
链接:https://download.csdn.net/download/qing_mei_xiu/11614597
点击下载
解压,导入导IDE工具,启动即可。也可以将项目打war包,部署在tomcat,启动。两种方法二选其一。
在这里插入图片描述

访问:http://localhost:7001 如果无法启动,查看admin服务,resources目录下面,application.properties配置文件,修改相关配置

server.port=7001
spring.velocity.cache=false
spring.velocity.charset=UTF-8
spring.velocity.layout-url=/templates/default.vm
spring.messages.fallback-to-system-locale=false
spring.messages.basename=i18n/message
spring.root.password=root  #登录账号 跟 登录密码
spring.guest.password=guest

dubbo.registry.address=zookeeper://127.0.0.1:2181 #zookeeper 配置

3. Dubbo - provider生产者服务

新建model,取名dubbo-common服务,新建interface文件->UserService.java,提供一个实现方法getPeople,(User.java文件自行生成,这里就不贴图了)
在这里插入图片描述
作为一个公共模块,提供给provider跟consumer引入使用

新建model,取名dubbo-provider服务,新建UserServiceImpl.java 文件实现Interface.

在这里插入图片描述
注意:
@service不可少,并且该注解是alibaba 注解,非spring注解,用了此注解后就可以将provider暴露出去了。

dubbo相关gradle包引入

 compile group: 'com.alibaba', name: 'dubbo', version: '2.6.1'	/*搭载dubbo*/
 compile ("org.apache.zookeeper:zookeeper:3.4.6") {
        exclude group: 'org.slf4j' 
    }
 compile ("org.apache.curator:curator-framework:2.12.0")

zookeeper依赖slf4j,有时会造成重复依赖报错,可以exclude 排除来解决。
在这里插入图片描述
provider启动,别忘了@EnableDubbo,否则链接不上zookeeper,无法实现注册。

4. Dubbo - consumer消费者服务

新建model,取名dubbo-consumer服务,新建Controller文件,注入UserService,@Reference用alibaba注解。这样就可以调用到provider,暴露出来的UserService接口了。
在这里插入图片描述
dubbo相关gradle包引入和provider一样,springboot 启动类也是一样,别忘了@EnableDubbo

在这里插入图片描述

5. 启动服务

首先启动provider服务,在启动consumer服务,通过admin控制台,可以监听到服务启动
在这里插入图片描述
接口调用controller,consumer服务调用userService接口,实现了dubbo的RPC调用。
在这里插入图片描述

6. Monitor监控

如果想要更加详细的服务监控,可以启动dubbo-monitor-simple服务,默认口8080
在这里插入图片描述
总结:
至此一个简单的springboot + dubbo + gradle的服务就完成了,麻雀虽小,五脏俱全。想要深入理解还需要阅读源码来增强内容,此demo仅供入门使用

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一种用于构建Java应用程序的框架,而Druid是一种开源的Java数据库连接池。MyBatis Plus是MyBatis的增强工具,可以简化数据库操作。将这三者整合在一起,可以提高开发效率和代码的易读性。 首先,我们需要在项目的pom.xml文件中添加引用依赖。可以通过Maven或Gradle来管理依赖项。在pom.xml中添加Spring Boot、Druid和MyBatis Plus的相关依赖。 接下来,在application.yml或application.properties文件中配置数据库连接信息和Druid的相关配置。包括数据库的URL、用户名、密码以及Druid的一些监控和性能统计配置。 然后,创建一个DataSourceConfig类,用于配置Druid数据源,并使用@Configuration和@Bean注解将它声明为一个Bean。在该类中,可以设置连接池的一些属性,例如最小连接数、最大连接数、初始连接数等。 接着,创建一个MyBatisConfig类,用于配置MyBatis Plus。在该类中,可以配置MyBatis的类型别名、Mapper扫描路径和拦截器等。 最后,创建一个启动类,并使用@SpringBootApplication注解将其声明为Spring Boot应用程序的入口。在启动类中,可以使用@MapperScan注解指定MyBatis的Mapper接口所在的包路径,并在main方法中调用SpringApplication的run方法来启动应用程序。 通过以上步骤,我们就完成了Spring Boot、Druid和MyBatis Plus的整合。现在可以在项目中编写Mapper接口和对应的XML文件,用于定义数据库的增删改查操作。并使用@Service或@Repository注解将Mapper接口声明为Spring组件,从而可以在其他地方直接使用@Autowired注解进行自动注入。 除此之外,还可以利用MyBatis Plus的一些特性,如自动生成代码、分页查询、多数据源配置等,进一步提高开发效率。 总结起来,Spring Boot、Druid和MyBatis Plus的整合可以简化数据库操作,并提供了一些方便的特性和工具,让开发变得更加高效和简单。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值