Dubbo服务化最优实现(改造直连方式)

Dubbo服务化最优实现(改造直连方式),第1张

Dubbo服务化最优实现(改造直连方式)

Dubbo服务化最优实现
    • 1、创建接口工程
      • 1.1、创建maven Java 工程
      • 1.2、创建实体类和服务接口
    • 2、创建服务提供者工程
      • 2.1创建maven web工程
      • 2.2、整理pom文件,添加依赖(spring,dubbo,接口工程)和jdk1.8编译插件
      • 2.3、创建服务接口实现类
      • 2.4、创建dubbo核心配置文件
      • 2.5、web.xml中创建监听器
      • 2.6、配置Tomcat修改端口
    • 3、创建服务消费者工程
      • 3.1创建maven web工程
      • 3.2整理pom文件,添加依赖(spring,dubbo,接口工程)和jdk1.8编译插件(此时就不需要服务提供者的jar包了)
      • 3.3、创建dubbo核心配置文件和springmvc配置文件(spring的xml配置文件)
      • 3.4、编写controller
      • 3.5、配置中央调度器
      • 3.6、创建jsp页面
    • 测试:

由于上篇dubbo直连方式文章直接提供了服务提供者的jar包,导致在服务消费者的工程中可以直接使用服务接口实现类.为了避免这样的情况发生,dubbo官方推荐远程调用RPC服务以接口为粒度,为开发者屏蔽远程调用底层细节.必须有一个接口工程.它是一个maven java工程,对外提供服务的接口.要求接口工程里存放的内容如下:
1.对外暴露的服务接口(service接口)
2.实体bean对象

提示:由于是改造,大部分代码可以复制之前写好的。当然我在这里又写了一边,可以参考下面的步骤

1、创建接口工程 1.1、创建maven Java 工程

1.2、创建实体类和服务接口

实体类

public class Student implements Serializable {
    private Integer id;
    private String name;
    private Integer age;
    setter and getter方法;

服务接口

public interface StudentService {
	//通过id查询学生	
    Student QueryById(Integer id);
}
2、创建服务提供者工程 2.1创建maven web工程

2.2、整理pom文件,添加依赖(spring,dubbo,接口工程)和jdk1.8编译插件



  4.0.0

  com.why
  ch03-service-provide
  1.0
  war

  
    
    
      org.springframework
      spring-context
      5.3.12
    
    
      org.springframework
      spring-webmvc
      5.3.12
    
    
    
      com.alibaba
      dubbo
      2.6.2
    
    
      com.why
      ch05-interface
      1.0.0
    
  

  
    
      
      
        maven-compiler-plugin
        3.1
        
          1.8
          1.8
        
      
    
  

2.3、创建服务接口实现类
  
    @Override
    public Student QueryById(Integer id) {
        Student student = new Student();
        student.setId(1);
        student.setName("张三");
        student.setAge(20);
        return student;
    }
2.4、创建dubbo核心配置文件



    
    
    
    
    
    
    
    
    
    


2.5、web.xml中创建监听器



  
    contextConfigLocation
    classpath:dubbo-service-provide.xml
  
  
    org.springframework.web.context.ContextLoaderListener
  

2.6、配置Tomcat修改端口

3、创建服务消费者工程 3.1创建maven web工程

3.2整理pom文件,添加依赖(spring,dubbo,接口工程)和jdk1.8编译插件(此时就不需要服务提供者的jar包了)



  4.0.0

  com.why
  ch05-service-consumer
  1.0-SNAPSHOT
  war

  
    
      org.springframework
      spring-context
      5.3.12
    
    
      org.springframework
      spring-webmvc
      5.3.12
    
    
      com.alibaba
      dubbo
      2.6.2
    
    
      com.why
      ch05-interface
      1.0.0
    
  

  
    
      
      
        maven-compiler-plugin
        3.1
        
          1.8
          1.8
        
      
    
  

3.3、创建dubbo核心配置文件和springmvc配置文件(spring的xml配置文件)

dubbo核心配置文件




    
    
    

    
    

spring核心配置文件




    
    
    
    
    
    
    
        
        
    

3.4、编写controller
@Controller
public class MyController {
    @Resource
    StudentService studentService;

    @RequestMapping("/student")
    public String studnetQuery(Model model, Integer id){
        Student student = studentService.QueryById(id);
        model.addAttribute("student",student);
        return "showStudent";
    }
}
3.5、配置中央调度器
Archetype Created Web Application
  
    DispatcherServlet
    org.springframework.web.servlet.DispatcherServlet
    
      contextConfigLocation
      classpath:application.xml,classpath:dubbo-service-consumer.xml
    
  
  
    DispatcherServlet
    /
  
3.6、创建jsp页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@page isELIgnored="false" %>


    Title


    学生id=${student.id}
学生name=${student.name}
学生age=${student.age}
测试:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5481033.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存