본문 바로가기

Java9

[Java] JPA 이해하기 JPA란?JPA는 애플리케이션에서 관계형 데이터베이스를 객체지향적으로 사용할 수 있게 해주는 ORM(Object-Relational Mapping) 기술 표준이다.   ORM(Object-Relational Mapping)은 객체와 관계형 데이터베이스를 매핑하여 데이터베이스 작업을 객체지향적으로 처리할 수 있게 해주는 기술이다. 데이터베이스의 테이블을 단순한 데이터 집합이 아닌, 하나의 객체 대상(entity)로 바라보고 다룰 수 있게 한다. 즉, 객체를 직접 저장하고 조회할 수 있게 해준다. 반면 MyBatis나 Spring JdbcTemplate과 같은 SQL Mapper는 단순히 SQL 쿼리를 Java 코드와 연결하는 것에 초점을 맞추고 있어 ORM과는 다른 접근 방식을 보여준다. JPA의 장점 J.. 2024. 12. 20.
[Java api] Active Directory와 연결방법 (LDAP) Active Directory란? 사용자 정보를 저장하고 관리하는 데이터베이스의 한 유형으로 디렉토리 서비스의 한 유형이다. 친숙한 관계형 데이터베이스(MySQL, OracleDB 등)와 다르게 AD(Active Directory)는 도메인 네임 시스템(DNS)을 기반으로한 디렉토리 구조로 데이터를 저장/관리한다. * 이름을 기준으로 데이터에 손쉽게 접근할 수 있다. example) 저장되는 데이터의 name 예시 - 아래처럼 entry를 ,로 나열한 형태이다. CN=Jeff Smith,OU=Sales,DC=Fabrikam,DC=COM ('Fabrikam company 세일즈 팀 Jeff Smith'의 식별이름) 데이터 접근방식 - LDAP AD의 데이터에 접근하기 위해서는 LDAP 프로토콜을 사용한다... 2022. 5. 1.
Anonymous Class (익명 클래스)란? (+ GUI에서의 활용) 상속 개념을 통해 자식 클래스는 인터페이스나 부모 클래스를 구현(or 상속)합니다. 그렇다면 자식클래스는 항상 별도의 클래스로 만들어줘야 할까요? 익명 클래스(Anonymous class)는 이런 궁금증에 대한 답변이 됩니다. Anonymous class는 말그대로 이름 없이 정의된 클래스를 의미하며 선언을 위한 요소와 선언 방법은 다음과 같습니다. The new operator The name of an interface to implement or a class to extend. Parentheses that contain the arguments to a constructor, just like a normal class instance creation expression. Note: When y.. 2021. 5. 22.
char - int 형변환 살펴보기 이해했다고 생각했지만 코드를 작성하다 Character - Integer 간 형변환 때문에 원하는 결과값이 안나와서 정리하게 되었습니다. 본 내용에 들어가기 앞서, 임의의 숫자를 문자열로 입력받고 특정 위치의 숫자를 활용하여 연산하는 코드를 생각해보겠습니다. 첫번째와 세번째 위치의 숫자를 더한다고 가정했을 때, 문자열의 특정 위치에 있는 문자를 반환하는 charAt(int index)메소드를 떠올릴 수 있습니다. String example = "23456";//입력받은 숫자열 int num1 = example.charAt(0);//첫번째 숫자 int num2 = example.charAt(2);//세번째 숫자 int sum = num1+num2; /* * charAt(int index) : String의.. 2021. 5. 18.
객체생성 (Creating Objects) // ref: new 연산자 객체지향언어는 현실세계처럼 객체간의 협력 관계를 프로그래밍하는 언어입니다. 객체는 프로그램에서 구현하고자하는 대상이며 클래스는 객체를 위한 설계도로 볼 수 있습니다. 객체는 어떻게 생성할까요?? Example ex = new Example(); 위 문장은 Example 클래스의 객체(인스턴스)를 생성하는 코드이며 아래처럼 해석할 수 있습니다. (Oracle에서 제공하는 Java Documentation 참고) 1. Declaration: The code set in bold are all variable declarations that associate a variable name with an object type. 2. Instantiation: The new keyword is a Java oper.. 2021. 5. 5.
[OOP] 클래스, 객체, 인스턴스 in Java 순서대로 일어나는 일을 시간순으로 프로그래밍하는 것이 절차지향프로그래밍이라면, 객체지향프로그래밍(Object-Oriented Programming)은 객체를 정의하고 객체 간 협력을 프로그래밍하는 것입니다. 따라서, 객체 지향 프로그래밍을 할 때는 먼저 객체를 정의하고 각 객체가 어떤 기능을 제공하고 객체 간 협력을 어떻게 구현할 것인지를 고민해야 합니다. 이러한 객체지향프로그래밍에서 빼놓을 수 없는 개념이 클래스, 객체, 인스턴스 입니다. (개인적으로 객체와 인스턴스의 개념적 차이를 잘 모르겠습니다....) 클래스 - 객체의 속성과 기능을 코드로 구현 - 객체의 설계도 객체 - 프로그램에서 구현할 대상 인스턴스 - 설계도를 바탕으로 프로그램에서 구현된 구체적인 실체 인스턴스와 객체의 개념은 유사하며 객.. 2021. 5. 3.