当前位置: 首页 > news >正文

网站做动态图片网站建设空间使用标准

网站做动态图片,网站建设空间使用标准,长沙娱乐网站开发,wordpress菜单栏换色现在有一段代码再前台,后台系统中都存在,都需要这段代码,存在这种情况,我们可以选择将这段代码提取出来作为一个服务,让前台和后台系统作为消费者远程调用这段代码,提高了代码的复用性。 springboot集成dub…

现在有一段代码再前台,后台系统中都存在,都需要这段代码,存在这种情况,我们可以选择将这段代码提取出来作为一个服务,让前台和后台系统作为消费者远程调用这段代码,提高了代码的复用性。
springboot集成dubbo
dubbo框架总结
因此我们需要使用dubbo,也就是rpc协议。

创建rpc系统项目

项目结构

在这里插入图片描述

第一步引入依赖

 <!--dubbo 依赖--><dependency><groupId>com.alibaba.spring.boot</groupId><artifactId>dubbo-spring-boot-starter</artifactId></dependency><!-- zkClient 依赖 --><dependency><groupId>com.101tec</groupId><artifactId>zkclient</artifactId><exclusions><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion><exclusion><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId></exclusion><exclusion><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId></exclusion></exclusions></dependency>

开启dubbo

使用@EnableDubbo 开启Dubbo
在这里插入图片描述@EnableDubbo 是一个复合注解
在这里插入图片描述
他里面的@DubboComponentScan,同Component组件能力相同。
@EnableDubbo做了两件事,一个是初始化Dubbo核心组件,加载Dubbo配置到内存。另一个是注册BeanPostProcessor,用来扫描@Service和@Reference注解。

创建yml配置文件

server:port: 9092                               # 项目访问端口,默认 8080servlet:                                 # 项目访问路径,默认 /context-path: /shop-rpc# Spring
spring:# 数据源datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/shop?username: rootpassword: 123123# 指定 druid 连接池以及 druid 连接池配置type: com.alibaba.druid.pool.DruidDataSourcedruid:initial-size: 1                       # 初始连接数max-active: 20                        # 最大连接数max-idle: 20                          # 最大空闲min-idle: 1                           # 最小空闲max-wait: 60000                       # 最长等待时间# redis 缓存redis:timeout: 10000                          # 连接超时时间host: 192.168.186.128                    # Redis服务器地址port: 6379                              # Redis服务器端口database: 0                             # 选择哪个库,默认0库lettuce:pool:max-active: 1024                    # 最大连接数,默认 8max-wait: 10000                     # 最大连接阻塞等待时间,单位毫秒,默认 -1max-idle: 200                       # 最大空闲连接,默认 8min-idle: 5                         # 最小空闲连接,默认 0password: 123123#允许循环依赖main:allow-circular-references: true# Dubbo
dubbo:#开启dubbo服务,表示该应用是一个服务提供者server: true# 提供方应用信息,用于计算依赖关系application:name: rpc-provider# 使用 zookeeper 配置注册中心地址,后面的backup为备用地址,注册中心地址不是随便的,是需要查找的registry:address: zookeeper://192.168.186.128:2181# 用 dubbo 协议在 20880 端口暴露服务protocol:name: dubboport: 20880# 扫描需要暴露的服务接口包,如果有多个包,可以使用逗号隔开scan:base-packages: com.wll.shoprpc.service# MyBatis
mybatis:# 配置 MyBatis数据返回类型别名(默认别名是类名)type-aliases-package: com.wll.shoprpc.pojo# 配置 MyBatis Mapper 映射文件mapper-locations: classpath:mapper/*.xml# Mybatis SQL 打印(方法接口所在的包,不是 Mapper.xml 所在的包)
logging:level:com.wll.shoprpc.mapper: debug# Redis Key
# 商品分类列表 Key
goods.category.list.key: goods:category:list:goodsCategoryList
#用户购物车key
user.cart: userCart

zppkeeper的ip地址就是运行zookeeper的虚拟机或主机地址,这里需要暴露服务接口用dubbo.scan.base-packages
zookeeper的端口号看zoo.conf中设置的端口号,需要一一对应。

写服务接口,服务实现类,mapper,mapper.xml

