Java 154

java 기초 설명 2

0 또는 1로 표현할 수 있는 최소 단위를 비트(bit)라고 하며, 8비트가 모이면 1바이트(byte)가 된다. 아스키(ASCⅡ)란? American Standard Code for Information Interchange의 약어로 미국 표준 협회(ANSI)가 제정한 규익이다. 영문자, 숫자, 특수 문자를 8비트 값의 수로 미리 정의해 놓았다. 변수 선언 변수의 자료형을 선택하고 이름을 정하는 것을 '변수를 선언한다'라고 한다. 변수 초기화 시점 변수를 선언함과 동시에 초기화(값 대입) 할 수 있고, 변수 선언을 한 후 대입할 값이 정해질 때마다 초기화를 할 수도 있다. 예약어(reserved word)란? 프로그래밍 언어에서 특별한 의미로 미리 약속되어 있는 단어를 말한다. 변수 이름은..

Java 2020.12.13

java 기초 설명 1

컴파일(compile) 프로그램(코드)을 기계가 이해할 수 있는 언어로 바꾸는 작업 객체지향 프로그래밍 언어 자바나 C++와 같이 대상이 되는 객체를 기반으로 프로그램을 구현하는 언어 자바로 만든 프로그램은 자바가상머신(JVM : Java Virtual Machine)이 설치되어 있으면 운영체제와 상관없이 실행할 수 있다. JDK(Java Development Kit) 자바 개발을 위해 설치하는 자바 라이브러리 The JDK allows developers to create Java programs that can be executed and run by the JVM and JRE. JRE(Java Runtime Environment) 자바 프로그램이 실행되는 자바 실행 환경 The JRE is the..

Java 2020.12.13

[ java ] 자바 기초 다지기

