zoukankan      html  css  js  c++  java
  • 淘淘商城02_dubbo2.5.3简单入门和监控中心展示。

    一、首先要在service工程中添加dubbo依赖。

      注意:dubbo需要排除依赖,默认的spring版本是2.x。和现有的冲突。

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <parent>
            <artifactId>taotao-manager</artifactId>
            <groupId>com.taotao</groupId>
            <version>0.0.1-SNAPSHOT</version>
        </parent>
        <modelVersion>4.0.0</modelVersion>
    
        <artifactId>taotao-manager-service</artifactId>
        <packaging>war</packaging>
        ......
        ......
      <!--省略部分代码--> ......
    <!-- dubbo相关 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <!--排除依赖--> <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring</artifactId> </exclusion> <exclusion> <groupId>org.jboss.netty</groupId> <artifactId>netty</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> </dependency> <dependency> <groupId>com.github.sgroschupf</groupId> <artifactId>zkclient</artifactId> </dependency> </dependencies> </project>

    二、写一个service接口。

    public interface ItemService {
        EasyUIDataGrid getItemList(Integer page, Integer rows);
    }

    三、Service实现类。

    @Service
    public class ItemServiceImpl implements ItemService {
    
        @Autowired
        private TbItemMapper tbItemMapper;
    
        @Override
        public EasyUIDataGrid getItemList(Integer page, Integer rows) {
            if (null == page || 0 == page) {
                page = 1;
            }
            if (null == rows || 0 == rows) {
                rows = 30;
            }
            //PageHelper设置分页参数
            PageHelper.startPage(page, rows);
            //使用mapper查询
            TbItemExample example = new TbItemExample();
            List<TbItem> list = tbItemMapper.selectByExample(example);
    
            PageInfo<TbItem> pageInfo = new PageInfo<>(list);
            EasyUIDataGrid result = new EasyUIDataGrid();
            result.setTotal((int) pageInfo.getTotal());
            result.setRows(pageInfo.getList());
            return result;
        }
    }

    四、spring配置文件中配置dubbo。

      name : 自己根据实际情况定义,可以写你当前接口项目名称。

      address:zookeeper服务的ip和端口。(需要你提前安装好zookeeper并启动服务)

       <!--使用dubbo发布服务-->
        <!--提供方应用信息,用于计算依赖关系-->
        <dubbo:application name="taotao-manager"></dubbo:application>
        <dubbo:registry protocol="zookeeper" address="192.168.1.123:2181"/>
        <!--用dubbo协议在20880端口暴露服务-->
        <dubbo:protocol name="dubbo" port="20880"/>
        <!--声明要暴露的服务接口-->
        <dubbo:service interface="com.taotao.service.ItemService" ref="itemServiceImpl"/>

    五、Controller类。

    @Controller
    public class ItemController {
        @Autowired
        private ItemService itemService;
    
        @RequestMapping(value = "/item/list", method = RequestMethod.GET)
        @ResponseBody
        public EasyUIDataGrid getItemList(Integer page, Integer rows) {
            EasyUIDataGrid list = itemService.getItemList(page, rows);
            return list;
        }
    }

    六、配置springmvc.xml。

      timeout单位为毫秒,默认为1秒。300000即接口响应超时不能超过5分钟。

      <!--引入dubbo服务-->
        <dubbo:application name="taotao-manager-web"/>
        <dubbo:registry protocol="zookeeper" address="192.168.1.123:2181"/>
      
        <dubbo:reference interface="com.taotao.service.ItemService" id="itemService" timeout="300000"/>

    七、查看前台接口调用。显示成功。

    八、dubbo监控中心安装。

      1、上传dubbo的war包、和tomcat

      

      2、重命名dubbo的war包为:dubbo-admin.war。mv dubbo-admin-2.5.4.war dubbo-admin.war

      

      3、复制dubbo的war包到tomcat的webapp目录下。cp dubbo-admin.war apache-tomcat-7.0.85/webapps/

      

      4、启动tomcat。bin/startup.sh

      5、启动后war包就会自动被解压。修改war下面的dubbo.properties。

      

      

      address为zookeeper服务的ip和端口,账号和密码。默认为root/guest

      

      6、浏览器中访问dubbo。默认账号密码为root/root。

      

      

  • 相关阅读:
    LTE第一章 介绍
    一本关于 LTE 非常好的书籍
    Memcached安装卸载
    很好很实用的.net、网站系统后台模板
    MS SQL 当记录不存在时插入insert INTO not exists
    数据库存储过程缺点总结
    存储过程是罪恶
    树形数据查询示例
    安装Discuz!论坛时提示“mysqli_connect() 不支持 advice_mysqli_connect”
    sql server中将一个表中的部分数据插入到另一个表中
  • 原文地址:https://www.cnblogs.com/huclouy/p/9545357.html
Copyright © 2011-2022 走看看