业务阐明

阐明:当用户点击商品时,须要跳转到商品的展示页面中,页面名称item.jsp

重构JT-MANAGE

创立接口

在common中创立接口

编辑Dubbo实现类

package com.jt.service;import com.alibaba.dubbo.config.annotation.Service;import com.jt.mapper.ItemDescMapper;import com.jt.mapper.ItemMapper;import com.jt.pojo.Item;import com.jt.pojo.ItemDesc;import org.springframework.beans.factory.annotation.Autowired;@Service(timeout = 3000)public class DubboItemServiceImpl implements DubboItemService{    @Autowired    private ItemMapper itemMapper;    @Autowired    private ItemDescMapper itemDescMapper;    @Override    public Item findItemById(Long itemId) {        return itemMapper.selectById(itemId);    }    @Override    public ItemDesc findItemDescById(Long itemId) {        return itemDescMapper.selectById(itemId);    }}

编辑YML配置文件

server:  port: 8091  servlet:    context-path: /spring:  datasource:    #引入druid数据源    #type: com.alibaba.druid.pool.DruidDataSource    driver-class-name: com.mysql.cj.jdbc.Driver    url: jdbc:mysql://127.0.0.1:3306/jtdb?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true    username: root    password: root  mvc:    view:      prefix: /WEB-INF/views/      suffix: .jsp#mybatis-plush配置mybatis-plus:  type-aliases-package: com.jt.pojo  mapper-locations: classpath:/mybatis/mappers/*.xml  configuration:    map-underscore-to-camel-case: truelogging:  level:     com.jt.mapper: debug#对于Dubbo配置dubbo:  scan:    basePackages: com.jt    #指定dubbo的包门路 扫描dubbo注解  application:              #利用名称    name: provider-manage     #一个接口对应一个服务名称   一个接口能够有多个实现  registry:  #注册核心 用户获取数据从机中获取 主机只负责监控整个集群 实现数据同步    address: zookeeper://192.168.126.129:2181?backup=192.168.126.129:2182,192.168.126.129:2183  protocol:  #指定协定    name: dubbo  #应用dubbo协定(tcp-ip)  web-controller间接调用sso-Service    port: 20881  #每一个服务都有本人特定的端口 不能反复.

编辑ItemController

package com.jt.controller;import com.alibaba.dubbo.config.annotation.Reference;import com.jt.pojo.Item;import com.jt.pojo.ItemDesc;import com.jt.service.DubboItemService;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;@Controller@RequestMapping("/items")public class ItemController {    @Reference(timeout = 3000)    private DubboItemService itemService;    /**     * 实现商品详情页面跳转     * url: http://www.jt.com/items/562379.html     * 参数: 562379 itemId     * 返回值:  item.jsp页面     * 页面取值阐明:     *      ${item.title }   item对象     *      ${itemDesc.itemDesc }  itemDesc对象     *     * 思路:     *      1.重构jt-manage我的项目     *      2.创立中立接口DubboItemService     *      3.实现业务调用获取item/itemDesc对象     */    @RequestMapping("/{itemId}")    public String findItemById(@PathVariable Long itemId, Model model){        Item item = itemService.findItemById(itemId);        ItemDesc itemDesc = itemService.findItemDescById(itemId);        //将数据保留到request域中        model.addAttribute("item",item);        model.addAttribute("itemDesc",itemDesc);        return "item";    }}
页面成果展示