Easymall项目分布式拆分整合(九)
一.购物车系统搭建
1.步骤(经典六步)
1.1创建一个quickstart的maven工程(src/main/resources)
1.2pom继承parent,依赖common
1.pom继承parent
2.依赖common
1.3后台user系统需要的其他依赖
-
jdbc,mysql,mybatis
-
redis暂留
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>cn.tedu</groupId>
<artifactId>springboot-common-easymall</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
1.4application.properties文件
- 端口8094
- datasource
- mybatis
- redis
server.port=8094
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql:///easydb?useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true
spring.datasource.password=root
spring.datasource.username=root
mybatis.configuration.mapUnderscoreToCamelCase=true
mybatis.mapperLocations=classpath:mapper/*.xml
mybatis.typeAliasesPackage=com.jt.common.pojo
redis.nodes=10.9.151.60:6379
redis.maxTotal=200
redis.maxIdle=8
redis.minIdle=3
http.maxTotal = 100
http.defaultMaxPerRoute = 20
http.connectTimeout=1000
http.connectionRequestTimeout=500
http.socketTimeout=10000
http.staleConnectionCheckEnabled=true
1.5启动类(MapperScan)
- CartService从之前单体easymall粘贴到当前项目中(将方法注释,等待每个功能开发的重新编写)
- 扫描接口mapper的包
- CartMapper(重新导入Cart的包名,common)
- CartMapper.xml(修改namespce对应新的接口全路径)
- 启动类
@SpringBootApplication
@MapperScan("com.jt.cart.mapper")
public class StarterCart {
public static void main(String[] args) {
SpringApplication.run(StarterCart.class, args);
}
}
1.6nginx和hosts文件
1.nginx配置
2.hosts文件
127.0.0.1 | cart.easymall.com |
二.购物车系统接口方法
1.查询我的购物车
1.CartController
//查询我的购物车后台系统逻辑
@RequestMapping("queryList/{userId}")
public List<Cart> queryMyCart(@PathVariable String userId){
return cartService.queryMyCart(userId);
}
2.CartService没有变动
@Autowired
private CartMapper cartMapper;
public List<Cart> queryMyCart(String userId) {
List<Cart> cartList=cartMapper.queryMyCart(userId);
return cartList;
}
3.效果实现
2.新增我的购物车商品数据