일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- PayPay
- 페이페이
- JenkinsFile
- 카마츠루
- 釜つる
- 프라하
- 뮌헨
- 방콕
- 아타미
- react.js
- 체코
- 미츠이 스미토모
- 태국
- pyenv
- documentdb
- 三井住友カード
- typescript
- vba
- Python
- terraform
- codebuild
- node.js
- CSV
- local
- PostgreSQL
- javascript
- 메르페이
- Selenium
- duckdb
- 熱海
- Today
- Total
목록Tech/Java (8)
도쿄사는 외노자
Map으로 받아온 데이터를 CSV로 만들어, 이를 Zip으로 압축하여 다운로드.이 때, CSV는 사업소별로 나누어져야 하며, 파일로 생성되어선 안됨.즉, Zip파일만을 다운로드하되, 그 안에는 CSV가 사업소별로 나뉘어 들어있어야 함.물론 Zip파일 내의 CSV파일명에는 사업소명이 들어가야 함.ex) 20160921164446_(2558)Nakano.csv단, 자바 라이브러리 추가는 절대 금지. 위의 조건하에 작업 착수. File과 PrintWriter를 써서 만들 경우CSV파일이 따로따로 다 만들어진 후, 이걸 Zip으로 바꾸는 형태가 되는데...데이터가 수십만건이다 보니, 사업소별로 CSV파일이 다 만들어져버리면 지우는 것도 큰일이다. 결국 inMemory로 만들어야만 하고, 그러려면 가장 간단한 방..
자바에서 csv파일을 다운로드하는 작업을 진행중이다.어찌어찌 다운로드가 되긴 하는데...따로 위치지정을 안했더니 그냥 막 프로젝트 내에 파일을 뱉어내더라.다운로드 폴더에 위치지정을 하고 싶어서 알아보니...그냥 Java의 System Properties에 Home Directory가 있는게 아닌가!그래서 이렇게 해결. 1234SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");String strdt = sdf.format(new Date());String downloadFolder = System.getProperty("user.home")+"/Downloads/";String fileName = downloadFolder + strdt+ "_(..
Oracle에 select문을 날려 데이터를 받아오는 과정에서 19:19:58.081 [http-nio-8080-exec-4] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception org.codehaus.jackson.JsonParseException: Illegal unquoted character ((CTRL-CHAR, code 0)): has to be escaped using backslash to be included in string value at [Source: java.io.StringReader@176e..
A2와 A2MN이라는 두 개의 DB에서 각각 List형식으로 데이터를 받아 와, A2에 존재하지 않는 데이터가 A2MN에 존재한다면 해당 데이터를 전부 삭제하는 기능을 만들어야 했다. 그래서 생각해 낸 것이1. A2와 A2MN으로 이중 루프를 돌리고, 키가 일치할 경우 A2MN리스트에서 해당 데이터를 삭제2. 루프가 끝나면, A2MN의 사이즈를 체크3. 사이즈가 0보다 클 경우, 다시 루프를 돌려서 루프 안에서 각 데이터를 하나씩 삭제하며 삭제 로그 기록이었는데... 이런 느낌으로 적어 봤더니12345678for (Map a2 : a2mp) { for (Map a2mn : a2mnmp) { if (a2.get("join_no").toString().equals(a2mn.get("join_no").toSt..
자격 상실 후 7년 이상 지났을 경우, 해당 데이터를 삭제하는 형태의 작업을 해야 했다.이미 SQL은 만들어져 있었기에 내가 어찌 만질 수는 없고,그냥 자격 상실 일자가 (현재 날짜-7년)보다 오래된 경우의 데이터를 일단 뽑아내기로 했다. parameter가 Date형식이기에, Date에서 연도 계산을 하려다가 Calendar 쪽이 더 편하게 계산할 수 있길래 그냥 이 쪽으로 선택. 123Calendar prevYear = Calendar.getInstance();prevYear.add(Calendar.YEAR, -7);Date prev7year = prevYear.getTime();cs
以前のコード1234567891011new BigDecimal($F{mnKosoku}).divide( new BigDecimal($F{nuTaxRate}) .multiply(new BigDecimal("100")) .add(new BigDecimal("100")), 2, RoundingMode.HALF_UP).multiply(new BigDecimal($F{nuTaxRate}).multiply(new BigDecimal("100"))).setScale(0, ($F{stShohizeiHasushori}.equals("1") ? BigDecimal.ROUND_HALF_UP : ($F{stShohizeiHasushori}.equals("2") ? BigDecimal.ROUND_UP : BigDecimal.ROU..
Array를 JAVA에서 Oracle Stored Procedure로 보내는 게현재 상황에서 생각처럼 쉽게 되지 않아서...그냥 List를 String으로 만들어 프로시저로 보내서프로시저에서 파싱하는 방법으로 바꾸기로 했다... 일단 List를 String으로 바꾸는 방법은 다음과 같다.사이사이에 콤마를 넣어야 파싱이 가능하므로, 콤마도 넣었다. 1234public class JForm { @ValidateIllegal(arg0 = @Arg(key = "明細行", resource = false, position = 0)) public List notJushinList;}Colored by Color Scriptercs 12345678910String notJushinArray = "";if(JForm.n..
Javascript ⇒ JAVA ⇒ Oracle Stored Procedure 위의 흐름대로 배열을 전송하던 중, Javascript의 배열을 JAVA에서 List로 받고 보니... 해당 배열을 프로시저로 보내는 과정에서 String Array로 바꾸어야 하더라. 다른 방법도 있었겠지만, 일단 내가 찾아본 바로는 JAVA에서 프로시저로 리스트를 넘기는 방법이 이런 방법 뿐이었다. 하여, List을 String[] 로 바꾸려고 해 보니, toArray()를 써서 간단하게 바꿀 수 있었다. 사용 예시는 다음과 같다.List strList = new ArrayList();일 때, // List의 사이즈만큼 Array의 크기 지정 후 toArray()String[] strArray = strList.toArra..