Java 37

[JAVA] 자바의 조건문

자바의 제어문에는 조건문과 반복문이 존재합니다. 오늘은 제어문 중에 조건문에 대해서 공부해보도록 하겠습니다. 자바의 조건문은 if, switch문이 있습니다. 먼저 if문에 대해서 알아보겠습니다. IF문 단어로써의 if의 뜻은 만약 ~라면 이죠? 자바에서는 만약 ~조건이 참이라면 이라고 해석하시면 될 것 같습니다. if문의 기본적인 형태는 아래와 같습니다. if( 조건식 ){ 명령; } 따라서 조건식이 참(true)일 경우 중괄호({ }) 안에 있는 명령을 수행하게 됩니다. 거짓일 경우는 명령을 수행하지 않고 if 문 밖으로 나오게 됩니다. 또한 if문은 조건을 여러 개 둘 수 있는데 이럴 때는 또 if문을 사용해도 되지만 else if혹은 else문을 써줍니다. 두 개의 차이는 else문을 사용하면 거..

Java/JAVA 2021.09.12

[JAVA] 자바 기본

오늘부터 JAVA라는 언어에 대해서 공부해보도록 하겠습니다. JAVA란 무엇일까? Java는 Oracle사에서 만든 프로그래밍 언어로 처음 개발 당시에는 가전제품 내의 프로그램의 동작을 위해 개발되었지만 현재 웹 애플리케이션 개발에 가장 많이 사용되는 언어입니다. Java는 사람이 컴퓨터에게 명령하는 언어로 객체지향언어라고 불리기도 합니다. 컴퓨터는 사람이 사용하는 언어를 모르기때문에 프로그래밍 언어를 사용해 컴퓨터가 이해할 수 있게 바꿔줘야 합니다. 컴퓨터가 이해하는 언어인 기계어로 바꿔주는 2가지 방법이 있는데 1. 인터프리터(Interpreter) 2. 컴파일러(Compiler) 입니다. 인터프리터의 경우 파일을 한줄씩 읽고 기계어로 바꿔주지만 컴파일러는 파일 전체를 읽고 기계어로 바꿔줍니다. Ja..

Java/JAVA 2021.09.09

[Spring] 14. Spring Legacy Project 만들기

이번에는 Spring Legacy Project로 프로젝트를 만들고 실행해보도록 하겠습니다. 먼저 Project Explorer에 new - other - spring을 검색하면 Spring Legacy Project를 선택해줍니다. 그다음 프로젝트명을 임의로 정해서 적어주고(저는 SpringMVC01로 했습니다.) Templates에 Spring MVC Project를 누르고 Next를 눌러줍니다. 그럼 보기와 같은 창이 나오는데 top-level 패키지를 지정해달라고 합니다. 우선 com.mvc.hello로 만들어줍니다. 이 부분은 패키지가 이렇게 자동으로 설정되게 도와줍니다. 여기서는 다른 설정 없이 바로 실행해보면 이렇게 왜인지 모르겠지만 한글이 깨져서 나옵니다. 하지만 코드를 조금만 손보면 한글..

Java/Spring 2021.07.31

The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 에러

SpringMVC의 view 부분에 jsp파일을 만들던 도중 이러한 에러가 발생했다. ctrl + a -> ctrl + x -> ctrl + v 해봐도 여전했다. 구글링을 통해 찾아보니까 서버 쪽 에러라고 한다. 응? 나 근데 왜 서버 잘 연결되어있는데... 다시 찾아보니 Project Facets쪽 연결을 확인해보라고 한다. 이 부분에 체크가 풀려있었는데 다시 체크하고 Apply and Close 시키면 에러가 사라져 있는 걸 확인할 수 있다.

Java/Error 2021.07.31

[Spring] 13 -* Spring MVC ( Task tag를 이용한 TODO주석 표시)