import com.alibaba.dubbo.config.annotation.Service;
import org.springframework.stereotype.Component;
@Component
@Service(interfaceClass = GoodsCategoryService.class,version="1.0.0",timeout = 5000)
public class GoodsCategoryServiceImpl implements GoodsCategoryService {

在Service实现类上需要加上alibaba.dubbo的@Service注解!!!!千万不能导错包!!!!
还需要加上@Component注解,把该实现类放入到spring容器中管理。

修改消费者前台系统

第一步导入依赖

同上

第二步开启dubbo

同上

第三步修改yml

server:port: 9091                                # 项目访问端口,默认 8080servlet:                                 # 项目访问路径,默认 /context-path: /shop-portal
# Spring
spring:# 数据源datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/username: rootpassword: 123123# 指定 druid 连接池以及 druid 连接池配置type: com.alibaba.druid.pool.DruidDataSourcedruid:initial-size: 1                       # 初始连接数max-active: 20                        # 最大连接数max-idle: 20                          # 最大空闲min-idle: 1                           # 最小空闲max-wait: 60000                       # 最长等待时间# freemarker 模板引擎freemarker:cache: falsecharset: UTF-8content-type: text/html;charset=UTF-8enabled: truesuffix: .ftlhtemplate-loader-path: classpath:/views/# 配置模板里是否可以直接取request的属性 request是别名request-context-attribute: request# 配置将request和session中的键值添加到# AbstractTemplateView类的renderMergedOutputModel方法中的model这个Map参数中expose-request-attributes: trueexpose-spring-macro-helpers: true# 配置模板里是否可以直接取session的属性 true 是允许expose-session-attributes: truesettings:tag_syntax: auto_detect               # 配置标签语法为自动,页面可以将 <> 改为 [],为了区别 html 标签template_update_delay: 0              # 模板更新时间,单位秒default_encoding: UTF-8               # 默认编码字符集output_encoding: UTF-8                # 模板输出编码字符集locale: zh_CN                         # 本地化配置date_format: yyyy-MM-dd               # 日期格式化time_format: HH:mm:ss                 # 时间格式化datetime_format: yyyy-MM-dd HH:mm:ss  # 日期时间格式化number_format: #.##                   # 数字格式化boolean_format: true,false            # boolean格式化# ignore,debug,html_debug,rethrow# 1.TemplateExceptionHandler.IGNORE_HANDLER简单地压制所有异常# 它对处理异常没有任何作用,也不会重新抛出异常,页面可以正常渲染,后台抛异常# 2.TemplateExceptionHandler.DEBUG_HANDLER打印堆栈信息和重新抛出异常。这是默认的异常控制器# 3.TemplateExceptionHandler.HTML_DEBUG_HANDLER和DEBUG_HANDLER相同# 但是可以格式化堆栈跟踪信息,HTML页面,建议使用它而不是DEBUG_HANDLER# 4.TemplateExceptionHandler.RETHROW_HANDLER简单重新抛出所有异常而不会做其他的事情# 5.使用自定义异常类实现TemplateExceptionHandler重写handleTemplateException方法template_exception_handler: html_debug# 文件上传servlet:multipart:max-file-size: 100MB                  # 设置单个上传文件的大小max-request-size: 1000MB               # 设置一次请求上传文件的总容量# redis 缓存redis:timeout: 10000ms                        # 连接超时时间host: 192.168.186.128                   # Redis服务器地址port: 6379                              # Redis服务器端口database: 0                             # 选择哪个库,默认0库lettuce:pool:max-active: 1024                    # 最大连接数,默认 8max-wait: 10000ms                   # 最大连接阻塞等待时间,单位毫秒,默认 -1max-idle: 200                       # 最大空闲连接,默认 8min-idle: 5                         # 最小空闲连接,默认 0password: 123123main:allow-circular-references: true# Dubbo
dubbo:#开启dubbo服务server: true# 消费方应用信息,用于计算依赖关系application:name: rpc-consumer-portal# 使用 zookeeper 注册中心暴露服务地址registry:address: zookeeper://192.168.186.128:2181# MyBatis
mybatis:# 配置 MyBatis数据返回类型别名(默认别名是类名)type-aliases-package: com.wll.shopportal.pojo# 配置 MyBatis Mapper 映射文件mapper-locations: classpath:mapper/*.xml# Mybatis SQL 打印(方法接口所在的包,不是 Mapper.xml 所在的包)
logging:level:com.wll.shopportal.mapper: debug#用户票据key
user.ticket: user:userTicket

第四步从注册中心拿服务者提供的服务

import com.alibaba.dubbo.config.annotation.Reference;
import com.wll.shoprpc.service.GoodsCategoryService;
import com.wll.shoprpc.vo.GoodsCategoryVo;
@Controller
public class GoodsController {@Reference(interfaceClass = GoodsCategoryService.class,version="1.0.0",timeout = 5000)GoodsCategoryService goodsCategoryService;@RequestMapping("/goodsCategory/list")@ResponseBodypublic List<GoodsCategoryVo> queryGoodsCategoryList(){return goodsCategoryService.selectCategoryListForView();}
}

使用@Reference注解拿取服务

使用监控中心 dubbo-admin

http://www.yayakq.cn/news/39742/

相关文章:

  • 免费制作app生成器网站mt4网站可做黄金交易
  • 免费h5源码资源源码站wordpress打开wordpress
  • 网站运营主要是做什么华仁建设网站
  • 怎么知道网站是什么开源做的wordpress非插件文章浏览量
  • 泸州网站开发公司一套vi设计多少钱
  • 怎么建网站数据库山东省住房建设部网站
  • 陕西建设银行官网站做网贷中介网站赚钱吗
  • 青岛网站seo收费wordpress文章专辑
  • 手机医疗网站模板phpwind discuz wordpress
  • 手机怎么注册自己的网站影楼网站源码
  • 如何快速提升网站关键词排名建企业网站用什么源码
  • 嘉定网站建设网页制作安徽政务服务网
  • 网站服务器内部错误是怎么回事三盛都会城网站 html5
  • 阳山县网站住房和建设局网站建设网页设计培训班
  • 帮忙做ppt赚钱的网站wordpress 分类 标题
  • 做网站 分类搜索wordpress 路由规则
  • 三维立体网站建设高端网站定制平台
  • 网站推广的技术扬州电商网站建设
  • 网站开发后端待遇中小企业查询系统网
  • 题库网站建设的绩效指标企业宣传海报设计制作
  • 建筑资料网站大全18岁以上站长统计
  • 中国建设综合门户网站网站建设最基础的是什么
  • 生物网站模板简述网站主要流程
  • asp网站建设实录pdf网络游戏的利弊
  • 文山专业网站建设云南网站建设肖庆华
  • 在网上做效果图的网站东莞道滘网站建设
  • 单位网站制作费用报价单网站建设的网络技术
  • 广西建设四库一平台网站重庆网页制作设计营销
  • 关于网站建设的意见dede模板网站教程
  • 网站备案地区名软件开发平台哪家好