教你快速搭建微服务环境
创始人
2024-02-25 06:29:44

目录

一、项目搭建

1.父项目搭建

2.子项目的搭建

 二、项目展示


一、项目搭建

1.父项目搭建

步骤:

        1 选择maven项目作为父项目,修改为1.8之后直接点击next

        2  定义父项目的名称,修改Artifct Coordinates ---> GroupId 然后点击finsh就可以啦

        3 修改pom.xml

1 选择maven项目作为父项目,修改为1.8之后直接点击next

 2  定义父项目的名称,修改Artifct Coordinates ---> GroupId 然后点击finsh就可以啦 

3 修改pom.xml 


4.0.0com.zkingspcloud-shop1.0-SNAPSHOTshop-commonpom1.8UTF-8UTF-82.3.2.RELEASEHoxton.SR92.2.6.RELEASEorg.springframework.bootspring-boot-dependencies${spring-boot.version}pomimport

2.子项目的搭建

搭建一个shop-common的maven子项目

当建完这个项目时 父项目的pom.xml就会自动多出几行代码 ,这表示

关联成功 

 

shop-common的pom.xml


spcloud-shopcom.zking1.0-SNAPSHOT4.0.0shop-commonorg.projectlomboklombokcom.alibabafastjson1.2.56mysqlmysql-connector-java5.1.44

创建springboot项目: 

 

直接选择next,然后finsh就可以了 

 以同样的方式创建一下三个

 pom.xml


spcloud-shopcom.zking1.0-SNAPSHOT4.0.0shop-orderorg.springframework.bootspring-boot-starter-webcom.zkingshop-common1.0-SNAPSHOT

=====================以上的基本配置完成=========================

 二、项目展示

写入实体类

 order

package com.zking.model;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@AllArgsConstructor
@NoArgsConstructor
public class Order {private Long oid;//订单id//用户private Integer uid;//用户idprivate String username;//用户名//商品private Integer pid;//商品idprivate String pname;//商品名称private Double pprice;//商品单价//数量private Integer number;//购买数量
}

Product

package com.zking.model;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@NoArgsConstructor
@AllArgsConstructor
public class Product {private Integer pid;//主键private String pname;//商品名称private Double pprice;//商品价格private Integer stock;//库存
}

User

package com.zking.model;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;//用户
@Data//不再去写set和get方法
@NoArgsConstructor
@AllArgsConstructor
public class User {private Integer uid;//主键private String username;//用户名private String password;//密码private String telephone;//手机号
}

编写aplication.yml

 

 

 

 

编写controller层

shop-user:

package com.zking.shopuser.controller;import com.zking.model.User;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** @author 小何吖* @create 2022-11-24 15:47*/@RestController
@RequestMapping("/user")
public class UserController {@RequestMapping("/get/{id}")public User get(@PathVariable("id") Integer id){return new User(id,"骚强","5438","3838438");}
}

 运行,选中写了controller的运行

 

 

 shop-product:

package com.zking.shopproduct.controller;import com.zking.model.Product;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** @author 小何吖* @create 2022-11-24 15:52*/@RestController
@RequestMapping("/product")
public class ProductContoller {@RequestMapping("/get/{pid}")public Product get(@PathVariable("pid") Integer pid){return new Product(pid,"金瓶梅",66d,20);}}

 

 shop-order:

package com.zking.shoporder.controller;import com.zking.model.Order;
import com.zking.model.Product;
import com.zking.model.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;/*** @author 小何吖* @create 2022-11-24 15:43*/
@RestController
@RequestMapping("/order")
public class OrderController {@Autowiredprivate RestTemplate restTemplate;@RequestMapping("/get/{uid}/{pid}")public Order get(@PathVariable("uid") Integer uid,@PathVariable("pid") Integer pid){/**要在订单微服务调用 用户微服务、商品微服务、也就意味着跨项目调用**/User user = restTemplate.getForObject("http://localhost:8070/user/get/" + uid, User.class);Product product = restTemplate.getForObject("http://localhost:8080/product/get/" + pid, Product.class);Order order = new Order();order.setUsername(user.getUsername());order.setUid(user.getUid());order.setPprice(product.getPprice());order.setPname(product.getPname());order.setPid(product.getPid());order.setOid(System.currentTimeMillis());order.setNumber(product.getStock());return order;}
}

 

 

这就是简单的微服务,没有连接数据库的简单应用

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...