Java 15

spock 사용법(테스트 코드 작성)

Spock를 활용한 테스트 코드 작성 HTML 삽입 미리보기할 수 없는 소스 1. 마우스 오른쪽 build.gradle 파일에서 Generate... - Add dependency... 클릭하면 아래와 같은 창이 나오는데 거기에 org.spockframework.spock를 검색 후 spock-core 찾고 testImplementation으로 변경해준 후 Add를 클릭한 후 2.3-groovy-3.0으로 선택하여 추가해준다 또한 위와 같이 org.cordhaus.groovy를 검색하여 testImplementation 'org.codehaus.groovy:groovy:3.0.0'도 추가. spock는 groovy를 사용하기 때문에 plugin groovy도 추가해준다. 다시 마우스 오른쪽 Genera..

JAVA/Spring Boot 2023.02.23

[ Java ] - 변수의 타입(기본형 / 참조형) * 자바메모리 구조

변수의 타입 변수는 값이 저장되어 있는 메모리 공간을 의미한다. 자바에서 변수 타입은 기본적으로 기본형과 참조형으로 구분되는데, 기본형은 변수의 메모리 공간에 값 자체가 할당되는 것이며, 참조형은 변수의 메모리 공간에 해당 값이 저장된 주소가 저장된다. * 상수 한 번 값을 할당한 후 다른 값을 할당할 수 없는 변수를 의미한다. 상수는 값의 재할당이 불가능하기 때문에 기본적으로 변수의 선언과 함께 값의 초기화가 이루어져야 한다. 상수로 선언한기 위해서는 변수의 타입 앞에 final을 붙여주면 된다. HTML 삽입 미리보기할 수 없는 소스 기본형 타입으로는 문자형(char), 숫자형(byte, short, int, long), 실수형(float, double), 논리형(boolean)이 있으며, 변수 메모..

JAVA 2022.12.25

[ Java ] - stream API 활용

