• 工作中的小知识点


    hotool工具类包

    引入maven

    <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-http</artifactId>
                <version>${hutool.version}</version>
            </dependency>
            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-core</artifactId>
                <version>${hutool.version}</version>
            </dependency>

    http

    获取网络图片的byte数组

    String url = "https://img.yzcdn.cn/upload_files/2019/11/04/FkKxYNaJw26i906ze8SUIx4BRjlt.jpg";
    //获取图片的byte数组
    byte[] bytes = HttpRequest.get(url).timeout(20000).execute().bodyBytes();
    //转换为base64字符串
    String str= Base64Utils.encodeToString(bytes);

     Controller

    返回byte[],转成图片produces = MediaType.IMAGE_JPEG_VALUE

     @GetMapping(value = "/pic", produces = MediaType.IMAGE_JPEG_VALUE)
     public byte[] getAImg(@Valid @RequestParam(value = "goods_spu_id") Long goodsSpuId, @ApiIgnore UserInfo userInfo) {

    get请求写法

    注解@RequestParam

    value路径参数名

    required是否必填

    注解@Valid参数效验

    注解@NotNull不能为null

    注解@ApiIgnore忽略不用传的参数

    swagger注解:@ApiParam(value=参数的描述,required=是否必传)

    @GetMapping("/getByid")
    public String getById(@RequestParam(value = "id",required = true)
    @ApiParam(value = "id",required = true)
    @Valid @NotNull(message = "id不能为空") Long id, @ApiIgnore UserInfo userInfo) {

     jsckson配置

    定义返回实体Data类型统一格式

    定义返回的数字类型为String(原因:Long类型超过16位,前端js会丢失精度)

    spring:
      jackson:
        date-format: yyyy-MM-dd HH:mm:ss
        time-zone: GMT+8
        generator:
          write_numbers_as_strings: true

    在springboot项目中还可以使用如下代码(Long类型转换为String)

    @Configuration
    public class JacksonConfig {
        /**
         * Jackson全局转化long类型为String,解决jackson序列化时long类型缺失精度问题
         * @return Jackson2ObjectMapperBuilderCustomizer 注入的对象
         */
        @Bean
        public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
            Jackson2ObjectMapperBuilderCustomizer cunstomizer = (builder)->builder.serializerByType(Long.TYPE, ToStringSerializer.instance).serializerByType(Long.class, ToStringSerializer.instance);
            return cunstomizer;
        }
    }
  • 相关阅读:
    关于android 中WebView使用Css
    android下面res目录
    Android View如何获取焦点
    用javascript修改html元素的class
    设计模式-观察者模式(List列表维护观察者)
    闭包->类的实例数组排序
    Javascript setTimeout 带参数延迟执行 闭包实现
    最简单的闭包 掰开揉碎
    原创最简单的ORM例子
    List<T> 转换 DataTable
  • 原文地址:https://www.cnblogs.com/javalbb/p/12753526.html
Copyright © 2020-2023  润新知