Java
-
설치된 자바 bit 확인하기개발/Java 2018. 2. 20. 13:44
설치된 자바의 버전도 아니고 bit가 뭔지 확인할 일이 생길 수 있다는 생각을 단 한번도 하지 않았는데부장님이 갑자기 자바의 뭐가 안 맞는다고 뜨는데 어떻게 확인하냐고 물어보셔서 짱짱 당황했다....하지만 역시 구글신은 모든걸 알고 계셔! cmd에 아래 명령어를 치면 된다. 1. 64 비트 확인 명령어 java -d64 -version 2. 32 비트 확인 명령어 java -d32 -version 나는 32비트를 설치했기 때문에 64비트 확인 명령어를 실행하면 Error 메시지가 아래와 같이 뜬다.32비트 확인 명령어를 실행하면 설치된 자바 버전이 함께 뜬다. 끝
-
개념원리 - (3) 자바_선언과 초기화개발/Java 2018. 2. 13. 15:51
처음으로 객체에 관한 수업을 듣고 숙제로 객체를 이용하여 간단한 인사 관리 시스템을 짜는데, 별 짓을 다 해도 내가 만든 사원 객체가 제대로 생성되지 않아서 새벽 늦게까지 끙끙댔다.다음 날 스터디장한테 내가 짠 소스를 보여주며 대체 왜 이게 안되는지 이해를 할 수 없다고 했다.스터디장이 한참을 들여다보더니 "이거 생성이 안됐잖아" 라며 간밤의 내 삽질을 뿌셔뿌셔해줬다. 그때까지 변수 또는 객체의 선언과 초기화, 생성에 대한 개념이 제대로 안 잡힌 상태에서 정신없이 코딩을 하다보니 그런 실수가 나온 것이다.이 포스팅은 그 날의 나에게 헌정하는 글이다. 1. 선언 자바의 정석 1권을 펴보면 본격적으로 개념 강의에 들어가자마자 변수의 선언과 초기화에 대해서 설명한다.변수를 "단 하나의 값을 저장할 수 있는 메..
-
개념원리 - (2) 자바_캡슐화와 다형성개발/Java 2018. 2. 13. 15:04
앞서 자바와 객체지향 언어의 특징을 잠깐 정리했는데,객체지향언어의 특징 중 캡슐화와 다형성이 조금 더 이해하기 어려운 개념이라고 생각해서 추가로 정리한다. 1. 캡슐화 얼마전 판화전을 보러 과천의 현대미술관에 갔다. 어느 작가가 작업에 썼던 동판 역시 작품과 함께 전시되어 있었는데, 이건 작품도 아닌 것이 유리 안에 들어가 있었다.도슨트의 설명으로는 사람들이 동판을 자세히 보기 위해 가까이 가서 숨만 쉬어도 동판이 손상되어서 이렇게 유리를 씌웠다고 했다. 이것도 역시 캡슐화의 일종이다. 동판 객체에 관람객 개체들이 접근하여 함부로 속성을 조작할 수 없도록 유리를 씌운 것이다. 회원 등급별로 접근 가능한 게시판을 다르게 설정하고, 등급이 낮은 회원은 글 읽기만 가능하게 하는 것도 비슷한 예로 볼 수 있다...
-
개념원리 - (1) 자바 & 객체지향_주요 개념과 특징개발/Java 2018. 2. 13. 13:56
지금 와서 돌이켜보니 처음 자바와 함께 객체지향언어를 접했을 때는 혼란 속에서 살았던 것 같다.객체의 선언과 초기화라는 개념도 제대로 안 잡혀 있었고,객체와 클래스, 인스턴스도 정확히 구분하지 못하고 마구잡이로 써댔다. (사실 지금도 조금...)그래서 오늘은 초심으로 돌아갈 겸, 부장님과 이사님이 외근나가신 틈을 타서 아주 기본적인 개념을 정리한다... 학원에서 시험을 볼 때 자바 언어의 특징, 객체지향언어의 특징을 각각 묻는 문제가 있었다.강사님은 채점을 끝낸 시험지를 나눠주며 자바의 특징과 객체지향의 특징을 헷갈려하는 사람들이 왜이렇게 많냐고 핀잔을 주셨다ㅜㅜ 어느 정도 개념에 익숙해진 상태에서야 저 둘을 헷갈린다는게 말도 안된다 싶지만그때는 난생 처음 코딩을 배우면서 '자바 언어 = 객체지향언어' ..
-
Spring + MyBatis + DB = 작은 웹사이트 - (9) CRUD개발/Web Project (1) - Spring MVC + java + DB 2018. 1. 28. 21:01
전체 글 목록을 읽어오는 기능과 페이징 처리 기능을 넣었으니 새로 글쓰기, 상세 데이터 조회, 글 수정, 글 삭제 기능을 구현해서 CRUD 풀셋을 완성할 차례다. 처음 밝혔듯이 원래는 상세 조회, 수정, 삭제, 입력을 모두 하나의 jsp 에서 처리할 수 있게 구현하려고 했으나...구체적인 설계 계획없이 일단 만들기 시작하다가 꼬이면서 수정, 입력을 각각의 별도 화면에서 처리하는 것으로 바꿨다. 1. 글 신규 작성 + CKEditor 삽입 목록 조회 화면에서 글 쓰기 버튼을 클릭하면 loaction.href 를 이용하여 글 작성 화면으로 이동한다 $("#toWrite").click(function(){location.href="/home/note/writeNoteView"; }); //게시물 작성 화면@R..
-
Spring + MyBatis + DB = 작은 웹사이트 - (8) 페이징 처리 로직개발/Web Project (1) - Spring MVC + java + DB 2018. 1. 26. 14:15
처음부터 페이징 처리 로직을 혼자서 짜본 적이 없어서 삽질을 좀 많이 했다.다른 분들 소스도 많이 찾아봤는데 나는 페이징 처리에 필요한 계산은 다 객체 안에 숨겨서 끝내버리고 싶고객체 계산결과에 따른 화면 처리 역시 js에서 함수로 빼서 처리하다보니 이런 결과물이 나왔다.기본 로직은 다른 분들이 공개해두신 소스와 별 차이가 없을 것....이라고 추정...한다... 실제로 사용한 페이징 객체는 아래와 같다. package common.vo; public class PagingVO {private static final int NOTE_PER_PAGE = 10;//페이지 당 게시물 수private static final int BLOCK_PER_PAGE = 5;//화면 당 페이지 블록 수private int..
-
Spring + MyBatis + DB = 작은 웹사이트 - (7) 본격 게시판 만들기 서막개발/Web Project (1) - Spring MVC + java + DB 2018. 1. 17. 22:48
오잉 별것도 안했는데 벌써 7번째 포스팅이라니 이게 무슨 일이오아무튼 이번에는 드디어ㅠㅠ 게시판을 붙여보는 시간이다. 되도록이면 한방에 포스팅을 정리하고 싶어서 페이징 처리까지 끝낸 뒤에 글을 쓰려다보니 조금 시간이 걸렸다.참 신기하게도 분명 내가 예전에 써서 잘 돌아갔던 기능들인데 다시 이 프로젝트를 진행하면서 재활용하려니까 안 먹는 것들이 있다.물론 내가 능력이 부족해서 개발환경 세팅이라던가 뭐 그런데서 실수했겠지 ㅠㅠ 하면서도 짜증나는 이 기분덕분에 실무에서는 하루만에 개발 완료할 것을 엄청나게 질질 끌면서 개발했다 흑흑 1. 게시판용 테이블 생성 먼저 DB가 있어야 게시물을 읽고 쓸테니 DB 생성부터 CREATE TABLE `myhome`.`note` ( `sn` VARCHAR(45) NOT NU..
-
Spring + MyBatis + DB = 작은 웹사이트 - (6) JSTL 활용 & 로그아웃 기능 구현개발/Web Project (1) - Spring MVC + java + DB 2018. 1. 17. 22:19
JSTL을 활용하여 로그인 여부에 따라 로그인 / 로그아웃 버튼이 보이게 만들고또한 로그아웃 버튼을 누르면 로그아웃 처리하는 기능을 추가하는 시간이다. 엄청 간단하다. 1. JSTL로 버튼 구현 컨트롤 앞서 로그인 기능을 구현할 때 로그인에 성공하면 session 에 setAttribute를 써서 객체를 추가했다.객체명은 "admin" 이고, 스트링 타입으로 DB에 저장되어있던 관리자의 이름이 들어갔다. 따라서 이 admin 값이 있을 때 / 없을 때로 구분하여 로그인 버튼이 보이도록 소스를 다시 바꿨다. 아래 접기 태그 안을 보면 안에 과 로 조건을 걸어admin 객체가 세션에 있다면 로그아웃 버튼을, 아니면 로그인 버튼이 출력된다. × HOME ABOUT MAKINGS GUESTS ☰ MENUWelc..