Java中使用Fastjson将返回的时间戳格式化为固定字符串格式

首先,我们需要在pom.xml中引入依赖:

pom.xml
	<dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.58</version>
    </dependency>

作为标准的JavaWeb项目,

有一个model模块中的entity类,
User.java

    private String id;

    private String name;

    private String password;

    private Date createTime;

	//set和get方法省略
	...
和一个Controller类
UserController.java
....
@RestController
@RequestMapping("user")
public class UserController {

    @Resource
    private UserService =userService;

    @PostMapping("detail/{id}")
    public String selectUserById(@PathVariable String id) {

		// selectUser:具体从数据库检索该id的用户的方法。
		User user = userService.selectUser(id);
		
        return user.toJSONString();
    }
}

项目启动后,我们可以访问localhost:8080/user/detail/123
得到的数据如下:

{
	"id":123,
	"name":"zhangsan",
	"password":"1234567890",
	"createTime":1587979173
}
可以看到,创建时间的输出的数据格式为一个时间戳,所以,可以使用fastjson将后台传过来的时间戳格式化。

添加如下注释即可格式化时间戳:

    @JSONField(format = "yyyy-MM-dd HH:mm:ss")

我们可以将Model模块中的entity类User.java修改如下:

User.java

    private String id;

    private String name;

    private String password;

	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

	//set和get方法省略
	...
	

我们再访问localhost:8080/user/detail/123
得到的结果:

{
	"id":123,
	"name":"zhangsan",
	"password":"1234567890",
	"createTime":"2020-04-27 17:19:33"
}

可以看到,创建时间的格式由时间戳格式化成固定格式的日期字符串了。

以上、便是使用Fastjson将时间戳格式化为固定格式的日期字符串方法

猜你喜欢

转载自blog.csdn.net/aspire_cj/article/details/105794628