Today's

길을 나서지 않으면 그 길에서 만날 수 있는 사람을 만날 수 없다

반응형

갑을병정이야기 44

WebSquare Studio에서 FusionChart 버블 차트 구현기

WebSquare Studio에서 FusionChart 버블 차트 구현기 오늘은 WebSquare Studio에서 FusionChart의 Bubble Chart를 구현하면서 겪은 시행착오와 해결 방법을 정리해보려 합니다. 데이터 바인딩, 텍스트 표시, 색상 처리, 다운로드 기능까지 다양한 이슈를 경험했는데요, 그 과정을 공유합니다.1. dataList vs ref: 데이터 바인딩 방식WebSquare에서는 FusionChart에 데이터를 바인딩할 때 dataList 속성이나 ref="data:dcBubble"와 같은 ref 속성을 사용할 수 있습니다.dataList: DataCollection을 직접 연결ref: WebSquare의 데이터 바인딩 규칙을 따름하지만 FusionChart는 x, y, z, ..

🐘 Oracle | GREATEST 함수와 PIVOT으로 데이터 다루기

🐘 Oracle | GREATEST 함수와 PIVOT으로 데이터 다루기개요 (Intro)오늘은 Oracle DB에서 여러 컬럼 값 중 최댓값을 구하는 방법과 월별 데이터를 한 행으로 변환하는 방법을 실습했다. 특히 GREATEST 함수의 동작 방식과 PIVOT 구문을 활용한 데이터 구조 변환을 다뤘다. 사용한 기술 스택: Oracle SQL, SQL Developer📅 날짜: 2025.12.19🎯 목표: 컬럼 값 비교와 월별 데이터 Pivot 처리🧰 기술: Oracle SQL, GREATEST, PIVOT, CASE문제 정의 (Problem / Motivation)특정 행(row)의 3개 컬럼 값 중 최댓값을 구해야 하는 상황이 있었다. 단순 숫자뿐 아니라 문자(R, O, Y, G) 값이 들어 있..

Java 로컬 파일 처리, 문자열 검색, 간이 DB 활용 정리

