SpringBoot+zk+dubbo架构实践(五):搭建微服务电商架构+GitHub

public class UserInfoController {
private Logger LOGGER = LoggerFactory.getLogger(UserInfoController.class);
@Autowired
UserInfoService userInfoService;
@ApiOperation(value = "getUserInfoList", notes = "查询所有用户信息")


@RequestMapping(value = "getUserInfoList", method = RequestMethod.GET)
@ResponseBody
public UniformResultTemplate> getUserInfoList() {
LOGGER.info("进入用户信息-移动端消费方-UserInfoController.getUserInfoList[" + new SimpleDateFormat("HH:mm:ss").format(new Date()) + "]");
UniformResultTemplate> uniformResultTemplate = new UniformResultTemplate<>();
uniformResultTemplate.setCode(100);
uniformResultTemplate.setMessage("查询所有用户信息成功!");
uniformResultTemplate.setResult(userInfoService.getUserInfoList());
return uniformResultTemplate;
}
@ApiOperation(value = "getUserInfoListPage", notes = "查询所有用户信息-分页")
@ApiImplicitParam(name = "userInfoReqListDto", value = "{"page":"1","size":"2"}")
@RequestMapping(value = "getUserInfoListPage", method = RequestMethod.POST)
@ResponseBody
public UniformResultTemplate getUserInfoList(@RequestBody UserInfoReqListDto userInfoReqListDto) {
LOGGER.info("进入用户信息-移动端消费方-UserInfoController.getUserInfoListPage[" + new SimpleDateFormat("HH:mm:ss").format(new Date()) + "]");
UniformResultTemplate uniformResultTemplate = new UniformResultTemplate<>();
uniformResultTemplate.setCode(100);
uniformResultTemplate.setMessage("查询所有用户信息成功分页!");
uniformResultTemplate.setResult(userInfoService.getUserInfoListPage(userInfoReqListDto));
return uniformResultTemplate;
}
@ApiOperation(value = "addUserInfo", notes = "新增用户信息")
@ApiImplicitParam(name = "userInfoDto", value = "{"userName":"测试用户名","password":"000000","sex":1,"content":"这里是IT实战联哦~~~"}")
@RequestMapping(value="addUserInfo", method = RequestMethod.POST)
@ResponseBody
public UniformResultTemplate addUserInfo(@RequestBody UserInfoDto userInfoDto) {
LOGGER.info("进入用户信息-移动端消费方-UserInfoController.addUserInfo[" + new SimpleDateFormat("HH:mm:ss").format(new Date()) + "]");
UniformResultTemplate uniformResultTemplate = new UniformResultTemplate<>();
Integer num = userInfoService.addUserInfo(userInfoDto); if(num > 0){
uniformResultTemplate.setCode(100);
uniformResultTemplate.setMessage("新增用户信息成功!");
uniformResultTemplate.setResult(num+"");
}else{
uniformResultTemplate.setCode(400);

uniformResultTemplate.setMessage("新增用户信息失败!");
uniformResultTemplate.setResult(num+"");
}
return uniformResultTemplate;
}
@ApiOperation(value="delUserInfoById", notes="根据用户ID删除用户信息") @ApiImplicitParam(name = "id", value = "4" , paramType="path" , dataType="Integer")
@RequestMapping(value="delUserInfoById/{id}", method = RequestMethod.POST)
@ResponseBody
public UniformResultTemplate deleteKdgVipItem(@PathVariable Integer id) {
LOGGER.info("进入用户信息-移动端消费方-UserInfoController.delUserInfoById[" + new SimpleDateFormat("HH:mm:ss").format(new Date()) + "]");
UniformResultTemplate uniformResultTemplate = new UniformResultTemplate<>();
Integer num = userInfoService.delUserInfoById(id); if(num > 0){
uniformResultTemplate.setCode(100);
uniformResultTemplate.setMessage("根据用户ID删除用户信息成功!");
uniformResultTemplate.setResult(num+"");
}else{
uniformResultTemplate.setCode(400);
uniformResultTemplate.setMessage("根据用户ID删除用户信息失败!");
uniformResultTemplate.setResult(num+"");
}
return uniformResultTemplate;
}
@ApiOperation(value = "modifyUserInfo", notes = "修改用户信息")
@ApiImplicitParam(name = "userInfoDto", value = "{"id":10,"userName":"测试修改用户名","password":55555,"sex":1,"content":"这里是最新的IT实战联哦~~~"}")
@RequestMapping(value="modifyUserInfo", method = RequestMethod.POST, produces= MediaType.APPLICATION_JSON_UTF8_VALUE)
@ResponseBody
public UniformResultTemplate modifyUserInfo(@RequestBody UserInfoDto userInfoDto) {
LOGGER.info("进入用户信息-移动端消费方-UserInfoController.modifyUserInfo[" + new SimpleDateFormat("HH:mm:ss").format(new Date()) + "]");
UniformResultTemplate uniformResultTemplate = new UniformResultTemplate<>();
Integer num = userInfoService.modifyUserInfoById(userInfoDto); if(num > 0){
uniformResultTemplate.setCode(100);
uniformResultTemplate.setMessage("修改用户信息成功!");
uniformResultTemplate.setResult(num+"");
}else{
uniformResultTemplate.setCode(400);
uniformResultTemplate.setMessage("修改用户信息失败!");

uniformResultTemplate.setResult(num+"");
} return uniformResultTemplate;
}
}

备注:工具类 可以GitHub下载源码

Application.java 项目启动

package com.itunion.shop;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.context.annotation.ImportResource;
@SpringBootApplication@ImportResource(value = { "classpath:shop-web-consumer.xml" })
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}

application.properties

server.port=8081 #端口
server.context-path=/wxShop #项目名称
swagger.enable=true
swagger.protocol=http
swagger.host=127.0.0.1:8081

备注:shop-pc 子项目和 shop-web 配置都是一样的,不多做介绍

项目启动

访问地址

http://127.0.0.1:8081/wxShop/swagger-ui.html

效果

SpringBoot+zk+dubbo架构实践(五):搭建微服务电商架构+GitHub

可以看到我们一共写了5个业务 用户的 增、删、改、查和分页查询。

总结

SpringBoot+zk+dubbo架构实践 分解为5篇文章写完,为了让大家能够最快入门微服务架构 并实现编码,没有做深入的剖析, 小编将源码上传GitHub:https://github.com/yundianzixun/weixin-shop。在具体工作中还会遇到更多复杂的问题,架构师之路就是不断解决问题的,一边解决问题一边进阶。小编能做的还很少,希望该实践系列能够对大家有用,谢谢支持!

关注我们

更多精彩内容请关注“IT实战联盟”,平台会提供更多技术实践内容,也可以加入交流群和作者互撩哦~~~

SpringBoot+zk+dubbo架构实践(五):搭建微服务电商架构+GitHub


分享到:


相關文章: