우선 넷빈즈를 깔면 PHP관련 개발툴이 설치가 되는데요(다운로드 시 PHP가 포함된 설치파일을 받을 시^^).
하지만, php를 돌리기위한 Apache나 PHP, 디버거는 직접 셋팅을 해줘야합니다.
각 사이트에서 최신버전 받으시면 됩니다.
Apache HTTP Server는 웹서버, PHP5는 php, XDEBUG는 PHP디버그해주는 모듈 같습니다^^




Apache HTTP Server - http://httpd.apache.org/download.cgi
PHP5 Engine - http://kr.php.net/downloads.php
XDEBUG - http://www.xdebug.org/download.php

저는 각각 apache_2.2.11-win32-x86-no_ssl.msi, php-5.2.9-1-win32-installer.msi, php_xdebug-2.0.4-5.2.8.dll을 받았습니다.

apache를 설치해봅시다.
Server Infomation을 물어보는데, localhost라고 쓰면 되는 듯 합니다-_-(잘 모르겠네-_-)
그냥 다음신공으로 설치했습니다-_-;
http://localhost/ 하니까 It Works!가 뜨네요.

php를 설치해봅시다.
설치파일 실행하면 Web Server Setup을 물어보는군요. Apache 2.2.x니까 그거 선택하면 됩니다.
아파치 디렉토리 선택하라고 나오는데, 디폴트 설치 시
C:\Program Files\Apache Software Foundation\Apache2.2\여기에 있습니다.
그 다음에서 고생한게-_-; 여기서 Extensions에서 MySQL추가 안하면....MySQLdb연동이 안됩니다-_-; 젠장 나만 몰랐었나. 저는 디비연동php스크립트 코드가 왜 안먹히지 그러고 있었는데, 저거 설치안해줘서 그렇더군요 ㅠ
MySQL이랑 MySQLi는 뭐가 틀린거지-_-; 암튼, 둘다 설치했습니다-_-; 찜찜하면 그냥 풀설치로....-_-;

※php설치 후에 apache를 재시작해야합니다.

XDEBUG를 설치해봅시다.
해당 dll파일을 C:\Program Files/PHP/에 복사를 합니다.
그리고, php.ini파일을 열어서 맨아래에 추가합니다.
zend_extension_ts="C:/Program Files/PHP/php_xdebug-2.0.4-5.2.8.dll"
xdebug.remote_enable=1


셋팅이 완료되었어요. 넷빈즈를 실행해봅시다.

New Project -> PHP -> PHP Application -> Project Name은 Hello Php-_-; -> Run As에서 Local Web Site도 있고, Remote Web Site가 있는 걸보니, 웹에다가 올려놓고, 디버깅도 되나봅니다. 암튼, local에서 할꺼니까 Local Web Site로 선택하고, Finish를 클릭합니다.
index.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
echo "Hello PHP";
phpinfo();
?>
</body>
</html>

사용자 삽입 이미지
디버깅도 되는데, 디버깅도 해봅시다.
코드를 이렇게 고치고-_-;
<?php
$hello = "mudchobo";
echo $hello;
$hello = " shit";
echo $hello;
?>

$hello = "mudchobo"부분에 ctrl + F8 또는 라인맨앞에 마우스클릭으로 Break Point를 잡습니다.
디버깅은 페이지단위로 되는 듯합니다. 디버깅은 Ctrl + Shift + F5를 입력하거나 마우스로 파일에 오른쪽버튼 눌러서 디버깅을 할 수 있습니다.
그러면 Server side PHP만 할것인지, Server side와 Client Javascript디버깅을 동시에 할건지 물어봅니다. 넷빈즈는 정말 만능인 것 같습니다. Javascript디버거도 매우 만족 스러운 수준이거든요. 좋아요~
우선 Server side만 할꺼니까 그거 선택하고, Debug버튼 누르면 디버깅이 시작됩니다.
사용자 삽입 이미지
이렇게 브레이크포인트 부분에서 멈춥니다. 아래에서 변수값을 확인할 수 있어요.
사용자 삽입 이미지
근데, 좀 이상한게-_-; Value를 클릭하기 전에는 값을 확인할 수 없어요-_-; 왜 그럴까요....
암튼, 저렇게 변수값이 보이게 됩니다.

작년에 선테크데이에서 넷빈즈행사에서 말했는데, 6.5에서 가장 크게 향상된 기능은 PHP라고 하더라구요. 다른 PHP용 IDE는 안써봤지만, 넷빈즈의 PHP는 정말 강력한 것 같아요. 코드힌트도 너무 잘나오고, 디버깅도 쉽게 할 수 있고-_-; 뭐 그렇다구요 ^^

