본문 바로가기

전체 글

(67)
Spring MVC Pattern Spring MVC Model , View , Controller 패턴의 개념이다. Model 데이터 저장소와 연동하여 사용자의 데이터를 저장하거나 데이터를 출력하는 등의 일을 수행함 여러개의 데이터 변경작업(추가, 변경 , 삭제)들을 하나로 묶는 트랜잭션의 역할도 수행함 DAO class중 service에 해당됨 DAO(Data Access Object) DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트 View 모델이 처리한 데이터나 결과를 바탕으로 사용자에게 출력할 화면을 만드는 역할 뷰 컴포넌트는 html , css , Js를 사용하여 출력할 UI를 생성해줌 생성된 UI는 웹 브라우저가 출력 Controller Client의 요청을 받았을 때 그 요청에 대해 실제 업무를 ..
Getter Setter class getterSetterExample { //접근 권한이 private인 두개의 객체 생성 //해당 코드블럭 안에서만 접근이 가능하다. private String example; //getter //getExample 함수는 private Type를 retrun해줌으로써 //private Type 객체의 값을 읽어올 수 있다. public String getExmaple(){ return example; } //setter //this.example은 위에서 선언된 private Type의 example을 의미힌다. //파라미터 값을 private type 변수에 할당해줌으로써 멤버변수의 값을 바꿔줄 수 있다. public void setExample(String example) { this.e..
항해99 10일차 , 11일차 =알고리즘 마지막 2일= 알고리즘 주간의 마지막 이틀을 보냈다. 첫주차 미니 프로젝트보다 많이 정적인 한주였으나 좋은 팀원분들을 만나 즐겁게 웃으며 보낸 한주였다. 단순 알고리즘을 푸는 것 만이 아닌 알고리즘을 풀어보고 다른 사람들의 답안을 보며 배워보고싶은 자바 문법과 스킬들을 찾고 정리하는 시간이 스스로 굉장히 큰 도움이 됐던 것 같다. = 알고리즘 주간 마지막 테스트 = 문자열 "1012341234"의 인자 값을 문자열 "010-1234-1234"의 형태로 리턴하는 메서드를 만들어주세요 String 형태로 들어온 매개변수 phone을 phone.split("") 함수를 통해서 한글자씩 쪼게 String배열에 담아줬다. 0,-,- 이 배열에 들어가야하기 때문에 ArrayListType의 빈 배열을 선..
public static void main(String[] args)의 의미 public static void main(String[] args) Intellij로 java를 공부하고 사용하면서 public class Main 코드블럭 내부에 로직을 작성하고 Run해서 내가 작성한 코드를 확인했다. 자바정리 포스팅의 첫번째는 항상 아무 생각없이 마주했던 main함수를 뜯어보는걸로 시작해보려한다. public static void main(String[] args) main method 간단하게는 자바의 규칙이라한다. 프로그램 실행시 반드시 main메서드가 먼저 실행되어야하는 규칙이다. 내가 실행시키고 싶은 로직이 있다면 반드시 public static void main(String[] args){} 중괄호 내부에 로직을 위치시켜야 한다. public 접근제어자로 접근에 제한이 없..
프로그래머스 Lv1 로또의 최고 순위와 최저 순위 import java.util.*; class Solution { public int[] solution(int[] lottos, int[] win_nums) { int[] answer = new int[2]; //두 배열의 값이 같을 때 , lottos 배열의 값이 0일 때 , 최종적으로 -해줄 때 사용할 객체의 선언 //6개 번호가 모두 일치할 때의 값이 1이기 때문에 rank는 7로 선언한다. int match = 0; int zero = 0; int rank = 7; //배열의 값을 비교하기에 앞서 오름차순으로 두 배열을 정렬 Arrays.sort(lottos); Arrays.sort(win_nums); //반복문으로 두 배열의 값을 비교하며 두 배열의 값이 같으면 match가 1씩 더해진다. f..
프로그래머스 Lv1 두개 뽑아서 더하기 class Solution { public Set solution(int[] arr) { Set set = new TreeSet(); for (int i =0 ; i < arr.length ; i++){ for (int j = 0; j < arr.length; j++) { if(i == j) { continue; } set.add(arr[i] + arr[j]); } } return set; } } Set set = new TreeSet(); -Set- 저장 순서가 유지되지 않는다. 반복문과 인덱스를 통하여 Set의 탐색이 불가능해 Iterator를 사용해야한다. 객체의 중복을 자동으로 제거해준다. -TreeSet- 이진 탐색트리 형태로 데이터를 저장하며 데이터의 추가 , 삭제는 다른 Set Collect..
프로그래머스Lv1 같은 숫자는 싫어 import java.util.*; public class Solution { public int[] solution(int []arr) { //ArrayList 객체를 하나 생성 ArrayList arrayList = new ArrayList(); //arr을 arrayList에 할당해줄 반복문 생성 for (int i = 0 ; i < arr.length ; i++){ if (i == 0){ //1번째 값과 비교하며 나아가기 위하여 미리 1번째 값을 할당해준다. arrayList.add(arr[0]); }else{ //arrayList.size()-1을 index한 객체를 가져와 arr[i]와 비교 //같지않을 경우에만 할당해준다. if(arrayList.get(arrayList.size()-1) !..
프로그래머스 Lv1 최소 직사각형 첫번째 오답 import java.util.*; class Solution { public int solution(int[][] sizes) { //Arrays로 합치고 sort로 정렬 중간을 인덱스해서 두개의 배열로 짼다 //큰 배열의 가장 큰 값 작은 배열의 가장 작은값 int answer = 0; int[] arr = new int[sizes.length * sizes[0].length]; //i는 4까지 증가 for (int i = 0 ; i < sizes.length; i++){ //j는 1까지 증가 for (int j =0 ; j