thymeleaf调用springBean

简介: thymeleaf调用springBean

没有经过战斗的舍弃,是虚伪的;没有经过苦难的超脱,是轻佻的。——傅雷

昨天写了一篇关于前端精度丢失的博客

今天发现还有个问题,如果我们需要使用thymeleafjs中使用获取的数据是一个对象

并且里面的属性还是超出16位的Long类型的话,仍然会导致精度丢失

这里我们可以直接写一个JsonManager

/**
 * Json转换管理层
 *
 * @author <achao1441470436@gmail.com>
 * @since 2021/7/7 11:12
 */
public interface JsonManager {
    /**
     * 序列化处理精度丢失
     *
     * @param serializeObj 将要序列化的对象
     * @return java.lang.Object
     * @author <achao1441470436@gmail.com>
     * @since 2021/7/7 11:16
     */
    Object browserCompatible(Object serializeObj);
}

实现类

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
import org.springframework.stereotype.Service;
/**
 * Json转换管理层实现类
 *
 * @author <achao1441470436@gmail.com>
 * @since 2021/7/7 11:13
 */
@Service
public class JsonManagerImpl implements JsonManager {
    /**
     * 序列化处理精度丢失
     *
     * @param serializeObj 将要序列化的对象
     * @return java.lang.Object
     * @author <achao1441470436@gmail.com>
     * @since 2021/7/7 11:16
     */
    @Override
    public Object browserCompatible(Object serializeObj) {
        return JSON.parse(JSON.toJSONString(serializeObj, SerializerFeature.BrowserCompatible));
    }
}

然后我们可以在页面上调用

<script th:inline="javascript">
    let ruben = [[${@jsonManagerImpl.browserCompatible(ruben)}]];
    console.log(ruben)
</script>

我们打开浏览器控制台查看我们替换后的结果

相关文章
|
5月前
|
Java 开发者 Spring
解析Spring中Bean的生命周期
解析Spring中Bean的生命周期
56 2
|
XML Java 数据格式
Spring中Bean的作用域与生命周期
Spring中Bean的作用域与生命周期
66 0
|
6月前
|
Java Spring
spring Bean的作用域和生命周期
spring Bean的作用域和生命周期
|
开发框架 安全 Java
为什么Spring中每个Bean都要定义作用域
前面的视频中都有提到过Spring Bean的作用域。本期视频呢,我针对Spring Bean作用域做一个详细的解答。关于Spring Bean的作用域,我一共分为两个部分来介绍。首先,介绍Spring Bean作用域的定义,然后,介绍Spring为什么要定义作用域?
85 0
|
XML 存储 缓存
Spring 中 Bean 的作用域以及生命周期
Spring 中 Bean 的作用域以及生命周期
155 0
|
设计模式 前端开发 Java
Spring Bean对象生命周期
Spring Bean对象生命周期
412 0
|
XML Java 数据格式
【Spring】Bean 的作用域和生命周期
1. Bean 的作用域 1.1 通过一个案例来看 Bean 作用域的问题 1.2 作用域的定义 1.3 Spring Bean 支持的作用域(未介绍完全) 1.4 修改 Bean 的作用域 1.5 Bean 执行流程 2. Bean 的生命周期 2.1 Bean 的生命周期分为以下 5 大部分 2.1.1 实例化 Bean(为 Bean 分配内存空间) 2.1.2 设置属性(Bean 注入和装配) 2.1.3 Bean 初始化 2.1.4 Bean 使用 2.1.5 销毁 Bean 2.2 Bean 的生命周期执行流程 2.3 生命周期演示
166 1
|
Java Spring 容器
Spring-基于注解的配置[03Bean作用范围和生命周期方法]
Spring-基于注解的配置[03Bean作用范围和生命周期方法]
83 0
|
前端开发 Java 开发者
Spring【Bean的作用域与生命周期】
Spring【Bean的作用域与生命周期】
Spring【Bean的作用域与生命周期】
|
存储 Java Spring
Spring之Bean的生命周期源码解析(三 Bean的创建与销毁)
Spring之Bean的生命周期源码解析(三 Bean的创建与销毁)
231 0