반응형 java13 [JAVA] Checked Exception, Unchecked Exception * RuntimeException 상속받지 않은 예외 Checked Exception * RuntimeException 상속받은 Unchecked Exception - 개발자의 실수에 의해 발생하는 예외이기때문에 runtime 및 자식 까지모두 예외처리를 강제하지 않는다 Error와 Exception 차이 프로그램이 실행 중 어떤 원인에 의해서 오작동을 하거나 비정상적으로 종료되는 경우가 있습니다. 이러한 결과를 초래하는 원인을 프로그램 에러 또는 오류라고 합니다. 여기서 발생 시점에 따라 아래와 같이 세 가지로 나뉩니다. 컴파일 에러: 컴파일 시에 발생하는 에러 런타임 에러: 실행 시에 발생하는 에러 논리적 에러: 실행은 되지만, 의도와 다르게 동작하는 것 글자 그대로 컴파일 에러는 컴파일할 때 발생하.. 백앤드 이야기/JAVA&Spring 2023. 12. 14. [JAVA&기타] 네이밍 규칙 네이밍 케이스 camelCase (카멜 케이스) PascalCase (파스칼 케이스) snake_case (스네이크_케이스) kebab-case (케밥-케이스) 네이밍 명명 규칙 JavaScript javaScript 는 camelCase 를 사용. 단, 클래스는 PascalCase 를 사용. 파일명 파일명은 kebab-case 로 표현 그래서 kebab-case 또는 snake_case 중에 사용하면 된다. git도 대소문자 무시 MacOS도 파일명을 다룰 때 대소문자를 무시 URL URL 은 kebab-case 로 표현 주소에서 대소문자를 구분함. 그래서 소문자로만 구성하고 kebab-case 로 표현하기 백앤드 이야기/JAVA&Spring 2022. 3. 11. [CentOS7] APM 프로그램 Scouter + Slack 을 이용한 JAVA 서비스 모니터링 - 1편 소개 JVM 기반 WAS, OS 모니터링 시스템으로 오픈소스 APM 입니다. 스카우터는 크게 4가지 모듈로 구성되어 있으며, 각 역할은 아래 에서 소개하도록 하겠습니다. Java 시스템에서 주로 사용하지만 스카우터 git 설명에 따르면 다른 시스템에서도 사용 가능한 것으로 보입니다. https://github.com/scouter-project/scouter/blob/master/README_kr.md scouter-project/scouter Scouter is an open source APM (Application Performance Management) tool. - scouter-project/scouter github.com 스카우터 기본 구성 시스템 적용 버전 1. API Server * .. 운영체제 이야기/Linux(CentOS) 2021. 7. 19. [CentOS7] Gradle 설치 1. mkdir /gradle 2. cd /gradle 3. wget 4. wget https://services.gradle.org/distributions/gradle-6.1-bin.zip 5. unzip gradle-6.6-bin.zip 6. ln -s gradle-6.6 gradle 7. vi /etc/profile.d/gradle-env.sh * export GRADLE_HOME=/gradle * export PATH=$PATH:$GRADLE_HOME/bin 8. source /etc/profile.d/gradle-env.sh 운영체제 이야기/Linux(CentOS) 2021. 2. 28. [Spring] Spring Boot + Gradle + Security 를 이용한 로그인/로그아웃 구현 - 2편 1편과 달리 2편에서는 소스 위주로 작성 하도록 하겠습니다. 순서대로 하나하나 작성했어야 했는데... 작성하다보니 설정값들만 먼저 나열하고.. 뒤죽박죽 인듯 합니다 ㅠㅠ 1편 : 바로가기git 전체 소스 : 바로가기 참고 : * https://www.baeldung.com/spring-security-login* https://www.thymeleaf.org/doc/articles/springsecurity.html import com.hhseong.service.LoginService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.authentication.Authenti.. 백앤드 이야기/JAVA&Spring 2020. 8. 17. Junit5 메모 @WebMvcTest : 선언할 경우 @Controller, @ControllerAdvice 등 사용가능단 Controller 에서만 사용가능단 이 어노테이션 사용 경우 JPA 동작 안함 @Autowired private MockMvc mvc; : 웹 API를 테스트 할 때 사용, 스프링 MVC 테스트의 시작점 이 클래스를 통해 http 메소드 API 테스트 가능 mvc.perform(get("hello")) : MockMvc를 통해 /hello 주소로 요청, 체이닝 지원 .andExpect(statuc().isOk()) : mvc.perform 의 결과를 검증 HTTP header의 Status 의 200을 검증한다 .andExpect(content().string(hello)) : mvc.perfor.. 백앤드 이야기/JAVA&Spring 2020. 7. 4. [JAVA] String, StringBuilder, StringBuffer의 차이 public class MainClass { public static void main(String[] args) {// TODO Auto-generated method stub String a = "이거이거 오이시이"; String b = new String("뀨"); System.out.println("a코 드 " + a.hashCode()); System.out.println("b코 드 " + b.hashCode()); a = a + b ; long startTime = 0; long endTime = 0; String testString = "testString"; startTime = System.nanoTime(); for (int i=0; i 백앤드 이야기/JAVA&Spring 2020. 2. 10. [CentOS7] Minimal 버전 설치 이후 웹서버 만들기 따라하기 - 2편 안녕하세요 한희성 입니다. 이어서 2편을 쓰도록 하겠습니다.!!! 설정해야할것들은 많고.. 시간은 없고 ㅠㅠ 벌써 시간이 오후 10시 30분인데요.. 오늘 다 하고 잘 수 있을지 모르겠네요ㅠㅠ 요즘 쌍둥이 아이들이 이시간이 됐는데도 잠을 잘 안자네요.. 이제 막 100일 넘었습니다. ㅎㅎ 딸둥이 아빠랍니다. 다시 본론으로 돌아와서 이어서 작성 ~ 12. nginx 설치 및 설정 * https://hhseong.tistory.com/119 13. tomcat 설치 및 설정 * https://hhseong.tistory.com/80 14. 방화벽 설정 * netstat -tnlp - 참고 https://zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_%EB%A1%9C%EC%.. 운영체제 이야기/Linux(CentOS) 2019. 11. 5. [CentOS7] Minimal 버전 설치 이후 웹서버 만들기 따라하기 - 1편 안녕하세요 한희성입니다. 오늘은 그동안 중구난방으로 흩어져있던 CeontOS7 웹서버 설정하기를 한군데 모아서 포스팅 할 예정입니다. 미니멀을 설치하는 과정에서 무선 인터넷을 연결해도 좋지만 만약 못보고 넘겼다면, 여기를 참고하시기 바랍니다. 미니멀 버전 설치를 완료했다면 먼저 ifconfig 설정 ~ 센트6까지는 기본으로 설치되어있었으나, 7부터는 기본이아닙니다. 디폴트로 22번포트가 열려 있기 때문에 PUTTY 툴을 이용하여 작업하세요 ~ 문고문횽아가 알려준건.. 이걸 제일 먼저 하세요!!(2편 쓰고나서 nginx가 제대로 프록시 포워드를 못해줘서 첨부터 확인.. ) nginx 로그를 보니 permission denied .... ㅠㅠ $ vi /etc/selinux/config #SELINUX=en.. 운영체제 이야기/Linux(CentOS) 2019. 11. 4. [JAVA] 인코딩과 인코딩 방식 너무 오랜만에 쓰는 블로그라.. 간단하게 쓰고 ㅌㅌ 해야지 예전부터 한번쯤 되새겨보고 싶었던 인코딩과 ~ 인코딩 방식! 인코딩이란? 먼저 위키백과의 사전적 의미를 보자면 부호화(符號化)나 인코딩(encoding)은 정보의 형태나 형식을 변환하는 처리나 처리 방식이다.문자 인코딩(文字-, 영어: character encoding)은 문자들의 집합을 부호화하는 방법이다. 이런 사전적 의미가 있고, 즉 컴퓨터가 이해할 수 있는 형식으로 바꾸어 주는것을 뜻한다. 인코딩 된 문자는 다시 디코딩하여 원래의 문자나 기호로 표현이 가능하다! 그렇다면 인코딩의 종류는 어떤것들이 있는가 ~? ASCII 영문 알파벳과 숫자 문자를 표현하는 대표적인 문자 인코딩이다 아스키는 7bit 인코딩으로, 0~127(128개)의 문자와.. 백앤드 이야기/JAVA&Spring 2019. 9. 9. [JAVA] Paging 모델 및 소스 (Mybatis) 1. 모델 PageNavigation.java @Datapublic class PageNavigation { private int pageNo = 1;private int pageSize = 20;private int blockSize = 10;private int firstPageNo = 1;private int lastPageNo;private List pageList = new ArrayList();private int totalCount;private int previousPage = 1;private int nextPage; public PageNavigation() {} /** * 1. 리스트의 전체크기 필요 * 2. pageSize 필요 * 3. lastPageNo = totalPage * .. 백앤드 이야기/JAVA&Spring 2019. 7. 7. [JAVA] 높은 응집도와 낮은 결합도 응집도란?해당 기능을 수행하기 위해 얼마만큼의 기능과 아이디어가 뭉쳐있는지를 나타내는 정도이다.특정 결과값을 얻기 위해 지나치게 많은 일을 하지 않으면 그것은 높은 응집도라 표현한다. 결합도란?코드의 요소가 다른 상태와 얼마나 강력하게 연결 되어있는지, 또한 얼마나 의존적인지를 나타내는 것이다. 응집도 낮은 클래스의 문제점은이해하기가 힘들고, 재사용이 힘들다. 또한 유지보수가 매우 쉽지않으며 클래스 변화에 민감하다결합도가 낮은 클래스의 문제점은클래스의 규모가 커지기 때문에 이해 하기 쉽지 않으며, 변화에 따른 다른 요소들의 변경을 예측하기 쉽지 않다. 따라서 높은 응집도와 낮은 결합도가 이상적인 모듈이다. 백앤드 이야기/JAVA&Spring 2019. 7. 4. 이전 1 2 다음 💲 추천 글 반응형