zoukankan      html  css  js  c++  java
  • Dubbox服务的提供方开发

    (1)创建Maven工程(WAR)dubboxdemo-service  ,在pom.xml中引入依赖

    <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">

      <modelVersion>4.0.0</modelVersion>

      <groupId>cn.itcast.dubboxdemo</groupId>

      <artifactId>dubboxdemo-service</artifactId>

      <version>0.0.1-SNAPSHOT</version>

      <packaging>war</packaging> 

       <properties>     

            <spring.version>4.2.4.RELEASE</spring.version>

       </properties>   

        <dependencies>

            <!-- Spring -->

            <dependency>

                <groupId>org.springframework</groupId>

                <artifactId>spring-context</artifactId>

                <version>${spring.version}</version>

            </dependency>

            <dependency>

                <groupId>org.springframework</groupId>

                <artifactId>spring-beans</artifactId>

                <version>${spring.version}</version>

            </dependency>

            <dependency>

                <groupId>org.springframework</groupId>

                <artifactId>spring-webmvc</artifactId>

                <version>${spring.version}</version>

            </dependency>

            <dependency>

                <groupId>org.springframework</groupId>

                <artifactId>spring-jdbc</artifactId>

                <version>${spring.version}</version>

            </dependency>

            <dependency>

                <groupId>org.springframework</groupId>

                <artifactId>spring-aspects</artifactId>

                <version>${spring.version}</version>

            </dependency>

            <dependency>

                <groupId>org.springframework</groupId>

                <artifactId>spring-jms</artifactId>

                <version>${spring.version}</version>

            </dependency>

            <dependency>

                <groupId>org.springframework</groupId>

                <artifactId>spring-context-support</artifactId>

                <version>${spring.version}</version>

            </dependency>   

            <!-- dubbo相关 -->

            <dependency>

                <groupId>com.alibaba</groupId>

                <artifactId>dubbo</artifactId>

                <version>2.8.4</version>        

            </dependency>

            <dependency>

                <groupId>org.apache.zookeeper</groupId>

                <artifactId>zookeeper</artifactId>

                <version>3.4.6</version>

            </dependency>

            <dependency>

                <groupId>com.github.sgroschupf</groupId>

                <artifactId>zkclient</artifactId>

                <version>0.1</version>

            </dependency>       

            <dependency>

                <groupId>javassist</groupId>

                <artifactId>javassist</artifactId>

                <version>3.11.0.GA</version>

            </dependency>       

        </dependencies>

       <build> 

          <plugins>

              <plugin> 

                  <groupId>org.apache.maven.plugins</groupId> 

                  <artifactId>maven-compiler-plugin</artifactId> 

                  <version>2.3.2</version> 

                  <configuration> 

                      <source>1.7</source> 

                      <target>1.7</target> 

                  </configuration> 

              </plugin> 

              <plugin>

                    <groupId>org.apache.tomcat.maven</groupId>

                    <artifactId>tomcat7-maven-plugin</artifactId>

                    <configuration>

                        <!-- 指定端口 -->

                        <port>8081</port>

                        <!-- 请求路径 -->

                        <path>/</path>

                    </configuration>

              </plugin>

          </plugins> 

        </build>

    </project>

     

    (2)在工程的webapps下创建WEB-INF文件夹,创建web.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

        xmlns="http://java.sun.com/xml/ns/javaee"

        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

        version="2.5">  

        <!-- 加载spring容器 -->

        <context-param>

            <param-name>contextConfigLocation</param-name>

            <param-value>classpath:applicationContext*.xml</param-value>

        </context-param>

        <listener>       <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

        </listener> 

    </web-app>

     

    (3)创建业务接口

    创建包cn.itcast.dubbodemo.service,用于存放业务接口,创建接口

    package cn.itcast.dubbodemo.service;

    /**

     * 业务接口

     * @author Administrator

     *

     */

    public interface UserService {   

        public String getName();

    }

    (4)创建业务实现类

    创建包cn.itcast.dubbodemo.service.impl ,用于存放业务实现类。创建业务实现类:

    package cn.itcast.dubbodemo.service.impl;

    import com.alibaba.dubbo.config.annotation.Service;

    import cn.itcast.dubbodemo.service.UserService;

    @Service

    public class UserServiceImpl implements UserService {

        public String getName() {   

            return "itcast";

        }

    }

    注意:Service注解与原来不同,需要引入com.alibaba包下的

    (5)编写配置文件

    在src/main/resources下创建applicationContext-service.xml ,内容如下:

    <?xml version="1.0" encoding="UTF-8"?>

    <beans xmlns="http://www.springframework.org/schema/beans"

        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"

        xmlns:context="http://www.springframework.org/schema/context"

        xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xmlns:mvc="http://www.springframework.org/schema/mvc"

        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

            http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd

            http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd

            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

        

        <dubbo:application name="dubboxdemo-service"/> 

    <dubbo:registry address="zookeeper://192.168.25.132:2181"/>

    <dubbo:annotation package="cn.itcast.dubboxdemo.service" />

    </beans>

    注意:dubbo:annotation用于扫描@Service注解。

    (6)测试运行

    tomcat7:run

  • 相关阅读:
    windows启动、停止和重新启动Apache服务
    Mysql用户密码设置修改和权限分配
    MySQL数据库恢复(使用mysqlbinlog命令)
    影响MySQL性能的五大配置参数
    PHP获取文件后缀名的三种方法
    php 设计模式
    蓦然回首,那人却在灯火阑珊处
    websocket消息推送实现
    Spring任务调度之Quartz
    使用easyui的form提交表单,在IE下出现类似附件下载时提示是否保存的现象
  • 原文地址:https://www.cnblogs.com/cn-chy-com/p/11118729.html
Copyright © 2011-2022 走看看