Idea 创建Maven多模块(最详细的 生产者 消费者)

Idea 创建Maven多模块

父级项目
1.1 FIle --》New–》projects–》Maven 勾选Create From archeType --》选择Maven-
archetype- quickstart
1.2 填写 group Id(包名) 和 那个 id (项目名)点next下一步
1.3 注意:Maven地址必须为自己的(Maven自己电脑本地的settings.xml的路径)
例:E:\Maven\apache-maven-3.5.3\conf\settings.xml
1.4 创建完可以将src目录删除,保留pom文件
1.5创建子模块,选中父级项目右击–》new–》Module
1.6 创建common和service api项目选择Maven-archetype- quickstart
创建生产者和消费者项目为springboot方式创建spring initializr
1.7 子模块项目名称
公共项目:dubbo-common
service接口: dubbo-service-api
生产者: dubbo-provider
spring boot: 2.0.7
core:lombok(可选可不选)
web:web
sql:mysql.mybatis
消费者: dubbo-consumer
core:lombok(可选可不选)
web:web
Template:Thymeleaf
各个子包创建完成
dubbo-common dubbo-consumer 里面的App文件可以删除

2.创建依赖关系
父级项目,这个只是作为管理子模块使用只保留pom
需要添加子模块关联关系(子项目名一致)

dubbo-provider
dubbo-consumer
dubbo-service-api
dubbo-common

dubbo-common :放jar包和实体类
pom.xml:

com.alibaba.spring.boot dubbo-spring-boot-starter 2.0.0 com.101tec zkclient## 标题 0.10 dubbo-service-api :service接口 pom.xml: 父级的组id springboot-common 1.0-SNAPSHOT dubbo-provider:生产者 依赖 dubbo-service-api dubbo-consumer:消费者 依赖 dubbo-service-api 包名 springboot-service-api 1.0-SNAPSHOT

实体类:
@Data
public class User implements Serializable {
private Integer userId;
private String userName;
private String userAge;
private String userInfo;
private String userHobby;
@DateTimeFormat(pattern = “yyyy-MM-dd”)
private Date userTime;
}
service接口
public interface UserService {
void saveUser (User user);
List queryUserList();
User queryById(Integer userId);
void updateUser(User user);
void deleteUser(Integer userId);
List getBootTree();
}

serviceImpl实现类:
@Service(interfaceClass =UserService.class )
@Component
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;

controller控制层:
@Controller
@RequestMapping(“user”)
public class UserController {
@Reference
private UserService userService;

生产者:SpringbootConsumerApplication:
@SpringBootApplication
@ComponentScan(basePackages = “包名”)
@MapperScan(basePackages =“包名.mapper”)
@EnableDubboConfiguration
生产者:application.properties:里面需要配置的
#配置数据源
spring.datasource.url=jdbc:mysql://localhost:3306/dubbo-maven?useUnicode=true&characterEncoding=utf8&useSSL=true&zeroDateTimeBehavior=convertToNull
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#mapper
mybatis.mapper-locations=classpath:mapper/*Mapper.xml
#配置dubbo服务提供者
#服务名称
spring.dubbo.application.name=provider
spring.dubbo.server=true
#注册中心地址
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
#dubbo 协议
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=20880
#指定Date时间类型输出格式为yyyy-MM-dd HH:mm:ss;
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
#指定时区,解决8小时的时间差问题
spring.jackson.time-zone=GMT+8

tk.mybatis mapper 3.4.6

消费者:SpringbootConsumerApplication 里面需要配置的
@SpringBootApplication
@ComponentScan(“包名.*”)
@EnableDubboConfiguration
*消费者:application.properties里面需要配置的:
#为防止和生产者端口号冲突
server.port=8081
#配置dubbo消费者
spring.dubbo.application.name=consumer
#配置注册中心
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
#dubbo协议
spring.dubbo.procotol.name=dubbo
spring.dubbo.procotol.port=20880
#消费者启动检测生产者是否已启动,当值为true时才会检测,默认为true
spring.dubbo.consumer.check=false
#roundrobin轮询机制
#random #随机机制
#leastactive #最少活跃调用数机制
spring.dubbo.reference.loadbalance=roundrobin

org.mybatis mybatis-spring 1.3.2 compile
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值