본문 바로가기
Java

[java] java로 xml 다운로드

by Yeoseungwon 2024. 7. 1.
728x90
	@RequestMapping(value="/convertToXml.do", produces="application/x-msdownload;charset=utf-8")
	public void signInsertToXml(@ModelAttribute("searchVO") ReservationReportVO vo, HttpServletRequest request, HttpServletResponse response) throws Exception {
		logger.info("CALL //convertToXml.do");

		//xml생성
		// 현재 시간
		String currentTime = DateUtil.getCurrentDateTime();
		//String xmlNm = "_sign_".concat(currentTime);
		String xmlNm = "xml보고서";
		//XML 파일 경로
		String SRC = "";
		//firstPdf + 이미지 합쳐진 최종 pdf파일
		ReservationReportVO resultList = new ReservationReportVO();

		String storePathString = "";
		
		try {
			//보고서에 입력될정보 select
			//resultList = signService.selectPdfSignInfo(mVO); //membershipNo , signKey
			
			// 파일이 저장될 폴더경로
			storePathString = "C:\\project\\프로젝트폴더이름\\reservation\\src\\main\\resources\\static\\camping\\xml";
			SRC = storePathString+"/"+xmlNm+".xml";
			File saveFolder = new File(WebUtil.filePathBlackList(storePathString));
			
			File signFile = new File(WebUtil.filePathBlackList(SRC));
			if (signFile.exists()) {
				logger.info("################## SLEEP #################");
				Thread.sleep(3);
			}

			// XML 파일 작성
			StringBuilder xmlBuilder = new StringBuilder();
			
			xmlBuilder.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
			xmlBuilder.append("<?xml-stylesheet type=\"text/xsl\" href=\"./employeesfo.xsl\"?>\n");
			xmlBuilder.append("<root xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:dcterms=\"http://purl.org/dc/terms/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:noNamespaceSchemaLocation=\"bx_Dublin.xsd\" >\n");
			
			xmlBuilder.append("</root>\n");
			
			try (BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(SRC), "UTF-8"))) {
				writer.write(xmlBuilder.toString());
			}
			System.out.printf("XML 파일이 성공적으로 생성되었습니다.");
			
			//pdf 생성
			//convertToPDF(vo, model);
		} catch (Exception  e) {
			logger.error(e.getMessage(), e);
		}
		return;
	}
import java.io.BufferedOutputStream;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;

 

 

 

 

만들어진 xml 

 

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="./employeesfo.xsl"?>
<root xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="bx_Dublin.xsd" >
</root>
728x90

'Java' 카테고리의 다른 글

[java] xml 생성  (1) 2024.06.19
[java] pdf 생성  (0) 2024.06.19
[java] xsl+xml 을 pdf파일로 변환하기  (0) 2024.06.19
Java 타입  (0) 2023.09.22
[Java] 객체지향언어 / 클래스, 객체, 인스턴스, 참조변수, 메서드  (0) 2023.06.11