package com.ajin.ajinerp;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.web.servlet.view.json.MappingJackson2JsonView;

@SpringBootApplication
public class AjinErpApplication {

	public static void main(String[] args) {
		SpringApplication.run(AjinErpApplication.class, args);
		System.out.println("test!!!123");
	}

	@Bean(name="jsonView")
	public MappingJackson2JsonView getJsonView () {
		ObjectMapper objectMapper = getObjectMapper();
		MappingJackson2JsonView jsonView = new MappingJackson2JsonView(objectMapper);
		jsonView.setExtractValueFromSingleKeyModel(true);
		return jsonView;
	}

	@Bean(name = "objectMapper")
	public ObjectMapper getObjectMapper() {
		ObjectMapper mapper = new ObjectMapper();

		mapper.registerModule(new JavaTimeModule());
		//기본 날짜 포맷 비활성화
		mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);

		//새로운 날짜 포맷 세팅
		/*SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		mapper.setDateFormat(dateFormat);
		mapper.setTimeZone(TimeZone.getTimeZone("Asia/Seoul"));*/

		return mapper;
	}
}
