목록전체 글 (389)
만족
기존의 Statement클래스를 이용한 SQL문의 실행은 문자열을 합치고 문자열 데이터의 경우 ' '로 감싸주는 등의 번거로움이 많고 실수를 유발하는 경우가 많기 떄문에 이를 보완한 PreparedStatement클래스를 사용한다. connection.createStatement(); 로 Statement객체를 불러오는 대신 connection.prepareStatement("Insert SQL"); 로 PreparedStatement객체를 불러온다. prepareStatement()의 매개값으로는 SQL문을 넣어주면 된다. ex) insert를 사용하려면 PreparedStatement prestm= connection.prepareStatement("insert into member (c1, c2, ..
설명은 Oracle Database 11g Express Edition으로 한다. .java파일(Servlet)에서 Oracle Database를 이용하는 방법을 알아보자. doPost()나 doGet()중에서 사용하는 Method를 선택하여 다음의 코드를 삽입한다. doPost를 기준으로 설명하면 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stub request.setCharacterEncoding("EUC-KR");//특정 Database와의 연결 정보를 담는 ObjectConnec..
[포워드(Forward)] 지정한 정보를 가지고 다른 페이지로 이동한다. ex) 다음의 코드로 param1과 param2를 가지고 targetPage.jsp로 이동한다. targetPage.jsp에서는 Sended Param1: Sended Param2: 처럼 parameter로 전달했던 정보를 얻어올 수 있다 을 사용하지 않으면 매개변수 없이도 페이지를 이동할 수 있다. 포워드의 경우에는 서버 내부에서 페이지를 이동하기 때문에, 실제로는 targetPage.jsp로 이동했더라도 클라이언트 측 URL은 변하지 않는다. [리디렉션(Redirection)] 포워드와 마찬가지로 페이지를 이동한다. 단, 이동할 때 매개값을 전달하여 이동하고 싶을 경우에는, URL에 데이터를 실어서 전달한다. URL에 데이터가 ..
어떤 데이터를 서버가 아닌 클라이언트에 서버의 명령에 의해서 저장된 것을 쿠키(Cookie)라고 한다.데이터를 클라이언트의 로컬에 저장하여 보안상 문제가 있기 때문에, 요즘에는 잘 사용하지 않는 기술이다. 데이터가 별로 중요하지 않고, 서버의 자원을 절약해야 할 경우에 사용할 수 있는 기법이다. [Make Cookie] 쿠키 객체를 만들고, 쿠키의 유효 기간을 설정한다. 쿠키의 속성이 모두 정의되면 response객체에 쿠키를 추가한다. [Get Cookies]
web page에서 java code를 사용하려면 기본적으로 .html이 아닌 .jsp파일을 이용한다. [Java Code 사용을 Declare] 형식을 따른다. 예를 들어 와 같은 형식으로 한다.jsp파일에는 자바 코드가 드러나지만, 실제로 실행시키면 사용자에겐 html문서 형식으로 보여지며JavaCode는 해당 요소로 변환되어 JavaCode는 보이지 않게 된다. [Variable Print] 단순히 변수의 출력만을 원할 경우에는 와 같은 형식으로 한다.처럼 쓸 수도 있지만 코드가 길어질 염려가 있다. [Import Other Class or Package] 처럼 한다.일반적인 자바의 import [package or class]; 문법과 같다.효력은 이 태그가 사용된 페이지에 한해 import된다...
- cmd에서 sqlplus 사용하기 command: sqlplus UserName/Password관리자 기본 계정으로는 system과 sys가 있다.password는 사전에 설정해 둔 값이다. - 계정 새로 만들기create user UserID identified by Password;semicolon을 찍지 않으면 행이 이어지는 것으로 간주한다 - 권한 부여grant connect, resource to UserID;"UserID"계정에 연결, 자원관리 권한 부여 - sqlplus종료exit - 테이블 생성create table tableName(columName dataType, ...); ex) create table meber( id varchar2(20) primary key, //uniqu..
String a1="ABC";String a2=new String("ABC"); 으로 선언되었다고 가정하자. ==연산자 ==연산자는 두 변수가 서로 같은 Heap영역을 참조하는지를 가리킨다. a1와 a2는 모두 매개값으로 "ABC"를 갖지만, a2는 new 연산자를 사용하여 새로운 인스턴스를 생성하였기 때문에 서로 다른 Heap영역을 참조하게 되고, a1==a2는 false를 반환한다 equals메소드 equals메소드는 매개값이 같은지를 비교한다 그렇기 때문에 a1과 a2가 참조하는 Heap영역이 다르더라도, 매개값이 "ABC"로 같으므로 a1.equals(a2)는 true를 반환한다.
http://stackoverflow.com/questions/7769730/cant-get-eclipse-to-recognize-my-plugin?answertab=active#tab-top solution 1. 껐다 킨다. solution 2. eclipse 3.4 버전 이상이면, plugins폴더가 아닌 dropins폴더에 jar파일을 넣는다. solution 3. 재설치하거나, 가장 최신의 버전으로 설치되어 있다면 버전을 낮추어 재설치. solution 4. Window-> Preference-> Plug-in Development-> Target Platform -> edit 에서 플러그인이 들어있는 폴더의 경로를 추가 저같은경우엔 sol 3으로 해결했는데 위 두 가지 방법으로 안된다면, 정확한..
File f=new File("C:\\Users\\Windows10.DESKTOP-UE9LE7G\\Desktop\\eeee.set"); 해당 코드는, 윈도우즈 10 바탕화면의 eeee.set이라는 파일을 대상으로 File객체를 만든 것이다. eeee.set이라는 파일은 아직 존재하지 않으므로 System.out.println(f.exists()); 은 false를 반환한다. 그런데, ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream(f)); 이 코드를 사용하여, 존재하지 않는 파일을 대상으로 출력 스트림을 형성한다. 그러면, 출력 스트림이 생성되자 마자 바탕화면에는 eeee.set이라는 파일이 만들어진다. 따라서, System.out...
파일 입출력의 원리 자바에서는 '스트림'이라는 일종의 징검다리를 이용하여 파일과 자바 프로그램을 연결할 수 있다. 이 스트림으로 연결되어 있다면, 자바에서 파일의 내용을 읽어올 수 있고, 파일에 데이터를 내보낼 수도 있다. 자바만의 I/O모델을 기반으로, 어떤 형태의 데이터든지 같은 형태로 입출력이 가능하다. InputStream 클래스 입력(파일에서 읽어오기)에 사용되는 스트림 클래스이다. 데이터를 1byte단위로 읽어온다. java.io 패키지에 속해 있다. InputStream은 abstract클래스이기 때문에 직접 객체화가 불가능한데, InputStream을 상속하는 클래스를 사용하거나 재정의해야 한다.ex) InputStream input=new FileInputStream("ex.txt");..
과거에 과제로 만들었던 POS System 코드입니다. Ubuntu 환경에서 컴파일했으며 컴파일 옵션은 gcc -std=c99 -pthread pos.c 입니다. pthread방식을 사용하여 timeSystem을 구현하였습니다.
다양한 언어나 컴퓨터 관련 지식을 공부하면서, "콜백"이라는 단어는 많이 보았으나 그것의 정확한 의미를 설명해주는 책은 없었던 것 같다. 어쩌면 컴퓨터공학에서는 너무도 당연한 것이라서 그런 것일지도 모르지만... 이 함수는 콜백함수이다, 이것은 콜백 방식으로...등의 방식으로 자주 등장하는데, 딱히 그 단어의 의미에 대해 모르더라도 그냥 넘어가는 경우가 부지기수였으나 이번 기회에 정확한 뜻을 알아보았다. Callback 함수란 도대체 무엇인가? StackOverflow의 한 이용자의 답변을 인용하겠다. A callback function is a function which is: passed as an argument to another function, and, is invoked after some ..
http://jusungpark.tistory.com/38 책보고는 무슨소린지 몇시간동안 이해 못했는데 자세하게 잘 써주셨습니다. 길더라도 한번 읽어보시면 좋을 것 같습니다.
https://developer.android.com/guide/topics/ui/dialogs.html?hl=ko#FullscreenDialog Dialog는 액티비티를 띄우는 것 처럼 화면 전체를 차지하여 내용을 표시하는 것이 아닌 작은 대화상자 모양을 이용하여 사용자에게 내용을 표시할 수 있게 해줍니다. AlertDialog클래스를 직접 이용하여 만들 수도 있지만API에서는 AlertDialog.Builder 클래스를 이용하여 만드는 것을 권장합니다. AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setMessage("표시할 메시지") .setPositiveButton("긍정 버튼에 표시될 텍스트", new..
For hiding keyboard: InputMethodManager imm = (InputMethodManager)getActivity().getSystemService( Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0);For Showing keyboard: InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
여러 개의 뷰들을 뷰 플리퍼에 포함시켜 뷰 플리퍼 내에 들어있는 여러가지 뷰 들중 하나의 뷰를 선택하여 보여줄 수 있게 한다. ViewFlipper태그를 xml에 추가하고, 해당 태그 내부에 뷰 플리퍼에 속하게 할 뷰들을 추가한다. 그리고 나서 JAVA에서 findViewById로 flipper를 찾는다. 추가한 뷰는 첫번째 뷰부터 시작해서, showNext() //다음 뷰 보여주기showPrevious() //이전 뷰 보여주기setDisplayedChild(int whichChild) //원하는 인덱스의 뷰 보여주기 를 이용하여 보여줄 뷰를 전환할 수 있다. 예를 들어서 xml코드가 이렇게 되어 있고 JAVA코드가 이렇게 되어 있다면 package com.example.windows10.exflippe..
invisible은 단순히 화면에만 보이지 않게 한다. 따라서, 보이지 않더라도 해당 뷰는 자리를 차지하게 된다. gone은 아예 액티비티에 그려지지 않게 된다. 따라서, 자리도 차지하지 않는다.
뷰나 레이아웃이 움직이거나, 투명도가 바뀌는 등의 행동을 애니메이션으로 표현하는 방법. res폴더에 anim폴더를 새로 만들고, xml파일을 하나 만든다. set태그 안에 translate, alpha, rotate 등의 태그를 포함하는 형태이다. 위의 xml은 X좌표값이 100%p이고 알파값이 0.5부터 시작해서 X좌표값이 0%p이고 알파값이 1.0으로 1초동안 변화한다. 이제 이 xml을 뷰에 적용하려면, JAVA코드로 넘어간다. Animation toLeft;처럼 Animation 객체를 생성하고 toLeft= AnimationUtils.loadAnimation(this, R.anim.animation_toleft);처럼 AnimationUtils.loadAnimation 메소드를 이용하여 해당 애..
getActionBar().setDisplayShowTitleEnabled(false);을 사용하거나 getActionBar()가 NullPointerException을 발생시킨다면 getSupportActionBar().setDisplayShowTitleEnabled(false); getSupportActionBar().hide();을 대신 사용한다. 또는 코드 대신 Style을 변경하는 방법도 있다. value/style.xml로 들어가서 를 처럼 바꾸면 된다.(parent의 속성값을 ...DarkActionBar에서 ...NoActionBar로 바꾼다.) 참조: https://stackoverflow.com/questions/7655874/how-do-you-remove-the-title-text-..
때때로 우리는 뷰의 상태에 따라서, 뷰의 속성값을 바꾸어 줄 필요가 있다. 예를 들어서, EditText태그가 클릭 되었을 때, 배경을 바꾸어주는 등의 행동을 통하여, 그 태그의 상태를 표시하는데 도움을 줄 수 있다. Selector Tag xml에서 사용되는 태그의 하나이다. Selector Tag는 하나 이상의 item 태그를 사용하며, 이 item태그의 속성에 해당 뷰의 상태를 명시함으로써어떤 상태일 때, 어떤 동작을 할 지 결정할 수 있게 된다. 예시) 해당 태그가 포커스를 가질 때는 Primary(푸른색 계열)로, 가지지 못했을 때에는 Accent(분홍색 계열)로 상태에 따라서 속성값을 바꾸어 줄 수 있다. 이제 이 xml파일을 어떤 태그의 background속성으로 설정해준다면, focusin..