이번에는 스프링에 대한 개념보다는 좀 더 수월하게 사용하기 위한 Task tag기능을 사용해보려고 합니다. (저번 포스팅의 내용을 그대로 사용하여 설명하겠습니다.) 우선 저번 포스팅에서의 흐름대로 설명을 주석으로 써보자면 우선 첫 번째로 pom.xml에 dependency 추가 2. web.xml에 listener랑 DispatcherServelet 추가 3. hello-servlet.xml에서 package 읽어서 객체 생성하기 4. Controller에서 hello.do로 넘어온 요청을 처리해 biz(service)로 넘겨준다. 5. biz(service)에서 dao(repository)로 넘겨준다. 6. dao(repository)에서 db에 값을 보내고 응답받아 biz로 전달한다. (여기는 실제로..

Java/Spring 2021.07.13

[Spring] 13. Spring MVC

이번에는 SpringMVC에 대해 설명해보도록 하겠습니다. 먼저 SpringMVC을 간단하게 설명하자면 SpringMVC란? - 스프링 프레임워크에서 지원하는 SpringMVC는 모델-뷰-컨트롤러(MVC)구현을 포함하여 도메인 모델 코드와 웹 폼을 깔끔하게 분리할 수 있도록 한다. - 스프링 프레임워크의 다른 기능과 통합할 수 있게 하며, MVC 기반의 웹 프로그램 개발을 효율적으로 할 수 있도록 지원한다. SpringMVC 특징 - Spring Framework의 다른 모듈과의 연계가 용이하다. - 컨트롤러, command 객체, 모델 객체, Validator 등 각각의 역할에 대한 명확한 분리가 되어있다. - Form 객체 없이 사용자 지정 가능한 데이터 바인딩과 유효성 체크를 지원한다. - 어떠한 ..

Java/Spring 2021.07.08

[Spring] 12 -3 AOP 적용하기 (Component + 심화)

이번에는 component-scan을 이용해서 AOP를 적용해보도록 하겠습니다. 바로 패키지 만들러 가볼까요 ~ Student.java (interface) package com.test06; public interface Student { void classWork(); } StudentA.java package com.test06; public class StudentA implements Student { @Override public void classWork() { System.out.println("컴퓨터를 켜서 뉴스를 본다."); } } StudentB.java package com.test06; public class StudentB implements Student { @Override ..

Java/Spring 2021.07.06

[Spring] 12 -2 AOP 적용하기 ( Annotation - Before, After, AfterReturning, AfterThrowing)

이번엔 annotation을 사용하여 aop를 적용해보도록 하겠습니다. com.test04 패키지 만들어주세요 Student.java (interface) package com.test04; public interface Student { public String classWork(); } StudentA.java package com.test04; public class StudentA implements Student { @Override public String classWork() { System.out.println("컴퓨터를 켜서 뉴스를 본다."); return "스프링 연습"; } } StudentB.java package com.test04; public class StudentB impl..

Java/Spring 2021.07.05

[Spring] 12 -1 AOP 적용하기 ( Namespace - aop)

저번 포스팅에 이어서 이번에는 AOP를 적용하는 방법중에 namespace를 이용하는 방법을 사용해보겠습니다. 바로 패키지 만들러 가볼까요~ Student.java(interface) package com.test03; public interface Student { void classWork(); } StudentA.java package com.test03; public class StudentA implements Student { @Override public void classWork() { System.out.println("컴퓨터를 켜서 뉴스를 본다."); } } StudentB.java package com.test03; public class StudentB implements Stude..

Java/Spring 2021.07.04

[Spring] 12. AOP - 기본 개념 ( CC, CCC, Joinpoint, ...)

오늘은 스프링의 AOP에 대해서 공부해보겠습니다. AOP ( Aspect Oriented Programing) - 관점지향 프로그래밍이라고 합니다. AOP에 사용되는 용어들을 간단히 정리해보자면 CC (Core Concern) : 주 관심사항 CCC (Cross Cutting Concern) : 공통 관심사항 Joinpoint : 인스턴스의 생성시점과 메소드를 실행하는 시점, Exception이 발생하는 시점같이 애플리케이션이 실행될 때 특정 작업이 실행되는 시점 Pointcut : 어떠한 Joinpoint에 적용되어야 하는지 정의 Advice : Pointcut에서 지정한 Joinpoint에서 실행(삽입) 되어야 하는 코드로 Aspect의 실제 구현체 Aspect : Advice + pointcut 으..

Java/Spring 2021.07.03