지역변수는 컴파일 할 일도 없고 컴파일 에러가 날 이유도 없다. 지역변수는 초기화가 되어야 한다. '자료형 = 타입' 같은 말 public static void test() { int val1 = 3; val1 += 10; System.out.println("val1 : " + val1); // 출력값 : 13 } public static void test() { int val1 = 1; System.out.println("1 : " + val1++); System.out.println("2 : " + val1); System.out.println("3 : " + ++val1); // ++val1 은 출력하기 전에 자신을 더한 후에 출력을 한다. }

Java 2020.12.13

[ java ] 삼항 연산자 사용법

연습 1 package algo2; import java.util.Scanner; public class Main { public static void main(String[] args) { String test = "HI"; // test가 HI와 같으면 int num은 1, HI와 같지 않다면 int num은 2 int num = ( test.equals("HI") ? 1 : 2 ); System.out.println("num : " + num ); // test가 hi와 같으면 int num2은 1, hi와 같지 않다면 int num2은 2 int num2 = ( test.equals("hi") ? 1 : 2 ); System.out.println("num2 : " + num2); } } 자바에서 ..

Java 2020.12.13

[ 알고리즘 기초 100제 ] 1번 학생이름 저장 및 검색 (예제 만든자 풀이)

public class Student { private String name; private int id; public Student(String name, int id) { super(); this.name = name; this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getId() { return id; } public void setId(int id) { this.id = id; } } import java.util.ArrayList; import java.util.Scanner; public class main { public ..

Java 2020.11.30

[ 알고리즘 기초 100제 ] 1번 학생이름 저장 및 검색

package algo; import java.util.ArrayList; import java.util.Scanner; public class Algo { static Scanner scanner = new Scanner(System.in); static ArrayList array = new ArrayList(); public static void main(String[] args) { while (true) { System.out.print("입력해주세요. : "); String command = scanner.nextLine(); if (command.equals("저장")) { doWrite(); } else if (command.equals("검색")) { doResearch(); } else..

Java 2020.11.30

[ Spring Boot ] pom.xml에 필요한 dependency

JAVA에서 JSON 데이터 만들때 필요한 maven com.googlecode.json-simple json-simple 1.1.1 JSP 엔진(JSP 파일을 사용하기 위한? yml에 jsp 바로 연결해주는 mybatis ~ dto ~ jsp 파일로) org.apache.tomcat.embed tomcat-embed-jasper provided JSTL javax.servlet jstl SQL 로거 DriverSpy 노릇 org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4.1 1.16 https://mvnrepository.com/artifact/com.google.guava/guava com.google.guava guava 29.0-jre 메일을 발송하기 위한 org..

Java 2020.11.25

[ Java ] 상속 protected 설명

[ Java ] 상속 protected 설명 - 외부에 오픈은 되지 않지만 자식에게 상속은 가능한. - 자식이 자유롭게 변수를 사용할 수 있다. ※ private를 사용해서 getter, setter를 주로 사용했지만 일손을 줄이기 위해서 상속을 해주고 protected로 변수 선언을해서 자식 클래스가 자유롭게 사용할 수 있도록 한다. - private로 한다면 public 메서드로 getter, setter 메서드를 만들어서 사용해야 한다. - protected로 변수를 선언한다면 상속을 받은 자식 클래스는 원하는대로 변수를 사용할 수 있다. - 굳이 getter, setter를 해줄 필요가 없다.

Java 2020.09.29

[ Spring Boot ] 스프링부트 진행 진행 계획, 공부 계획

[ 토요일 공부 계획 2020-09-11] 1. 작업 12, 작업 13, 작업 14, 작업 15 2. project [ 일요일 공부 계획 2020-09-12] 1. Project [ Project 계획 중요 기능순 나열 ] - 그룹, 팀, 멤버 형성해서 소속 인원만 메모(게시물)를 열람할 수 있도록 - 초대는 이메일 발송, 그 이메일을 확인하고 링크타고 페이징 이동해야 참여 가능 상태로 전환 - 선택사항으로 '그룹'내에서 작성한 메모를 초대받은 인원들이 해당 메모를 열람했는지 확인 여부를 메모장에서 확인할 수 있도록 - 선택사항으로 '그룹'내의 메모를 수정할 수 있다, 없다 2가지로 구분해서 작성하도록 - 그룹내에서 메모를 수정중 일때는 '수정중' 문자 출력 - 기본적으로 '공개' 작성되는 메모를 비공개..

Java 2020.09.11

Spring Boot 진행 현황 (2020-09-08 화요일)

2020-09-08 화요일 == TODO == 1. 해시태그 검색 ( YOU, ME 각각 ) 2. 해시태그 클릭하면 관련 게시물 리스팅 ----------------------------------------------------------- 1. 검색어를 입력받는다. 2. 입력받은 검색어로 hashtag에서 검색어와 일치하는 태그의 relId를 얻어온다. 3. 얻어온 relId와 일치하는 hashtag를 List에 다 담는다. 4. hashtag의 relId와 일치하는 article를 List에 다 담는다. ( article의 WHERE id = relId; 이런식으로 ) 5. List로 만든 hashtags와 articles를 jsp 파일로 넘겨준다.

Java 2020.09.08

스프링 부트 작업 현황(2020-09-04 금요일)

== TODO == [ 문제 3 ] - 게시물 수정 [ 문제 4 ] - 게시물 삭제 [ 문제 5 ] - 태그 수정 [ 문제 6 ] - 태그 삭제 == DONE == [ 문제 1 ] .con2로 table 크기 조정해놓은거 mobile-mode에서 크기 조절되도록 수정 [ 해결 ] common.css에 media 를 활용하여 pc, mobile 용으로 나눠서 보여주게 했음. [ 문제 2 ] JOIN에서 input에 1글자만 입력하고 지웠을때는 $message.empty();가 작동하지 않았음. [ 해결 ] 확인해본 결과, ajax 함수를 호출하는 함수에서 form.loginId.value.length == 0이라면 return; 을 걸어놔서 그랬음. return에서 막혔음. 그래서 주석처리하고 확인하니 되..

Java 2020.09.04

스프링부트 작업현황... 2020-09-02 수요일

[ TODO ] [ 문제 1 ] 코드, 변수명, 이동경로 싹 다 수정하기 [ 문제 2 ] 그리고나서 다른 사람 닉네임 클릭하면 그 사람 닉네임을 uri로 받아서 멤버를 찾아오 고 멤버의 아이디로 폴더를 다 불러오면 되겠다. [ 문제 3 ] 그리고 폴더를 클릭했는데 작성자가 아니면 수정할 수 없게하고 폴더 상세보기로 들어가서 각 메모장으로 이동할 수 있게 해보자! [ 문제 4 ] 메모장 상세보기에서 댓글을 다는거지. [ 문제 5 ] 폴더 상세보기 페이지가 있고, 폴더 안의 메모장 상세보기가 있는거야. [ 문제 6 ] memoCate table - 댓글 - list - 현재 memo table에 있는거 모두를 동일하게 처리 - dto 만들기 -----------> memoCate 나눌 필요 없음. [ 문제 ..

Java 2020.09.02

스프링부트 작업 현황(2020-09-01 화요일 잠들기 전)

[ 메모장에 있어야 하는 기능, 추가해야 하는 기능 ] - 토스트 에디터 - 토스트 에디터 색상 선택 기능 - 댓글 입력 - 게시물에 동영상 첨부 - 댓글에 이미지 첨부 - 댓글에 동영상 첨부 - My memo - 다른 사람 nickname 클릭하면 그 사람 memo로 이동 - 달력 - TODO List처럼 check box로 관리할 수 있도록 - 코드펜 기능 따라하기(코드펜 기능 알아보기) - PC 버전, 모바일 버전 - 프레임 변경 - 배경색 변경 - 프레임 및 배경색을 테이블을 따로 만들어서 관리 - codepen처럼 복사하기(fork) -> 복사하면 내 memo로 바로 작성이 되는?! - 이전, 다음 버튼 - 게시물 페이징 - 페이징 줄이기 - - memo table (사용자가 메모 카테고리를 만..

Java 2020.09.02

스프링부트 작업 현황 3 (작성일 : 2020-09-01 화요일)

== TODO == [ 문제 5 ] 로그인 아이디, 닉네임, 이메일, 전화번호 중복 확인하는 아작스 코드가 굉장히 중복되고 있음...... [ API 조사 ] [ 샘 유튜브에 프로그램 설치하는거 해놓기 ] [ 발표 준비 및 앞으로 계획 구상 ] [ 문제 6 ] 회원가입을 연속으로 2번했더니 admin2 회원한테서 lastPasswordUpdateDate attr 변수가 null이라는 오류 발생 ==> 해결하기. == DONE == [ 문제 1 ] javascript __replaceAll 샘 코드 참고해서 개선해보기. [ 해결책 ] String.prototype.replaceAll이라는 함수를 범용 common.js에 만들어 놓으셨음. 이 코드를 호출해서 기존 기호를 없애거나 공백을 없애서 return ..

Java 2020.09.01

스프링부트 작업 현황 2 ( 2020-08-31 월요일)

[ 개선해야 하는 점 ] == TODO == == DONE == [ 문제 1 ] 1. 게시물을 작성하면 게시물 상세보기 페이지로 바로 이동 2. 게시물 리스트에서 게시물 상세보기 후 목록으로 가면 해당 리스트로 이동 가능 3. 그러나 게시물을 작성하고, 게시물 상세보기 페이지로 이동 후 목록으로 돌아가려고하면 해당 board를 찾지 못함. [ 해결책 ] - write - doWrite - detail에서 boardCode를 제대로 받아오지 못해서 임의로 uri를 만들어서 넘겨주었음... [ 문제 2 ] 1. 회원가입시 휴대전화 입력 기능 추가해야함. 2. 기존 코드에서 오류 찾아서 수정하기. [ 해결책 ] - 휴대전화번호 길이. - 자바스크립트는 replaceAll 작동하지 않는다. - 그래서 repla..

Java 2020.08.31

참고하기

[ 게시물 리스트, 게시물 작성 2가지 구현 ] 공지사항 게시판 테이블 생성 (notice) MySql table dto 자유게시판 테이블 생성(free) MySql table dto @PathVariable 어노테이션이 뭔지 알아야 할 듯 내용 사용법 매개변수로 전달받은 값을 그대로 사용할 수가 있다. == 게시판 테이블에 필요한 필드 == 2개가 아니라 board는 1개! -> controller, service, dao는 article만 있으면 될 것 같음! (board꺼는 없어도 될 듯) id regDate updateDate delStatus delDate name code [ 예시 ] 자유게시판 localhost:8088/usr/article/write 여기에서 list 여기에서 write 공..

Java 2020.08.20

Dynamic project 생성, servlet 등 기초

1. 먼저 Dynamic Web Project를 생성한다. 2. Project name을 입력하고, Target runtime을 지정해주는데, 기존에 있던 tomcat을 지정하거나, 처음 설치하고 사용하는 경우에는 'New Runtime'을 클릭해서 설치한 tomcat을 지정해주고, JER이 아닌 JDK1.8~~로 지정해주어야 한다. 추가로 지정해줄거 있으면 지정해주고. 3. Servlet class를 만들어 준다 (일반 class가 아님을 숙지해야 한다.) 4. Sevlet 생성 - Java package 입력 중요하다. blog의 경우는 com.sbs.java.blog 라고 만들어주고 사용하고 있다. - Class name은 관례로써 HomeController의 MainServlet이다. 라는 의미...

Java 2020.07.04

sts(이클립스) 오류 찾는 방법

1. 의심가는 지점에 break pointer를 건다. (좌측에 더블클릭해서 파란색 포인트 생성) 2. 그리고 나서 상단에 벌레 모양을 클릭해서 실행시킨다. 3. 실행이 똑같이 되지만 상단에 보면 프로그램이 계속 실행중이며, 아래 sts 모양이 깜빡깜빡 거리는 것을 확인 할 수 있다. * 의미 : 더 이상 진행이 되고 있지 않음을 의미한다. break pointer를 건 곳에서 멈춘 것. 4. 여기서 중요한 것! ★ F5, F6, F7 의 사용법을 알아야 한다. (1). F6 : 그 다음것 실행해주세요. (2). 그리고나서 그 전 코드 위에 커서를 올리면 실행된 코드의 내용을 알 수 있다.(볼 수 있다.) (3). 그리고나서 F6을 누르면 바로 전 실행 내용을 또 확인할 수가 있다. 누르고나서 전 코드의..

Java 2020.07.04
728x90
반응형
LIST