본문 바로가기
728x90
반응형

분류 전체보기278

[Html] onclick 이벤트 처리 💡 Form에서 데이터를 전송(submit) 할 때 확인(confirm) 작업하기 1. form에 onclick속성 정의하여 함수 호출. input type으로 submit button을 넣고 onclick속성으로 버튼 클릭 시 실행할 함수명을 정의한다. 함수를 호출할 때 입력값을 보내려면 getElementById()에 해당 document의 id값을 담아주면 된다. 2. script 태그로 감싸서 function 정의. confirm() 을 사용해서 확인 & 취소를 선택할 수 있고 확인 시 form이 전송되고 취소하면 캔슬된다. 위에서 form의 name으로 지정한 값을 document.addUser로 변수에 담아서 .submit하여 전송함. 2023. 8. 20.
[Java] 디자인 패턴의 개념과 종류 💡 디자인 패턴이란? 소프트웨어를 설계할 때 특정 맥락에서 자주 발생하는 고질적인 문제들이 또 발생했을 때 재사용할 할 수있는 훌륭한 해결책 “바퀴를 다시 발명하지 마라(Don’t reinvent the wheel)” 라는 말이 있듯이 이미 만들어져서 잘 되는 것을 처음부터 다시 만들 필요가 없다는 의미이다. 각기 다른 소프트웨어 모듈이나 기능을 가진 다양한 응용 소프트웨어 시스템들을 개발할 때도 서로 간에 공통되는 설계 문제가 존재하며 이를 처리하는 해결책 사이에도 공통점이 있다. 이러한 유사점을 패턴이라 한다. 패턴은 공통의 언어를 만들어주며 팀원 사이의 의사 소통을 원활하게 해주는 아주 중요한 역할을 한다. 💡 디자인 패턴 구조 콘텍스트(context) 문제가 발생하는 여러 상황을 기술한다. 즉, .. 2023. 8. 20.
[Java] enum 💡 enum이란? 흔히 상수를 정의하는 final static ~ 과 같은 방식은 다양한 문제가 발생할 수 있기 때문에 그런 문제점을 보완하기 위해 자바 1.5버전부터 추가된 것이다. Enum은 열거형이라고 불리며, 서로 연관된 상수들의 집합을 의미한다. 장점 코드가 단순해지며, 가독성이 좋다. 인스턴스 생성과 상속을 방지하여 상수값의 타입안정성이 보장된다. enum class를 사용해 새로운 상수들의 타입을 정의함으로 정의한 타입이외의 타입을 가진 데이터 값을 컴파일시 체크한다. 키워드 enum을 사용하기 때문에 구현의 의도가 열거임을 분명하게 알 수 있다. Ex > package EnumExample; public class EnumExample { *// 기존에 상수를 정의하는 방법* public .. 2023. 8. 20.
[Java] Stream에 대해 알아보자 스트림(Stream)이란? Stream은 Iterator와 비슷한 역할을 하는 반복자이지만, 람다식으로 요소 처리 코드를 제공하는 점과, 내부 반복자를 사용하므로 병렬처리가 쉽다는 점, 중간처리와 최종 처리 작업을 수행하는 점에서 많은 차이를 가지고 있다. 기존 루프문 처리의 문제점 기존 Java에서 컬렉션 데이터를 처리할때는 for, foreach 루프문을 사용하면서 컬렉션 내의 요소들을 하나씩 다루었다. 간단한 처리나 컬렉션의 크기가 작으면 큰 문제가 아니지만 복잡한 처리가 필요하거나 컬렉션의 크기가 커지면 루프문의 사용은 성능저하를 일으킨다. 스트림의 등장 스트림은 Java8에서 추가된 기능으로 컬렉션 데이터를 선언형으로 쉽게 처리할 수 있다. 복잡한 루프문을 사용하지 않아도 되며 루프문을 중첩해서.. 2023. 8. 20.
[Java] Lambda 1. 람다 함수(Lambda Function)란? 람다 함수는 함수형 프로그래밍 언어에서 사용되는 개념으로 익명 함수라고도 한다. Java 8 부터 지원되며, 불필요한 코드를 줄이고 가독성을 향상시키는 것을 목적으로 두고있다. 2. 람다 함수의 특징 메소드의 매개변수로 전달될 수 있고, 변수에 저장될 수 있다.즉, 어떤 전달되는 매개변수에 따라서 행위가 결정될 수 있음을 의미한다. 컴파일러 추론에 의지하고 추론이 가능한 코드는 모두 제거해 코드를 간결하게 한다. 3. 람다식 표현 파라미터와 몸체로 구분된다. 파라미터와 몸체 사이에 > 구분을 추가하여 람다식을 완성시킨다. 몸체 부분이 단일 행일 경우 중괄호와 return문을 생략할 수 있다. 4. 익명함수를 람다식으로 변경하기 기존 방법 new Threa.. 2023. 8. 20.
[Java] Interface 인터페이스(interface)란? 클래스 간의 상속을 통해 중복된 코드를 줄일 수 있고, 유지 보수가 편리하며, 통일성이 있고 다형성을 구현할 수 있다는 이점이 있다. 하지만 다중 상속을 할 경우 method출처의 모호성 등 여러 문제가 발생할 수 있기 때문에 자바에서는 클래스를 통한 다중 상속은 지원하지 않는다. 그러한 이유로 인터페이스를 통한 다중상속을 지원한다. 인터페이스란 다른 클래스를 작성하라 때 기본 틀을 제공하면서, 다른 클래스 사이의 중간 매개 역할까지 담당하는 일종의 추상 클래스이다. 인터페이스는 오로지 ‘추상 메소드’와 ‘상수’만을 포함할 수 있다. 인터페이스 선언 접근제어자 interface 인터페이스이름 { public static final 타입 상수이름 = 값; ... publi.. 2023. 8. 20.
[Java] 객체 지향 💡 객체지향언어 (Object-oriented Language) 프로그램을 다수의 객체로 만들고, 이들끼리 서로 상호작용 하도록 만드는 프로그래밍 언어이다. 객체지향 프로그래밍 특징 추상화(abstraction) 객체들의 공통적인 특징(기능, 속성)을 도출하는 것 객체지향적 관점에서는 클래스를 정의하는 것을 추상화라고 할 수 있다.(클래스가 없는 객체지향 언어도 존재 ex.JavaScript) 캡슐화(encapsulation) 실제로 구현되는 부분을 외부에 드러나지 않도록 하여 정보를 은닉할 수 있다. 객체가 독립적으로 역할을 할 수 있도록 데이터와 기능을 하나로 묶어 관리하는 것 코드가 묶여있어서 오류가 없어 편리하다. 데이터를 보이지 않고 외부와 상호작용을 할 때는 메소드를 이용하여 통신을 한다. 보.. 2023. 8. 20.
[Java] 자바란? 💡 자바(JAVA)란? 자바는 C언어에 객체 지향적 기능을 추가하여 만든 C++과 달리, 처음부터 객체 지향 언어로 개발된 프로그래밍 언어이다. 자바는 자바 가상 머신(JVM, Java Virtual Machine)을 사용하여 운영체제와 독립적으로 동작할 수 있다. 따라서 자바는 어느 운영체제든 같은 형태로 실행 될 수 있다. 💡 자바의 특징 장점 자바는 객체지향 언어이다. 객체를 만들기 위해서 설계도인 클래스를 작성하고, 객체와 객체를 연결하여 목적에 맞는 프로그램을 만든다. 객체지향 언어의 특징인 캡슐화, 상속성, 다형성을 완벽하게 지원한다. 이식성이 높다 자바 실행환경이 설치되어 있는 모든 운영체제에서 실행 가능하다. 하이브리드 언어이다. 컴파일 언어인 동시에 인터프리터 언어이다. 텍스트 소스를 컴.. 2023. 8. 20.
[Thymeleaf] 사용 방법 / 문법 💡 Spring Boot 타임리프 기본 설정 1. Spring Boot에서 타임리프를 사용하려면 라이브러리를 추가해야 한다. 2. 타임리프를 적용할 HTML 문서를 작성, 태그에 속성을 지정한다. 💡 사용 방법 타임리프에서는 JSP처럼 서버에서 받아온 데이터를 ${ } 을 이용하여 표기한다. Controller controller에서 model을 통해 ‘name’이란 이름으로 ‘Rooney’를 넣어 View에게 전달. @RequestMapping("/article") public class ArticleController { @GetMapping("/list") public String articleList(Model model) { model.addAttribute("name", "Rooney"); r.. 2023. 8. 20.
728x90
반응형