Stream API 활용 stream api는 자바 8에서 새롭게 추가된 것으로, 데이터를 더욱 편리하게 활용할 수 있도록 도와주는 api이다. stream api를 통해 더욱 간결하고 가독성 있는 코드 작성이 가능해졌다. stream api의 경우 람다를 활용하여 사용할 수 있다. HTML 삽입 미리보기할 수 없는 소스 ex1-1) 기존의 코드 public class Ex01 { // public static void main (String[] args ) { List list = Arrays.asList("oh","mi","hee"); Iterator it = list.iterator(); while(it.hasNext()) { System.out.println(it.next()); } } } ex1..

JAVA 2022.10.09

[ Java ] - jsp 기본 문법 / jsp 라이프사이클

JSP 기본 JSP 기본 문법 : Scriptlet이라 하며, 자바코드를 작성할 수 있는 영역으로 주로 연산이나 처리 기능을 한다. : 표현식 값을 출력하는 역할만 하는 곳이다. 해당 역영에서 연산이나 처리는 할 수 없다. : 선엄문이라 하며, 멤버필드와 멤버 메서드를 정의하는 곳이다. 선언문은 잘 쓰이지 않는다. 위의 코드는 아래와 같이 출력된다. JSP 라이프 사이클 이해 예제 위의 코드 작성후 해당 창으로 계속 들어가면 num1은 1씩 커지고, num2는 그대로 1로 존재한다. 또한 서버를 다시 껐다 키면 num1 num2 둘다 1로 표현된다. - jspInit은 서버 실행시 초기값으로 설정하는 것이다. 최초 서버 실행 후 해당 페이지 요청시 jsInit이 동작하여 일종의 실행 객체를 생성하고, j..

JAVA 2022.09.15

[ Java ] -JSP 활용 기본

JSP ( Java Server Page ) html에서 java를 사용하여 동적인 웹페이지를 만들 수 있게 해주는 도구이다. html페이지 내의 자바 코드는 자바 서블릿으로 변환되고, 실제 화면에 구현된 페이지의 소스코드를 확인해보면 자바코드는 제거되어 보여진다. * 자바 서블릿 : 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 의미한다. JSP는 html 내부에 자바 코드를 포함한 것이고, 반면에 서블릿은 자바 코드 안에 html 코드를 포함하고 있는 것이다. * Dynamic web Project 생성하는 법 좌측 상단의 file.- other - dynamic 검색 - dynamic web project 선택 후 next - target runtime 선택 해줌 (n..

JAVA 2022.09.14

[ Java ] - 인터페이스

인터페이스 (interface) 구현 코드가 없는 메서드 즉 추상메서드들로만 이루어진 클래스를 의미하며, interface 키워드를 사용하여 구현한다. 인터페이스는 일종의 설계도 역할을 한다고 볼 수 있다. public interface [인터페이스명] { } ・ 인터페이스에 선언된 모든 메서드는 기본값이 public abstract로 된 추상 메서드이다. ・ 인터페이스에 선언된 모든 변수는 기본값이 public static final 로 선언된 상수이다. 즉 인터페이스에 선언된 모든 변수는 상수로 변환된다. ・ 인터페이스에 선언된 변수와 메서드는 컴파일시에 각각 사용자 정의 상수와 추상메서드로 변환된다. ・ 인터페이스의 경우 추상클래스와 마찬가지로 자기자신은 인스턴스로 생성될 수 없다. ・ 인터페이스..

JAVA 2022.09.06

[ Java ] - 배열과 ArrayList

배열 동일한 자료형이 순차적으로 존재할 때 관리하기에 용이하다. 배열은 연속된 자료구조이다. 중간의 값을 지우게 되면, 뒤의 값들이 앞으로 땡겨오게 된다. ** 배열은 인덱스(순서)는 0부터 시작한다. 배열 선언 방법 자료형[] 배열이름 = new 자료형[갯수]; ex) int[] intArr = new int[10]; 자료형 배열이름[] = new 자료형[갯수]; ex) int intArr[] = new int[10]; public class ArrayMain { public static void main(String[] args) { int as[]; int[] b; as = new int[3]; as[0] = 1; as[1] = 2; as[2] = 3; for (int a : as) { System..

JAVA 2022.09.04

[ Java ] - 싱글턴(singleton) 패턴

싱글턴 (Singleton )패턴 디자인 패턴의 일종으로 static을 응용한 패턴이다. 일반적으로 하나의 클래스에서 여러 개의 인스턴스를 생성가능한 것과 다르게, 싱글턴 패턴에서 클래스를 통해 생성될 수 있는 인스턴스는 오직 하나이다. 싱글턴 패턴의 클래스를 통해 한 번 인스턴스가 생성된 이후에 호출되는 생성자는 최초에 생성된 인스턴스를 가리키게 된다. 인스턴스를 생성하기 위해서는 new를 사용하여 생성자를 호출하는 것인데, 생성자에 private을 사용함으로써, 외부에서 생성자 호출을 통해 인스턴스를 생성하지 못하도록 한다. 대신에 getInstance()메서드를 통해 하나의 인스턴스를 반환하여 주는 것이다. private 생성자 public class Singleton { priate static ..

JAVA 2022.09.03

[ JAVA ] - 프로젝트 생성 후 hello world 찍기

자바와 이클립스 설치까지 완료된 것을 가정한다. 2022.07.24 - [JAVA] - [ JAVA ] - 자바 개발환경 구축 (feat mac) - 01 2022.07.24 - [JAVA] - [ JAVA ] - 자바 개발환경 구축 (feat mac) - 02 1. 이클립스를 킨 후 맨 위에 마우스 커서를 두면 아래와 같이 까만 메뉴창이 나온다. 여기서 File - New - Java Project를 클릭한다. 2. Project name에 본인이 원하는 프로젝트 명을 입력 후 Finish를 클릭한다. 보통 프로젝트 명의 첫글자는 대문자로 하는 것이 정석이다. 3. class를 생성한다. 클래스는 실질적으로 코드를 작성하는 부분이다. File - New - Class를 클릭한다. 4. 아래의 창이 나오..

JAVA 2022.08.19

[ JAVA ] - 필드와 메서드

클래스 쉽게 이야기하면 일정한 형식을 갖춘 틀이라고 볼 수 있으며, 클래스를 통해 인스턴스를 생성한다. 인스턴스는 해당 틀을 통해 만들어진 객체이다. * 클래스로부터 생성된 인스턴스는 힙메모리에 생성된다. 클래스를 통해 생성된 각각의 인스턴스는 다른 메모리에 서로 별개의 값을 가진다. 사용되지 않는 인스턴스는 가비지 컬렉터에 의해 지워진다. * 클래스는 new 예약어를 통해 사용한다. [ 클래스형 ] [ 변수명 ] = new [ 생성자 ] ex) Student studentA = new Student(); * JVM이 Main 함수를 호출하여 프로그램을 실행한다. 즉 해당 클래스 내에서 함수만 생성하고 실행이 필요하지 않은 경우 Main 함수를 만들지 않아도 된다. * 한 파일에서 여러 클래스를 만들 때..

JAVA 2022.08.19