Spring Boot 项目


?? 整合Druid数据源 https://blog.csdn.net/qq_41320105/article/details/87636227    可以看看这位博主的其他配置文章

?? 接口返回数据 https://segmentfault.com/a/1190000018552463

?? Redis配置 https://juejin.im/post/5ba0a098f265da0adb30c684#heading-5       https://www.jianshu.com/p/071bae3834b0   https://blog.csdn.net/qq_41320105/article/details/87867636


        
            org.apache.commons
            commons-pool2
            2.6.1
        
解决异常Error creating bean with name 'redisConnectionFactory'

   注意要开启远程访问

    可视化 https://www.jianshu.com/p/6895384d2b9e

  反序列化失败1:因为之前在linux储存的数据是  > yang < ,没有加引号 "yang" ,所以不能被反序列化

  反序列化失败2: 需要一个无参构造器才能反序列化

报错cannot deserialize from Object value (no delegate- or property-based Creator)

 ?? maven很慢  https://www.jianshu.com/p/dddc8b8c5c74

 ?? 分页:从controller传递一个Pageable的子类PageRequest过去,给Repository一个形参Pageable,返回一个 Page<> 对象回来(Page<>有一个子类,PageImple )

    @GetMapping("/users")
    public ResultVO users(@RequestParam(value = "page",defaultValue = "1")Integer page,@RequestParam(value = "size",defaultValue = "5")Integer size){
        //使用pageable的子类pagerequest构建一个对象
        PageRequest pageRequest = PageRequest.of(page-1,size);
        Page userDTOS = userService.getUsers(pageRequest);
        return ResultVOUtil.success(userDTOS);
    }
controller
    public Page getUsers(Pageable pageable) {
        Page websiteUserPage = userRepository.findAll(pageable);
        //本来获得到Page就可以返回出去,但是还要将数据装换成DTO,所以重新组装成PageImpl,Page一个实现类
        List userDTOList = WebsiteUserToUserDTOconverter.convert(websiteUserPage.getContent());
        //构造一个page
        PageImpl userDTOPage = new PageImpl<>(userDTOList,pageable,websiteUserPage.getTotalElements());
        return userDTOPage;
    }
service

https://zhuanlan.zhihu.com/p/57545677     https://juejin.im/post/5dc35ea16fb9a04a6d7f1e74

 ?? 接口的设计

  users/:uid/state/:type

 ??  数据库时间自动创建和自动更新:

create_time : CURRENT_TIMESTAMP       update_time:CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

??    上传文件(图片),使用一个很厉害个大佬写的 FastDFS :官方安装文档https://github.com/happyfish100/fastdfs/wiki ,项目地址:https://github.com/happyfish100/fastdfs; 

  带权限控制的安装文档:https://zhuanlan.zhihu.com/p/110089695

??  保存信息: 远程主机强迫关闭了一个现有连接。 当操作完redis后,过一会没有操作,再次请求操作,会报这个错;报完错,再次请求,又显示正常。

  解决方法:springboot配置redis设置超时timeout。

  原因:个人猜测是因为服务端的问题。没有设置redis过期时间,默认一直连接,而当linux上的redis检测到没有操作,自己关闭了连接。

当设置了过期时间后,网站主动关闭,下次请求的时候,是一个新的连接。所以当第一次请求redis,会慢一点。

??  部署项目: https://blog.csdn.net/qq_22638399/article/details/81506448  详细:https://blog.csdn.net/c1481118216/article/details/53010963 , 

  停止项目:https://dxysun.com/2018/06/10/springBootForRunJar/