머드초보 이 작성.

당신의 의견을 작성해 주세요.

  1. Comment RSS : http://mudchobo.tomeii.com/tt/rss/comment/395
  2. 비밀방문자 2009/07/30 12:21  편집/삭제  댓글 작성  댓글 주소

    관리자만 볼 수 있는 댓글입니다.

[로그인][오픈아이디란?]
http://appengine.google.com/start 에 접속하면 로그인을 하라고 나옵니다. 구글계정으로 로그인 하고나면 Create an Application버튼과 왤컴한다는 내용이 있을겁니다.
사용자 삽입 이미지
전 여기서 좀 고생을 했는데요-_-; SMS인증을 받아야하거든요. 국내통신사도 지원한다고 했는데, 전 안되는 것이였습니다. 결론은 전화번호를 잘못 입력해서......-_-;
Create an Application을 클릭하면 아래와 같은 화면이 나옵니다.
사용자 삽입 이미지
Country는 당연히 우리나라는 없더군요. Mobile Number에서 저는 +82 010 0000 0000이라고 입력하니....안되더군요-_-; 바보같이-_- 010에서 0을 빼야합니다ㅠ +82 10 0000 0000 라고 하니 되더군요 ㅠ 하루고생했습니다ㅠ

보내고 나면 애플리케이션을 만들 수 있는데요. 우선 Application Identifier:에유니크한 이름을 적습니다. 여기서좀 이상한 점이......분명 available이라고 해놓고, 등록하려고 하면 이미 사용하고 있다고 나오는 경우가 있더라구요. sosiage라고 등록하려고 하니 그렇더라구요-_-; 이 app id는 한번 등록하면 바꿀 수 없구요. 총 10개의 애플리케이션을 만들 수 있습니다. 더 쓰고 싶으면 돈내라 이건가.....

애플리케이션을 생성했으면 이제 개발툴을 설치해야합니다.
http://code.google.com/intl/ko-KR/appengine/downloads.html 이곳에 가면 다운로드할 수 있는데, 분명 저번 세미나에서 보여줬던 관리툴같은 게 있었던 것 같은데, Mac OSX용만 있나봅니다 ㅠ
아.....이걸 설치하기전에 파이썬부터 설치해야합니다.

http://www.python.org/download/
안정적인 버전이 2개가 있는데, 2.6.1과 3.0.1이 있네요.
3.0.1을 설치하면 안됩니다-_-;
2.6.1버전을 설치해야합니다. 설치는 그냥 다음신공으로 설치할 수 있어요. 쉬워요!

그 다음 개발툴을 설치하면 됩니다.
그리고 난 다음에 데모를 실행해서 잘 되는지 확인해보면 됩니다.
시작 -> 실행 -> cmd를 열고......디폴트로 설치했다면 이곳에 데모가 있을 겁니다.
cd C:\Program Files\Google\google_appengine\demos
dev_appserver.py guestbook/
이렇게 실행하면
INFO     2009-03-01 05:08:50,332 dev_appserver_main.py] Running application guestbook on port 8080: http://localhost:8080
웹브라우저에서 http://localhost:8080을 입력하면 초간단 방명록이 실행되고 있을겁니다-_-;

PS. python이라는 언어가 참 간결하고 좋긴한데, 전.....개인적으로 다른 언어도 지원했으면 좋겠네요-_-;

머드초보 이 작성.

당신의 의견을 작성해 주세요.

  1. Comment RSS : http://mudchobo.tomeii.com/tt/rss/comment/390
  2. 저기 물어볼게잇는데요 2009/09/23 18:28  편집/삭제  댓글 작성  댓글 주소

    구글 엔진 할때 핸드폰인증받는데

    인증받을수없다고하는데 제가 탈퇴햇다가 다시가입햇거든요

    어떻게안되나요?

[로그인][오픈아이디란?]
오....간만에 초간단 시리즈-_-;
그냥 넷빈즈6.5가 새로 나와서 Hibernate도 공부해볼 겸 해서 삽질을 좀 해봤습니다. Hibernate를 공부하고 있는데, 왜이렇게 어렵죠ㅠ 아직도 잘 모르겠습니다. 좋은 자료가 있으시면 댓글로 좀 알려주세요 ㅠ(굽신굽신 ㅠ)

넷빈즈6.5 JDK6U10환경에서 해봤습니다.

File New Project -> Java -> Java Application 선택.
Project Name은 WondergirlsHibernate로 하고 Finish!(원더걸스를 예제로 해야 접근성이 좋은..-_-)

