My Study
-
구글 애널리틱스란? 구글에서 제공하는 무료 웹 로그 분석 툴 구글 애널리틱스(Google Analytics)는 구글에서 무료로 제공하는 웹 로그 분석 툴이다. 줄여서 GA라고 한다. 구글 애널리틱스를 웹 사이트에 설치하게 되면, 방문자의 유입 소스나 사이트 내 행동과 같은 유용한 정보를 수집하고 저장, 분석할 수 있다. 또한 구글 Ads와 연결해 구글 광고를 최적화하는데 필요한 데이터를 제공하기도 한다. 구글 애널리틱스를 사용하는 이유 방문자의 유입 출처 확인 구글 애널리틱스에서 '획득 > 전체 트래픽 > 소스/매체' 를 열면 아래와 같은 표를 볼 수 있다. 구글 광고를 통해 몇 명이 방문했는지, 네이버 블로그나 페이스북을 통해서는 몇 명이 방문했는지를 알 수 있다. '소스/매체'에서 '소스'는 유입의 ..
GA (Google Analytics)란?구글 애널리틱스란? 구글에서 제공하는 무료 웹 로그 분석 툴 구글 애널리틱스(Google Analytics)는 구글에서 무료로 제공하는 웹 로그 분석 툴이다. 줄여서 GA라고 한다. 구글 애널리틱스를 웹 사이트에 설치하게 되면, 방문자의 유입 소스나 사이트 내 행동과 같은 유용한 정보를 수집하고 저장, 분석할 수 있다. 또한 구글 Ads와 연결해 구글 광고를 최적화하는데 필요한 데이터를 제공하기도 한다. 구글 애널리틱스를 사용하는 이유 방문자의 유입 출처 확인 구글 애널리틱스에서 '획득 > 전체 트래픽 > 소스/매체' 를 열면 아래와 같은 표를 볼 수 있다. 구글 광고를 통해 몇 명이 방문했는지, 네이버 블로그나 페이스북을 통해서는 몇 명이 방문했는지를 알 수 있다. '소스/매체'에서 '소스'는 유입의 ..
2024.02.05 -
C# C#을 사용한 적도, 경험한 적도 없었다. 하지만 금융권 현장에서 사용하는 C#으로 만든 프로그램을 만져볼 기회가 생겨 이렇게 시도해본 후 정리를 한다. 일단 C#을 처음 봤지만 java를 접해봤던 나는 어렵지 않게 시도할 수 있었던 것 같다. 역시 처음이 어려운 법인가...?ㅎ 우선 나는 Visual Studio의 WinForm을 사용했다. 1. 먼저 MySql.Data를 설치해야 한다. 화면 우상단에 있는 솔루션 탐색기를 보면 참조라는 것이 존재한다. 참조에 우클릭 후 NuGet 패키지 관리를 클릭한다. 여기서 MySql.Data를 설치해주면 준비는 끝난다. 2. MySql.Data를 import 해준다. using System; using System.Collections.Generic; us..
C#으로 DB연결 후 데이터 가져오기C# C#을 사용한 적도, 경험한 적도 없었다. 하지만 금융권 현장에서 사용하는 C#으로 만든 프로그램을 만져볼 기회가 생겨 이렇게 시도해본 후 정리를 한다. 일단 C#을 처음 봤지만 java를 접해봤던 나는 어렵지 않게 시도할 수 있었던 것 같다. 역시 처음이 어려운 법인가...?ㅎ 우선 나는 Visual Studio의 WinForm을 사용했다. 1. 먼저 MySql.Data를 설치해야 한다. 화면 우상단에 있는 솔루션 탐색기를 보면 참조라는 것이 존재한다. 참조에 우클릭 후 NuGet 패키지 관리를 클릭한다. 여기서 MySql.Data를 설치해주면 준비는 끝난다. 2. MySql.Data를 import 해준다. using System; using System.Collections.Generic; us..
2024.02.02 -
탭 기능 설명 및 사용법 가이드 1. 메인 JSP 베이스가 될 JSP 코드 사용할 때에 temp.jsp에 js, css 모두 import 후 temp.jsp를 include 한 뒤 사용하는게 좋음. 2. 메인JS 2-1. tabFunc const tabList = new Array(); const tabFunc = (target) => { let link = target.attr('id'); let name = target.text(); if(name == '로그관리') name = '목록조회'; if(tabList.length < 8) { if(tabList.indexOf(name) == -1) { // report를 실행해야 하는 탭 if(name == '서식뷰어') { tabList.push(nam..
탭 기능 만들기탭 기능 설명 및 사용법 가이드 1. 메인 JSP 베이스가 될 JSP 코드 사용할 때에 temp.jsp에 js, css 모두 import 후 temp.jsp를 include 한 뒤 사용하는게 좋음. 2. 메인JS 2-1. tabFunc const tabList = new Array(); const tabFunc = (target) => { let link = target.attr('id'); let name = target.text(); if(name == '로그관리') name = '목록조회'; if(tabList.length < 8) { if(tabList.indexOf(name) == -1) { // report를 실행해야 하는 탭 if(name == '서식뷰어') { tabList.push(nam..
2024.01.25 -
다음에는 더 정확하게 이해를 하고 사용해보기 Quartz는 Job Scheduling 라이브러리로 어느 자바 프로그램에서도 쉽게 통합하여 개발할 수 있다. Quarzt 사용하기 1. Pom.xml에 Quartz dependency 추가 org.quartz-scheduler quartz 2.3.2 2. Trigger와 Job을 Bean 등록을 한다. @Configuration public class ConfigureJob { @Bean @Conditional(QuartzCondition.class) public JobDetail jobADetails() { return JobBuilder.newJob(ExecuteJob.class) .withIdentity("Job") .storeDurably().buil..
Scheduler 만들 수 있는 Quartz 정리다음에는 더 정확하게 이해를 하고 사용해보기 Quartz는 Job Scheduling 라이브러리로 어느 자바 프로그램에서도 쉽게 통합하여 개발할 수 있다. Quarzt 사용하기 1. Pom.xml에 Quartz dependency 추가 org.quartz-scheduler quartz 2.3.2 2. Trigger와 Job을 Bean 등록을 한다. @Configuration public class ConfigureJob { @Bean @Conditional(QuartzCondition.class) public JobDetail jobADetails() { return JobBuilder.newJob(ExecuteJob.class) .withIdentity("Job") .storeDurably().buil..
2024.01.22 -
Spring Security spring security를 사용하기 위해서 pom.xml에 의존성을 추가해야 한다. org.springframework.boot spring-boot-starter-security 3.2.1 dependency> 그리고 로그인 구현 시 필요한 UserDetailService를 상속받은 service와 UserDetails를 상속받은 User가 필요하다. UserDetailService @Service @RequiredArgsConstructor public class MemberDetailService implements UserDetailsService { private final MemberMapper memberMapper; private final PasswordE..
Springboot 3.0 이상에서 Spring security 사용Spring Security spring security를 사용하기 위해서 pom.xml에 의존성을 추가해야 한다. org.springframework.boot spring-boot-starter-security 3.2.1 dependency> 그리고 로그인 구현 시 필요한 UserDetailService를 상속받은 service와 UserDetails를 상속받은 User가 필요하다. UserDetailService @Service @RequiredArgsConstructor public class MemberDetailService implements UserDetailsService { private final MemberMapper memberMapper; private final PasswordE..
2024.01.17 -
Jenkins, Linux, Vi에 대해 알아보자 Jenkins 모든 언어의 조합과 소스 코드 Repository에 대한 지속적인 통합(Continuous integration, CI)과 지속적 배포(Countinuous delivery, CD) 환경을 구축하기 위한 도구이다. 빌드, 테스트, 배포 프로세스를 자동화하여 소프트웨어 품질과 개발의 생산성을 높일 수 있다. Git 과 같은 버전 관리 시스템과 연동하여 소스의 커밋을 감지하면 자동적으로 자동화 테스트가 포함된 빌드가 작동되도록 설정할 수 있다. Jenkins의 이점 1. 편리한 설정 웹 기반의 콘솔로 다양한 인증 기반과 결합이 가능하며 권한 관리 기능을 통해 안전한 빌드 및 배포 환경을 구축할 수 있다. 수많은 플러그인을 사용하여 자동화 할 수..
신입 개발자의 기록 [12/07] Jenkins, Linux, Vi에 대해Jenkins, Linux, Vi에 대해 알아보자 Jenkins 모든 언어의 조합과 소스 코드 Repository에 대한 지속적인 통합(Continuous integration, CI)과 지속적 배포(Countinuous delivery, CD) 환경을 구축하기 위한 도구이다. 빌드, 테스트, 배포 프로세스를 자동화하여 소프트웨어 품질과 개발의 생산성을 높일 수 있다. Git 과 같은 버전 관리 시스템과 연동하여 소스의 커밋을 감지하면 자동적으로 자동화 테스트가 포함된 빌드가 작동되도록 설정할 수 있다. Jenkins의 이점 1. 편리한 설정 웹 기반의 콘솔로 다양한 인증 기반과 결합이 가능하며 권한 관리 기능을 통해 안전한 빌드 및 배포 환경을 구축할 수 있다. 수많은 플러그인을 사용하여 자동화 할 수..
2023.12.07 -
Apache와 Tomcat을 이용해서 war를 배포해보기 먼저 배포를 하기 전 Tomcat에 대해 알아보았다. Tomcat이란 아파치 소프트웨어 재단의 웹 어플리케이션 서버(WAS)로 자바 서블릿을 실행시키고 JSP 코드가 포함되어 있는 웹 페이지를 만든다. 자바 서블릿과 JSP 규격의 참조용 구현으로 평가되고 있는 Tomcat은 웹 서버에서 넘어온 동적인 페이지를 읽어들여 프로그램을 실행하고 그 결과를 다시 html로 재구성하여 Apache에게 되돌려주는 역할이다. Apache는 HTTP 웹 서버이고 구축이 쉽기 때문에 많이 사용한다. 여기서 Apache와 Tomcat의 차이점 Apache는 HTTP 요청을 처리하는 웹 서버이고 Tomcat은 WAS 서버이다. WAS(Web Application Ser..
신입 개발자의 기록 [12/06] Apache와 Tomcat을 사용해 war 배포Apache와 Tomcat을 이용해서 war를 배포해보기 먼저 배포를 하기 전 Tomcat에 대해 알아보았다. Tomcat이란 아파치 소프트웨어 재단의 웹 어플리케이션 서버(WAS)로 자바 서블릿을 실행시키고 JSP 코드가 포함되어 있는 웹 페이지를 만든다. 자바 서블릿과 JSP 규격의 참조용 구현으로 평가되고 있는 Tomcat은 웹 서버에서 넘어온 동적인 페이지를 읽어들여 프로그램을 실행하고 그 결과를 다시 html로 재구성하여 Apache에게 되돌려주는 역할이다. Apache는 HTTP 웹 서버이고 구축이 쉽기 때문에 많이 사용한다. 여기서 Apache와 Tomcat의 차이점 Apache는 HTTP 요청을 처리하는 웹 서버이고 Tomcat은 WAS 서버이다. WAS(Web Application Ser..
2023.12.06 -
웹 성능 최적화하는 여러 가지 방법 웹 최적화 : 최고의 웹 성능을 구현하기 위해 최고의 조건을 만드는 다양한 노력을 의미한다. 즉, 최고의 성능을 만드는 것이 웹을 최적화하는 방법이다. 최적화에는 크게 세 가지 방법이 있다. Front-End 최적화 : 웹 UI/UX 관련된 최적화이다. 주로 HTML, JS, CSS, Image의 최적화를 진행한다. 최적화가 잘 되어있는 웹사이트는 브라우저에서 콘텐츠를 다운로드, 로딩, 렌더링 할 때 속도가 빨라진다. 브라우징 시간 별 콘텐츠를 볼 때 대부분의 시간은 Front-End에서 발생한다. Front-End 최적화하는 대표적인 방법은 다음 표와 같다. 스트립트를 병합하여 브라우저의 호출 개수를 줄인다. 도메인 수를 줄여 DNS 조회를 최소화한다. 스크립트 크기..
신입 개발자의 기록[12/05 웹 최적화]웹 성능 최적화하는 여러 가지 방법 웹 최적화 : 최고의 웹 성능을 구현하기 위해 최고의 조건을 만드는 다양한 노력을 의미한다. 즉, 최고의 성능을 만드는 것이 웹을 최적화하는 방법이다. 최적화에는 크게 세 가지 방법이 있다. Front-End 최적화 : 웹 UI/UX 관련된 최적화이다. 주로 HTML, JS, CSS, Image의 최적화를 진행한다. 최적화가 잘 되어있는 웹사이트는 브라우저에서 콘텐츠를 다운로드, 로딩, 렌더링 할 때 속도가 빨라진다. 브라우징 시간 별 콘텐츠를 볼 때 대부분의 시간은 Front-End에서 발생한다. Front-End 최적화하는 대표적인 방법은 다음 표와 같다. 스트립트를 병합하여 브라우저의 호출 개수를 줄인다. 도메인 수를 줄여 DNS 조회를 최소화한다. 스크립트 크기..
2023.12.05