분류 전체보기

Back End/Spring

Spring 실행 시 Oracle Insert 문으로 데이터 '한번만' 삽입

문제상황 프로젝트에서 teacher이 회원가입 할 때 class가 null 이면 회원가입이 안되는 오류가 있어, class에서 기본적으로 '무소속' 값을 하나 가지고 있어야 했다. 그런데, 클래스를 생성하려면 선생님이 로그인을 해야하는 상황이다. 여기서 문제가 발생했다. 만약 선생님이 한명도 없고, 클래스도 한명도 없는 초기 상황에서 선생님은 어떻게 회원가입을 할 것인가? 회의에서는 ... 실행하자마자 선생님을 한명 넣자 (관리자) 실행하자마자 클래스를 하나 넣자 class가 null이 가능하도록 하자. 회의 결과는 2번이었다. 무소속을 처음부터 집어넣고 시작하자고 했다. Teacher table의 classnum은 다음과 같은 방식으로 입력하였다. https://skylarcoding.tistory.c..

Front End/Vue

Vue.js 사용법 1 (CDN 코드 이용)

Vue란? front 앱의 기본 뼈대와 api를 제공하는 Java Script 프레임 워크이다. 컴포넌트 베이스 개발이다. 컴포넌트는 (화면 ui 구성) , data, 메서드로 구성된다. 보다 동적이고 상호 호환적인 웹 애플리케이션을 개발하기 위해 사용된다. 사용방법 1. CDN 코드로 사용해서 빠르게 호출 2. 다운로드 후 설치 Node.js 설치 -> Vue 설치 .. 등의 과정을 거쳐 설치하여 사용한다. CDN 코드로 호출하는 것보다 더 많은 기능을 사용할 수 있다. 1. HTML 페이지 생성 2. div 생성 div 로 id 를 하나 부여하고, 해당영역을 Vue Application으로 할당해야한다. 3. Vue 어플리케이션 생성자 생성자를 선언하여 뷰 앱을 생성한다. 변수를 만들고 값을 할당하여..

Front End/HTML&CSS

[HTML/JSP] Select Box 에 DB값 가져오기, 선택한 값을 DB에 저장하기

select box에 DB에 있는 값을 꺼내와 보여주고, 선택한 select box 의 값을 DB에 넣어 저장하기. 먼말인지 알쥬...? db 값을 select box 의 옵션으로 가져오기 왼쪽이 DB. DB값을 오른쪽의 셀렉트 박스로 가져오는 방법이다. Controller select box로 이동하는 컨트롤러에서, 가져올 DB값의 전체 검색 service를 실행한다. 나는 include 태그를 이용할거라 body에 담아줬다. @GetMapping("/join") public String joinForm(ModelMap map) { ArrayList list = classservice.getAll(); //전체검색 서비스 실행 map.addAttribute("list",list); map.addAttr..

Mac 개발환경

맥(macOS)에서 오라클 데이터베이스 접속 오류 해결방법 (17002, ora-12528)

초파일을 보내고 프로젝트를 하기 위해 컴퓨터를 켰는데... 으잉? 크롬도 다 꺼져있고 켜놨던 서비스들이 전부 꺼져있어 쎄함을 안고 상단바를 확인했더니.. 도커도 꺼져있었다... 당황한 마음을 진정시키고 우선 도커를 재실행하고, 기다렸다. 도커는 재실행하는데 꽤나 오랜 시간이 걸리더라. 아무튼 도커를 재실행했음에도 Spring을 실행하려하니 아래와 같은 오류가 발생했다. 대충 Oracle 에 문제가 생긴건 누가봐도 ..알겠다.. 오라클을 실행해서 접속하려 하니 아래와 같은 오류가 발생했다. the network adapter could not establish the connection (ORA - 12505) 아래 블로그에서 2번까지 따라했는데 이젠 새로운 오류가 발생했다. docker ps --all ..

Project/복습 프로젝트

[Spring/JPA/RestApi] 온라인 쇼핑몰 만들기 1, 테이블 생성

Table Shopmember 멤버 (1:구매자/ 2:판매자) 테이블 @Id //primary key 임을 지정 private String id; private String pwd; private String name; private String email; private int type; Shop 판매 상품 테이블 @Id @SequenceGenerator(name="seq_gen", sequenceName="seq_shop", allocationSize=1)//시퀀스 생성. sequenceName:시퀀스 이름 @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seq_shop")//값 자동생성설정 private int num; //pk 상품마다 ..

Coding/라이브러리

[JPA] JPA 라이브러리란? 2편, JPA의 어노테이션(Annotation)

이번 편에서는 JPA 라이브러리에서 사용하는 어노테이션에 대해 설명할 것이다. JPA에서는 어노테이션이 대부분의 작업을 수행하기 때문에 꼭 각 어노테이션이 무슨 역할을 하는지 기억해두는 것이 좋다. ORM.DB 자동화 프레임웍 @Entity 테이블 클래스를 정의. 지정된 VO 클래스와 동일한 이름의 테이블이 자동으로 생성되고, 이 클래스의 멤버변수와 동일한 이름과 타입의 컬럼이 생성 @Table(name="테이블명") VO 클래스 이름과 다르게 테이블을 생성하고자 할때, name 속성에서 사용할 테이블 이름을 작성한다. @Id primary key 지정 @Column(name="컬럼명",nullable=true/false) 컬럼의 이름과 속성을 설정하는 주석 @Transient 컬럼에 제외하는 변수 표시..

Coding/라이브러리

[JPA] JPA 라이브러리란? 1편, JPA의 기본 구조

JPA는 MyBatis 와 비슷한 역할을 하는 라이브러리로, 자바에서 데이터베이스와의 상호 작용을 추상화하는 API이다. JPA는 객체-관계 매핑(Object-Relational Mapping, ORM)을 지원하며, 개발자가 객체 지향적인 방식으로 데이터베이스를 다룰 수 있게 도와준다. JPA 에서는 이름이 중요하다. JPA 자체에서 데이터 베이스를 생성하기 때문에 대소문자등을 코드 전체에서 똑같이 사용하도록 해야한다. 특히, 데이터 베이스의 이름이 생성될 때 대문자는 하나의 문자로 인식하므로 주의하여야 한다. ex) MyProduct -> my_product Myproduct -> myproduct JPA Pom.xml 추가하기 Pom.xml에서 아래의 문장을 추가한다. * spring.jpa.data..