Mysql에다가 DB를 만들어봅시다.
첫번째 테이블은 wondergirls에 대한 정보를 나타냅니다. 이름과 나이가 있습니다.
CREATE TABLE  `wondergirls`.`wondergirls` (
`idx` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(45) DEFAULT NULL,
`age` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`idx`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

INSERT INTO `wondergirls` (`idx`,`name`,`age`) VALUES
(1,'선예',20),
(2,'선미',20),
(3,'소희',17),
(4,'예은',17),
(5,'유빈',21);

두번째 테이블은 과목점수를 나타냅니다. widx 칼럼이 wondergirls테이블의 idx와 FK로 연결되었습니다.
CREATE TABLE  `wondergirls`.`score` (
`idx` int(10) unsigned NOT NULL AUTO_INCREMENT,
`widx` int(10) unsigned NOT NULL,
`korean` int(10) unsigned DEFAULT NULL,
`math` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`idx`),
KEY `FK_score_1` (`widx`),
CONSTRAINT `FK_score_1` FOREIGN KEY (`widx`) REFERENCES `wondergirls` (`idx`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

INSERT INTO `score` (`idx`,`widx`,`korean`,`math`) VALUES
(1,1,100,100),
(2,2,90,90),
(3,3,80,80),
(4,4,70,70),
(5,5,60,60);

넷빈즈에 Mysql을 추가를 안하셨다면 추가를 하셔야합니다.
왼쪽에서 Projects탭 말고,  Services탭을 클릭합니다. Register Mysql를 클릭해서 정보를 입력하여 추가합니다. connect했을 때 db가 보인다면 추가가 잘 된 것입니다. start나 stop도 이곳에서 관리하려면 추가로 입력하시면 되는데, 입력안하고, 외부에서 실행하고 종료해도 상관 없더군요.

그러면 다시 Projects탭으로 돌아와서.....프로젝트이름에 대고, 오른쪽버튼 -> New -> Hibernate -> Hibernate Configuration File선택 -> Name and Location에서는 그냥 Next -> Database Connection은 방금 추가한 테이블이 있는 Mysql의 db를 선택합니다. Finish를 누르면 각종 설정화면이 나옵니다.
여기서 Optional Properties -> Configuration Properties에 add하고, hibernate.show_sql을 true로 설정한 것을 추가합니다. 이제 XML로 보면 이렇게 보일겁니다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/wondergirls</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">mudchobo</property>
<property name="hibernate.show_sql">true</property>
</session-factory>
</hibernate-configuration>

설정하기 편하게 되어있군요. 다 뭐하는 건지는 하나씩 해봐야 알 것 같아요 ㅠ 우선은 sql쿼리만 볼 수 있도록 하고-_-;

이제 HibernateUtil을 추가합니다. 설정파일을 통해 session을 가져오는 유틸인 듯 합니다.
Ctrl + N -> Hibernate -> HibernateUtil.java 선택.
Class Name은 New를 뺀 HibernateUtil, Package는 wondergirlshibernate.util로 합시다. Finish를 누르면 자동으로 생성됩니다.

이제 매핑파일을 가져옵시다.
Ctrl + N -> Hibernate -> Hibernate Mapping Files and POJOs from Database 선택.
Name and Location에서는 그냥 Next.
hibernate.cfg.xml이 자동으로 선택이 되는데, 거기에 방금 생성한 테이블이 있을 겁니다.
사용자 삽입 이미지
score를 추가하면 wondergirls는 따라옵니다. 서로 연결이 되어있어서 필요합니다. Next한다음에 Package에 wondergirlshibernate.entity로 하고 Finish를 클릭합니다.

이제 entity도 만들어졌으니, HQL을 테스트해볼 수 있습니다.
Source Packages -> default package -> hibernate.cfg.xml에 오른쪽버튼 클릭 후 Run HQL Query를 클릭하면 쿼리를 날릴 수 있습니다. 아래와 같이 날려봅시다.
from Score

사용자 삽입 이미지
이렇게 결과를 볼 수 있습니다.
별 것도 없는데 글이 길어 지네-_-; 다음 글에-_-;

[NetBeans] 넷빈즈를 이용한 Hibernate 초간단 예제2 - 데이터가져오기.


참조글 : http://www.netbeans.org/kb/docs/java/hibernate-java-se.html
머드초보 이 작성.

당신의 의견을 작성해 주세요.

[로그인][오픈아이디란?]
« Prev : 1 : 2 : 3 : 4 : Next »