从零一起学Spring Boot之LayIM项目长成记(二) LayIM初体验
2017-11-02 23:56
423 查看
前言
接上篇,已经完成了一个SpringBoot项目的基本搭建。那么现在就要考虑要做什么,怎么做的问题。所以本篇内容不多,带大家一起来简单了解一下要做的东西,之前有很多人不知道从哪里下手,那么今天我带着大家熟悉LayIM以及它的对接思路。由于重点是SpringBoot,所以,LayIM部分也不会讲的太细,官网有详细的文章。LayIM有什么?
非常舒服的UI封装了友好的聊天界面,消息记录,自定义插件,添加好友,添加群组等等功能,前端的东西完全不必费心,把重心放到实现业务上。
完善的文档,开发起来不必大费力气
文档解析
上边一堆套话,没有什么实质内容,下面我简单讲一下我们的开发思路。首先看初始化界面,浏览器右下角有一个类似QQ似的界面,包含好友列表,群组列表,当前登录人的信息等。1 public JsonResult getBaseList(Long userId){ 2 LayimBaseViewModel baseData = new LayimBaseViewModel(); 3 4 //自己的信息 5 UserViewModel mine = new UserViewModel(); 6 mine.setUsername("小盘子"); 7 mine.setSign("SpringBoot学习中"); 8 mine.setAvatar("https://vignette.wikia.nocookie.net/dragonball/images/d/da/Kid-Goku-psd61058.png/revision/latest?cb=20120213205410"); 9 mine.setId(userId); 10 11 baseData.setMine(mine); 12 //好友列表信息 13 ArrayList<FriendGroupViewModel> friends = new ArrayList<FriendGroupViewModel>(); 14 15 FriendGroupViewModel frined1 = new FriendGroupViewModel(); 16 frined1.setId(1L); 17 frined1.setGroupname("我的好友"); 18 frined1.setOnline(10); 19 20 ArrayList<UserViewModel> users1 = new ArrayList<UserViewModel>(); 21 22 UserViewModel user1 = new UserViewModel(); 23 user1.setId(100001L); 24 user1.setAvatar("https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQjvcDBSg8-TYMzRSbw75MJAawM5dF9StHSisVhdhWmL6vK8K66UQ"); 25 user1.setSign("教练,我想打篮球"); 26 user1.setUsername("三井寿"); 27 28 users1.add(user1); 29 30 frined1.setList(users1); 31 friends.add(frined1); 32 33 baseData.setFriend(friends); 34 //分组信息 35 ArrayList<BigGroupViewModel> groups = new ArrayList<BigGroupViewModel>(); 36 37 BigGroupViewModel bigGroup1 = new BigGroupViewModel(); 38 bigGroup1.setId(1000001L); 39 bigGroup1.setGroupname("SpringBoot爱好者群"); 40 bigGroup1.setAvatar("https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTp9Q8BuXHj30KbOHPY7qlnR10oI4cCpplRcBFThQFzZ4bx3mBz"); 41 groups.add(bigGroup1); 42 43 baseData.setGroup(groups); 44 return ResultUtil.success(baseData); 45 }
View Code
那么在UserController中使用 UserService 的 getBaseList 方法即可。
@GetMapping(value = "/base/{uid}") public JsonResult getBaseData(@PathVariable("uid") Long userId){ return userService.getBaseList(userId); }
注意,我们这里分别使用了 @RestController,@Autowired,@GetMapping,@PathVariable注解,由于我对注解也没有那么了解,所以想具体学习的朋友可以看相关文档。因为我们是快速使用,所以是属于遇到什么学什么,用什么的思路,也不会在某个知识点上停留太久,有问题小伙伴们可以留言一起探讨。
方法写完了,在浏览器中看看(/layim/base/{uid}):
对比一下getList.json文件,是不是没有什么区别。赶紧把getList.json替换了吧。打开index.html,找到 init:url。把我们自己的url替换上去
init: { url: '/layim/base/10000'//10000为用户ID,后台也可以不用路径 使用?uid=10000的形式也可以 ,data: {}//附加其他参数 } 我们在次打开index.html,浏览:
没有任何问题,大功告成?还早着呢,真正的数据是从数据库(或其他存储)读出来的,正如上一篇介绍,我将会使用MySQL作为数据存储,并且使用SpringBoot JPA 做数据操作。
总结
本片教大家如何分析一个带有完整文档的前端框架,并开发对应后台API。虽然只是简单介绍了 init 接口,但是 像getMemberList 接口,或者上传图片啊,文件啊,我相信大家肯定都能举一反三来实现。当然@RestController功不可没。现在想想以后还有很多的工作要做,别着急。后边要学的东西多着呢。websocket,缓存,队列等等都加上(问:用得着这么多东西吗? 答“我只是想通过项目来练习他们的使用)下篇预告:从零一起学Spring Boot之LayIM项目长成记(三) 数据库的简单设计和JPA的简单使用。
相关文章推荐
- 从零一起学Spring Boot之LayIM项目长成记(四) Spring Boot JPA 深入了解
- 从零一起学Spring Boot之LayIM项目长成记(三) 数据库的简单设计和JPA的简单使用。
- 从零一起学Spring Boot之LayIM项目长成记(一) 初见 Spring Boot
- 从零一起学Spring Boot之LayIM项目长成记(五)websocket
- 从零一起学Spring Boot之LayIM项目长成记(六)单聊群聊的实现
- 一起学JAVA之《spring boot》03 - 开始spring boot基本配置及项目结构
- 一起学JAVA之《spring boot》03 - 开始spring boot基本配置及项目结构(转)
- CK1956-2017年最新项目实战Spring Boot视频微服务整合Mybatis
- [置顶] spring boot项目实战:redis
- 关于新建SpringBoot项目添加Myeclipse Service Library 之后项目就报错Unable to start embedded container;
- Spring boot jar项目修改为war包项目
- Spring boot项目设定返回数据为JSON固定格式
- 启动spring boot项目的三种方式
- springboot之web项目开发(spring+jpa+jsp)
- spring boot 项目发布到外部tomcat的关键步骤
- [置顶] spring boot项目实战:JPA
- [置顶] spring boot项目实战:分布式锁
- maven打包springboot项目跳过test文件夹
- 使用Spring Boot和Gradle创建AngularJS项目
- spring boot 项目打包jar 启动方式,以及 可能遇到的坑。