Mac 개발환경

맥에서 이클리스 두개 여는 방법

워크스페이스를 이동해야 할 때가 있는데, 현재 이클립스에서 워크스페이스를 변경하면 처음부터 재구동되기 때문에 굉장히 불편하고 시간도 오래 필요하다. 그래서 워크스페이스를 자주 이동할 때 두 개를 동시에 켜놓는 방법을 찾았다. 1. 터미널에서 Eclipse 가 설치된 폴더 열기 폴더 찾기가 어려워서 이클립스 아이콘이 있는 Application 폴더에 들어가 아래와 같이 응용 프로그램 >폴더에서 새로운 터미널 열기를 선택했다. 이러면 접근도 거부되지 않고 바로 터미널로 들어갈 수 있다. 2. 이클립스 실행 아래 코드를 터미널에 입력해 이클립스를 실행한다. 이때 동일한 워크스페이스가 이미 사용중이라고 나오는데, Retry / Choose 중에 Choose를 선택해주면 된다. 그리고 열고 싶은 워크스페이스를 선..

Coding/라이브러리

[MyBatis] MyBatis 란? 마이바티스 사용법

MyBatis 마이바티스 마이바티스는 자바 언어를 위한 오픈 소스 데이터 매퍼 프레임워크이다. 데이터 매퍼는 데이터베이스와 어플리케이션간의 상호작용을 담당하는 계층으로, 데이터베이스의 데이터를 객체로 매핑하고 SQL 쿼리를 실행하여 데이터를 조작한다. 마이바티스는 이러한 데이터 매퍼 계층을 효과적으로 구현하고 사용할 수 있도록 도와준다. MyBatis Vo 생성 법칙 MyBatis에서의 Vo에서 Date속성은 sql.Date를 임포트한다. 아래의 Setter, Getter은 롬복을 사용하였다. [Lombok] 롬복이란? 롬복 사용하는 방법 Lombok은 ... 롬복은 Java 언어로 작성된 프로젝트에서 개발자의 생산성을 높이기 위해 사용되는 오픈 소스 라이브러리이다. 롬복은 반복적이고 번거로운 작업을 줄..

Coding/라이브러리

[Lombok] 롬복이란? 롬복 사용하는 방법

Lombok은 ... 롬복은 Java 언어로 작성된 프로젝트에서 개발자의 생산성을 높이기 위해 사용되는 오픈 소스 라이브러리이다. 롬복은 반복적이고 번거로운 작업을 줄이고자 주석 기반의 애노테이션을 사용하여 자동으로 코드를 생성하는 기능을 제공한다. 어노테이션 (annotation/ 주석) 클래스 위에 어노테이션을 추가한다. @Setter/ @Getter 메서드 각각 Setter, Getter 을 추가해주는 어노테이션이다. 롬복은 @Getter와 @Setter 애노테이션을 사용하여 클래스의 필드에 대한 Getter와 Setter 메서드를 자동으로 생성해준다. 이를 통해 코드를 간결하게 유지할 수 있다. @Getter @Setter @ToString 롬복은 @ToString 애노테이션을 사용하여 클래스의 ..

Lar
'분류 전체보기' 카테고리의 글 목록 (12 Page)