Java 로컬 파일 처리, 문자열 검색, 간이 DB 활용 정리 1. Java 1.8에서 java.nio.file 사용Files, Path, DirectoryStream 등 모두 사용 가능파일 탐색, 필터링, 감시 기능까지 구현 가능예시: .log 파일 필터링try (Stream stream = Files.walk(Paths.get("sample"))) { stream .filter(Files::isRegularFile) .filter(p -> p.toString().endsWith(".log")) .forEach(System.out::println);}2. 파일 내용 읽기private static void readFileContent(Path path) { List li..

하청 개발자와 불법파견: 법적 쟁점과 대응 전략 ( 미국에서 발생한 사태를 바라보며 )

하청 개발자와 불법파견: 법적 쟁점과 대응 전략 1. 주제와 예시IT 업계에서 프리랜서 또는 외주 개발자가 원청업체의 프로젝트에 투입되어 직접 업무 지시를 받는 경우, 이는 불법파견으로 간주될 수 있습니다.예시: 금융권 시스템 개발 프로젝트에 투입된 A 개발자는 원청의 PM으로부터 직접 업무 지시, 일정 조정, 코드 리뷰를 받았고, 하청업체는 급여만 지급. 이는 실질적 고용관계로 판단될 수 있음.2. 법적 근거 및 대응 방안파견근로자보호 등에 관한 법률 제2조, 제6조: 실질적 지휘·감독 시 불법파견으로 간주근로기준법 제2조, 제15조: 실질적 근로관계가 성립하면 보호 대상산업안전보건법 제41조: 원청의 안전조치 의무대응 방안: 근로자 지위 확인 소송, 고용노동부 진정, 공정위 신고3. 원청과 하청업체의..

Java로 RESTful API 구현하기: Retrofit2, OkHttp3, Gson 활용

Java로 RESTful API 구현하기: Retrofit2, OkHttp3, Gson 활용 1. Retrofit2를 활용한 API 호출 예제 및 중요 사항Retrofit2는 Square에서 개발한 HTTP 클라이언트 라이브러리로, RESTful API 호출을 매우 간단하게 만들어줍니다.예제 코드public interface ApiService { @GET("/users/{id}") Call getUser(@Path("id") int userId);}Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://api.example.com/") .addConverterFactory(GsonConverterFactory.create()) ..

오늘 일과를 위해서, Oracle WebLogic 취약점, Java OkHttp API 호출 등등...

Oracle WebLogic Server CVE-2017-10271 취약점 분석 및 테스트 1. 취약점 개요CVE-2017-10271은 WebLogic의 WSAT 컴포넌트에서 발생한 역직렬화 취약점으로, SOAP 요청을 통해 원격 코드 실행이 가능한 심각한 보안 이슈입니다.공개일: 2017년 10월CVSS 점수: 7.5 (High)영향 버전: WebLogic 10.3.6 이하, 12.1.3 이하 등2. Python으로 취약점 검증하기외부 코드를 반입하지 않고 SOAP 요청을 직접 구성하여 WebLogic 서버에 테스트할 수 있습니다.import requeststarget_url = "http://:/wls-wsat/CoordinatorPortType"payload = """ ..

DevExtreme DxDataGrid 셀에 버튼 추가하기

DevExtreme DxDataGrid 셀에 버튼 추가하기 웹 애플리케이션에서 DevExtreme의 DxDataGrid를 사용할 때, 각 셀에 버튼을 추가하고 클릭 이벤트를 제어하는 방법을 소개합니다. 특히 JSP 환경에서 사용할 수 있도록 JavaScript 기반으로 설명합니다.📌 목표: 각 행의 셀에 버튼을 추가하고, 버튼 클릭 시 셀 클릭 이벤트가 실행되지 않도록 제어합니다.1. 기본 Grid 구성먼저 간단한 데이터와 함께 DxDataGrid를 생성합니다.2. 핵심 포인트 설명cellTemplate: 셀을 커스터마이징할 수 있는 함수로, 버튼을 직접 삽입할 수 있습니다.e.stopPropagation(): 버튼 클릭 이벤트가 셀 클릭 이벤트로 전파되는 것을 막습니다.e.preventDefault(..

Oracle 인덱스 정리: 실전 예제와 설계 팁

Oracle 인덱스 정리: 실전 예제와 설계 팁 Oracle에서 인덱스는 성능 최적화의 핵심입니다. 어떤 컬럼에, 어떤 방식으로 인덱스를 적용하느냐에 따라 쿼리 속도가 극적으로 달라질 수 있습니다. 이 글에서는 실전에서 바로 사용할 수 있는 인덱스 생성 예제와 설계 팁을 정리합니다.기본 인덱스 생성 문법-- 일반 B-tree 인덱스CREATE INDEX idx_emp_hiredate ON emp(hiredate);-- 유니크 인덱스CREATE UNIQUE INDEX idx_emp_empno ON emp(empno);-- 복합 인덱스CREATE INDEX idx_emp_job_dept ON emp(job, deptno);-- 내림차순 인덱스CREATE INDEX idx_emp_hiredate_desc ON..

Java에서 ScheduledExecutorService로 비동기 지연 처리하기

Java에서 ScheduledExecutorService로 비동기 지연 처리하기Java에서 작업을 일정 시간 후 실행하거나 주기적으로 반복하고 싶을 때 ScheduledExecutorService는 매우 유용한 도구입니다. 단순한 Thread.sleep()보다 유연하고, 비동기적으로 동작하며, 반복 작업에도 적합합니다.🛠️ 언제 사용하면 좋을까?주기적인 작업 실행 (예: 10초마다 서버 상태 체크)지연된 작업 실행 (예: 버튼 클릭 후 2초 뒤 알림 표시)타이머 기능 대체 (예: 게임에서 카운트다운)백그라운드 유지 작업 (예: 캐시 자동 갱신)멀티스레드 환경에서 안정적인 스케줄링✨ 기본 예제 코드import java.util.concurrent.*;public class SchedulerExample ..

DevExtreme DxPopover 제대로 활용하기

DevExtreme DxPopover 제대로 활용하기DxPopover는 DevExpress의 DevExtreme에서 제공하는 오버레이 UI 컴포넌트로, 버튼이나 텍스트 위에 풍부한 정보를 툴팁처럼 표시할 수 있습니다. 특히 jQuery와 함께 사용하면 유연한 사용자 인터페이스를 구현할 수 있어요.기본 사용 예제$("#popoverContainer").dxPopover({ target: "#myButton", showEvent: "click", hideEvent: "mouseleave", contentTemplate: function(contentElement) { $(contentElement).text("이건 Popover 내용입니다."); }});JSP 콘텐츠 삽입하기contentTem..

반응형