본문 바로가기

분류 전체보기115

Mybatis 표현식 + MyBatis 표현식 - IF ex) 명령문... - choose (when.otherwise) ex) SELECT * FROM BLOG WHERE state = ‘ACTIVE’ 명령문 .... 명령문 .... AND featured = 1 - trim, where ser ex) update tbl_member username = #{username}. email = #{email}. mp = #{mp}. set user = ${username}, email = #{email} where uid = #{uid} ex) 연산자 select * from emp ename = #{ename} and sal = ${sal} 2020. 5. 29.
프로젝트 0528 힘들었다...... 레퍼런스한 업무 협업 사이트agit는 개설하고 이메일을 통해 초대를 받고 아지트를 가입한다. 그리고 아지트 하나마다 각각의 아이디가 다르다. 그러므로 아이디는 아지트내에서는 중복이되면 안되고 다른아지트에서는 같은아이디가 있는게 가능하다 db를 짜는게 너무 힘들어 강사님께 조언을 구했지만 쉽게 해결이되지 않았다. 딱히 기본키로 설정해 구별할수 있도록 해줄 키가 없었다. 고민을 하다 아이디는 같지만 멤버 번호를 주어서 구별하자는 의견이 나와서 짜는도중 끝이나버렸다 시간이 부족해질것 같다 설계가 중요하지만 너무 어려운것을 선택한거 아닌가 라는 생각도든다 2020. 5. 29.
스프링 프로젝트 0527 오늘은 시간이 별로 주어지지않았다! 우선 강사님의 조언은 업무 협업툴을 만드는데 우리는 백3 프론트4 로 나누기로했지만 협업툴의 핵심기능인 채팅기능을 구현하는데 배우지 않은부분이라 어렵기도 하고 해서 채팅기능을 만드는데 백1 프론트 1 두명이 붙어서 구성하라고 조언해주셨다 하고 싶은 팀원들이 많았는데 백이었던 나는 채팅을 구현하기로 결정되었다. 또 전에는 기능별로 나누어서 mvc 상관없이 구현했지만 이번에는 나누어서 하기때문에 파일이름과 경로 매핑할 이름등을 일치기키기 위해 기능을 하나씩 뜯어보면서 어떻게 넘기고 페이지로 이동할지 구성을 시작했고 내일 끝낼 예정이다 하나씩 뜯어보니까 미쳐 체크못했던 기능들도 있고 그러다보니 erd 구성해본것이 잘못 설계되었다고 느꼈다. 이전 프로젝트를 진행하면서 설계의 .. 2020. 5. 28.
자바 collection - list arraylist 자바의 vector를 개선한 배열로 구현된 List 그말인 즉 데이터가 저장된 순서가 같다. 사실상 배열과 같은 자료구조이기 때문에 리스트의 연산 자체의 수행시간 속도는 배열과 같다. LinkedList 다음 노드의 주소를 기억하고 있는 List로 배열에 비해 삽입과 삭제가 간단하다. 하지만 탐색의 경우 첫번째 노드부터 탐색해 나가야 하기 때문에 느리다. - map hashmap 가장 일반적으로 사용하는 map hashtable을 사용 key값에 해시함수를 적용하여 나온 index에 value를 저장한다 중복을 허용하지 않으며 순서가 없다.(같은 값을 다른 키로 저장하는 것은 가능하다.) Tree map - Red-Black Tree 자료구조를 이용한 Map이다. Tree구.. 2020. 5. 27.
자바 개념정리 객체지향이란 OOP (객체지향 프로그래밍) (중요) 객체지향 프로그래밍은 컴퓨터 프로그래밍 패러다임(견해, 사고법)의 하나로, 프로그래밍에서 필요한 데이터를 추상화 시켜서 상태(속성, 어트리뷰트)와 행위(메서드)를 가진 객체 로 만들고, 그 객체간의 상호작용을 통해 로직을 구성하는 방법. 장점 다른 클래스를 가져와 사용할 수 있고, 상속받을 수 있어 코드의 재사용성 증가 절차지향보다 유지보수가 간단 클래스 단위로 모듈화가 가능하여, 대형 프로젝트에 적합 단점 처리속도가 상대적으로 느리다. 객체가 많으면 용량이 커진다. 설계시 많은 노력과 시간이 필요하다. 6가지 특징 클래스 현실 세계의 객체를 추상화시켜, 속성과 메서드로 정의한 것 (논리적 개념) 즉 클래스를 정의해 높은것 인스턴스 클래스에서 정의한 것을 토대로 만.. 2020. 5. 27.
자바 개념 - 자바의 특징 운영체제에 독립적이다 - 자바 가상머신을통해 자바 응용프로그램은 운영체제나 하드웨어가 아닌 JVM(자바가상머신)을 통해서만 통신한다 JVM은 자바응용프로그램으로부터 받은 명령을 해석하여 운영체가 이해할 수 있도록 변환하여 전달한다. -> 자바는 운영체제에 독립적이고 JVM은 운영체제에 종속적이므로 sun에서서 여러 운영체제에서 실행할 수 있도록 여러 버전의 JVM을 제공한다. 객체지향 언어이다 OOP (객체지향 프로그래밍) (중요) 객체지향 프로그래밍은 컴퓨터 프로그래밍 패러다임(견해, 사고법)의 하나로, 프로그래밍에서 필요한 데이터를 추상화 시켜서 상태(속성, 어트리뷰트)와 행위(메서드)를 가진 객체 로 만들고, 그 객체간의 상호작용을 통해 로직을 구성하는 방법. 장점 다른 클래스를 가져와 사용할 수 .. 2020. 5. 27.
스프링 프로젝트 시작전 회의 프로젝트가 시작되기 앞서서 팀이 꾸려지고 아이디어를 도출하기위해 브레인스토밍 구글 등 각자의 아이디어를 가지고 회의를 한 끝에 평범한 웹사이트 보다는 공부도 할 수 있고 기본 CRUD만 있는 기능이 아닌 다양한 기능 API 네트워크소켓 등 다양하게 해볼수있는 업무협업사이트를 만들기로 정해졌다. 총 7명이 구성하는 팀프로젝트라 3명이 모델과 컨트롤러 4명이 뷰 를 담당하기로 하였고 나는 모델과 컨트롤러를 담당하기로 하였다 레퍼런스 사이트로 잔디,카카오의 agit 를 직접 가입해서 사용해보고 어떤기능들이 있는지 알아보았다 게시판같은 기본기능에 첨부파일 업로드,다운로드 실시간 채팅 등 지금은 모르지만 찾아보고 공부하면서 구현해나갈 기능들도 많아서 이걸 다 구현할수 있을까 라는 의심도 생기지만 어느정도 완벽히 .. 2020. 5. 26.
프로그래머스 가장 큰수 (정렬) 가장 큰 수 ​ 문제 설명 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. 제한 사항 numbers의 길이는 1 이상 100,000 이하입니다. numbers의 원소는 0 이상 1,000 이하입니다. 정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다. 입출력 예 numbers return.. 2020. 5. 26.
프로그래머스 카펫(완전탐색) Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 갈색으로 색칠된 격자의 개수는 기억했지만, 전체 카펫의 크기는 기억하지 못했습니다. Leo가 본 카펫에서 갈색 격자의 수 brown, 노란색 격자의 수 yellow가 매개변수로 주어질 때 카펫의 가로, 세로 크기를 순서대로 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 갈색 격자의 수 brown은 8 이상 5,000 이하인 자연수입니다. 노란색 격자의 수 yellow는 1 이상 2,000,000 이하인 자연수입니다. 카펫의 가로 길이는 세로 길이와 같거나, 세로 길이보다 깁니다. 입.. 2020. 5. 22.