Backend(10)
-
[ JAVA ] OverRoading 같은 이름의 메서드들
🎛️OverRoading오버로딩이란 특정 클래스나 메서드를 작성할 때 내부에서추가적으로 이름은 동일하게 작성하고 각기 다른 파라미터를전달받아 파라미터에 따라서 각기 다른 역할을 수행할 수있도록 구성하는 방식을 오버로딩(OverRoading)이라고 한다.(오버라이딩과 오버로딩 착각에 유의하자...) 예제코드public class MemberConstruct { String name; int age; int grade; MemberConstruct(String name, int age) { this(name, age, 45); System.out.println("case 1 : grade를 넘겨받지 않은 생성자 메서드 호출"); System..
2024.10.05 -
[ JAVA ] OverRiding 메서드 덧씌우기? 재정의?
🐎OverRiding오버라이딩이란 부모로부터 상속받은 메서드의 기능을재정의하는 것처럼 보이는 현상을 의미한다 특정 클래스에 extends를 활용하여 부모 클래스를 상속한 경우해당 클래스는 상속한 부모의 메서드를 사용 가능하게 되는데 이 때 상속받은 메서드의 기능이 아닌 다른 기능을 필요할 때overriding을 활용하여 상속받은 메서드를 같은 이름으로원하는 새로운 기능의 메서드를 생성하여 마치 같은 메서드이지만재정의한 것 처럼 활용할 수 있다. overriding이 적용되는 방식은 절차적인 접근순서에 의해 적용된다. 상속 메서드 실행 예시코드// Parent.javapublic class Parent { public void walk() { System.out.println("let's wal..
2024.10.03 -
[ JAVA ] 자바의 Data Type, 일반형과 참조형
Data Type자료의 "형"을 뜻하며 말 그대로 데이터의 타입이다.필자는 Frontend가 주력인 개발자로서 Javascript를 기본으로개발을 해왔기 때문에 Typescript 를 활용하지 않는다면모든 객체(함수, obj, arr 등)와 변수에 별도로 타입을 지정할 일이 없다. 하지만 JAVA 언어를 사용하기 위해서는 모든 클래스에타입 지정이 필수이며, 사실 Javascript를 제외한다면 대다수의언어에서 타입지정은 필수이다. JAVA에서 정의하는 타입은 Javascript에서 정의하는 타입과 크게다르지 않고 일부 개념을 제외하면 거의 동일한 구조이다.Javascript에서 크게 원시타입, 참조타입으로 구분한다면JAVA에서는 일반형, 참조형으로 구분하고 있다. 일반형 (Primitive Type)Ja..
2024.09.18 -
[ Swagger/OpenAPI Codegen ] RestAPI서버의 API문서화, API타입과 통신함수 자동생성 라이브러리
OpenAPIopenAPI는 애플리케이션의 REST-API 문서를 자동으로 구성해주는 라이브러리이다.이 라이브러리를 사용하게된다면 개발을 진행할때 backend에서 API를 구성할때지정한 타입이나 데이터 변수를 따로 문서화하여 frontend개발자에게 전달할 필요가없어지기 때문에 능률을 올려주고 backend, frontend개발자 모두에게 편의를 제공할 수 있는 라이브러리이다. (* React, NestJS로 구성된 프로젝트를 기준으로 포스팅하였다.) Swagger? or OpenAPI?Swagger는 2010년대 초 Tam Wordnik가 개발해온 라이브러리이다.시작은 Wordnik기업에서 자체 API용 UI로 개발되었고 2015년초에SmartBear라는 회사에서 Swagger를 인수했다. 이 후에 ..
2023.04.07 -
[ TypeORM ] 서버와 SQL의 맵핑
TypeORMTypeORM에서 ORM은 Object-Relational Mapping(객체- 관계 맵핑)의 약자이다.객체와 관계형 데이터베이스의 데이터(이하 SQL)를 자동으로 맵핑해준다.객체지향 프로그래밍은 클래스를 사용한 객체모델이며SQL은 테이블을 사용한 모델이다. 서로 다른 형식의 모델이지만ORM을 통해서 객체 간의 관계를 기반으로 SQL을 자동 생성한다. TypeORM에 대한 견해fastify와 express를 SQL를 맵핑할때 자주 사용되는 ORM으로 Sequelize, Knex, TypeORM 등이 있다.요즘 Typescript가 인기를 얻어 급부상하면서 타입을 지정하여 모델을 정의하는장점을 최대한 끌어낼 수 있기 때문에 TypeORM의 선택이 적합하다는 생각이 들었다.특히나 서버와 데..
2023.02.18 -
[ MySQL ] 상관,비상관 서브쿼리와 JOIN
이 게시글에 모든 예시는 아래 링크를 통해서 사용해 볼 수 있다.스키마 이름이나 칼럼이름 역시 같아 결과값이 그대로 적용되어 보여진다.https://www.w3schools.com/mysql/trymysql.asp?filename=trysql_select_all MySQL Tryit Editor v1.0WebSQL stores a Database locally, on the user's computer. Each user gets their own Database object. WebSQL is supported in Chrome, Safari, and Opera. If you use another browser you will still be able to use our Try SQL Editor, b..
2023.02.02