태블릿으로 ppsspp 에뮬레이터 돌리는 맛이 쏠쏠 했는데...
한글이 안나와서 방법을 찾다가 두가지 포스트를 합치니 된다...

PSP 폴더내에 다운받은 압축파일을 풀면된다.
ex)


https://1drv.ms/u/s!AhFeVmJNq43uwt0BUmlOf1rMIeMPiA

원드라이브 공유
Posted by 철냄비짱
,

아파치 설정하기

아파치는 맥에 포함되어 있지만, 기본적으로 활성화 되어 있지 않다.

활성화 하는 방법은 시스템 환경설정 - 공유 에서 "웹 공유" 를 체크하면 된다. 그런데 본인꺼 (Mountain Lion)에는 보이지 않는다. 그렇다면 터미널을 이용하면 된다. 아니.. 처음부터 터미널만 이용하면 될 것 같다.

1. 아파치 활성화

  • 터미널에서 sudo apachectl start
  • 브라우저에서 http://localhost/ 를 열어서, It works! 라는 글이 나오면 성공.
  • 기본 로컬호스트는 사용자 폴더의 Sites 폴더를 가르킨다. 간혹, /Library/WebServer/Documents 로 되어있는 경우도 있다. 이는 아파치 설정파일을 보면 된다능. 만약 그런 경우 사용자 폴더의 Sites 로 루트를 변경하고 싶다면, httpd.conf (/etc/apache2/)파일을 열어 2군데를 수정한다. 아래 예시처럼 DocumentRoot 라는 부분과 그 살짝 아래 부분에 경로를 바꿔준다.





2. 가상호스트 이름 추가하기

  • cd / 로 가장 상위 폴더로 이동
  • sudo nano /etc/hosts 로 호스트 파일을 연다.
  • 원하는 도메인을 새로운 행에 추가한다. 예) 127.0.0.1  test.local

3. 가상 호스트에 해당하는 폴더 만들기

아래와 같이 가상호스트의 홈으로 지정하려는 폴더를 만들거나 기존 폴더를 활용한다. 여기서는 Sites 폴더 아래 새로운 폴더를 만든다. 그리고 index.html 파일을 만든다.

cd ~/Sites 

mkdir test.local 

cd test.local 

echo "this is test.local" > index.html



4. 가상 호스트 설정 만들기

  • 위에서 만든 폴더로 가상 도메인이 설정되도록 해야 한다. /etc/apache2/users/ 폴더에 자신의 계정과 같은 파일이 존재해야 한다.
  • sudo nano /etc/apache2/users/brownsoo.conf 를 치면 아래 내용이 기본으로 있다.(없다면 그냥 만든다. brownsoo 는 내 계정이름이다)
<Directory "/Users/username/Sites/">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>


  • 아래와 같이 내용을 수정한다.
NameVirtualHost *:80

<Directory "/Users/brownsoo/Sites/">
    Options Indexes MultiViews Includes
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost *:80>
    ServerName test.local
    DocumentRoot /Users/brownsoo/Sites/test.local
</VirtualHost>


  • 저장한 다음. 아파치를 재시작한다.

sudo apachectl graceful 



업데이트 사항

10.9 Mavericks 부터 가상호스트 설정을 별도 파일로 관리하는 것으로 바뀐듯 하다. 여기를 참고하기 바란다. 요약하자면,,
  • 아파치 설정파일을 열어 아래 주석을 풀어준다.
  • Include /private/etc/apache2/extra/httpd-vhosts.conf
  • 가상호스트 설정 파일 (/etc/apache2/extra/httpd-vhosts.conf)을 열어 아래 내용처럼 추가한다.
<VirtualHost *:80>
    ServerName test.local
    DocumentRoot "/Users/brownsoo/Sites/test.local"

    <Directory "/Users/brownsoo/Sites/test.local">
        Options Indexes MultiViews Includes
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>


5. http://test.local/ 를 브라우저로 확인한다.

* 이제 필요한 만큼 사이트를 추가해서 사용하면 된다능~





PHP 활성화 하기

1. php 활성화를 위해 아파치 설정파일을 연다. sudo nano /etc/apache2/httpd.conf

2. LoadModule php5_module이란 글로 시작하는 부분을 찾아서 # 을 제거해준다.

3. 아파치를 재시작한다.

4. 테스트 php 파일을 작성해서 테스트 해보자.

cd ~/Sites/test.local 

echo "<?php phpinfo(); ?>" > index.php



맥에 PHP 까지 기본으로 있다니, 정말 좋다. 그리고 SSI 도 있다니, 위 사이트를 참고하기 바란다. 우홋!

참고 : http://www.studiotips.net/docs/tips_sql/mysql/phpmyadmin.html



SSI 설정하기

SSI 를 활성화 시켜야 일반적인 웹사이트를 볼 수 있더라구요. 결과적으로 아래 방법까지 해놔야 플래시 임베딩도 잘되고,, 스크립트도 잘 돌아간다.

아파치 설정파일 /etc/apache2/httpd.conf 을 열어서 mime_module 부근에 있는 아래 문장을 주석해제한다.

#AddType text/html .shtml 

#AddOutputFilter INCLUDES .shtml
 


그리고 사용자 설정파일 (/etc/apache2/users/brownsoo.conf) 을 열어서 아래처럼 내용 추가한다.

NameVirtualHost *:80


    Options Indexes MultiViews Includes
    AllowOverride All
    Order allow,deny
    Allow from all

    AddType text/html .shtml .html
    AddOutputFilter INCLUDES .shtml .html

    AddType application/x-httpd-php .html



    ServerName test.local
    DocumentRoot /Users/username/Sites/test.local



* Mavericks 이후 버전이라면, 설정파일(/etc/apache2/extra/httpd-vhosts.conf)에서 이렇게 되겠다.
<VirtualHost *:80>
    ServerName test.local
    DocumentRoot "/Users/brownsoo/Sites/test.local"

    <Directory "/Users/brownsoo/Sites/test.local">
        Options Indexes MultiViews Includes
        AllowOverride All
        Order allow,deny
        Allow from all

        AddType text/html .shtml .html
        AddOutputFilter INCLUDES .shtml .html

        AddType application/x-httpd-php .html
    </Directory>
</VirtualHost>




서브 디렉토리 접근하기

제로보드를 설치해보려고 압축을 풀었는데, 접근이 제한되어 있어서 안된다능.. 터미널에서 접근권한을 설정하는 방법을 검색해보고 해봤지만 여전히 안 되었다. 해결 방법은 FollowSymLinks 를 추가해야 했다. 사용자 설정 파일을 열어서 Directory 태그 안에 추가하자.

Options Indexes MultiViews FollowSymLinks 




요세미티 버전이상이라면, 이것도 추가한다.

Require all granted 




아래 사이트들에 자세히 설명되어 있다.

http://www.456bereastreet.com/archive/201104/apache_with_virtual_hosts_php_and_ssi_on_mac_os_x_106/

Add custom hostname to Apache on OSX 10.9 Mavericks




Posted by 철냄비짱
,

For some reason mysql on OS X gets the locations of the required socket file a bit wrong, but thankfully the solution is as simple as setting up a symbolic link.

You may have a socket (appearing as a zero length file) as /tmp/mysql.sock or /var/mysql/mysql.sock but 1 or more apps is looking in the other location for it.

Rather than move the socket and have to edit config files and remember to keep edited files local and away from servers where the paths are correct, simply create a symbolic link so your mac finds the required socket, even when it's looking in the wrong place!

If you have /tmp/mysql.sock but no /var/mysql/mysql.sock then...

cd /var 
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock

If you have /var/mysql/mysql.sock but no /tmp/mysql.sock then

cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

You will need permissions to create the directory and link, so just prefix the commands above with sudo if necessary.

Hope this helps. It has sorted this exact issue for me on 3 macs so far.



Posted by 철냄비짱
,

실황 파워풀 프로야구

 

 

가면라이더 배틀라이드 워 창생

 

 

스타오션2 세컨드 에볼루션

 

성검전설 1편 확정  2&3 예정

 

거영도시

 

기동전사 건담 익스트림 버서스 포스


오딘 스피어: 레이브스라시르

 

사가 스칼렛 그레이스

 

진삼국무쌍7 엠파이어

 

소드 아트 온라인 신작

 

갓 이터 리저렉션

 

 

진격의 거인

 

토귀전2

 

산제물과 눈의 세츠나

 

드래곤 퀘스트 빌더즈

 

드래곤 퀘스트 히어로즈2

 

월드 오브 파이널 판타지

 

 

13기병방위권

 

단간론파3

 

슈타인즈 게이트 0

 

도쿄 제나두

 

이스 신작

 

 

영웅전설 천공의 궤적 SC Evolution

 

 

 

DOAX3

 

 

디지몬 월드 -next 0rder-

 

원피스 버닝 블러드

 

칭송받는 자 ~거짓의 가면~

 

 

크리미널 걸즈 2

 

밤이 없는 나라

 

요마와리

 

하츠네 미쿠 -Project DIVA- X

 

서몬 나이트 6

 

초차원대전 넵튠 VS 세가 하드 걸즈

 

격차원태그 블랑+넵튠 VS 좀비군단

 

 

이그지스트 아카이브

 

소피의 아틀리에

 

노부나가의 야망・천상기 PK HD Version

 

 

그란킹덤

 

 

마이티 넘버 나인

 

블러드스테인

 

한계돌파 모에로 크리스탈

 

도쿄구울 JAIL

 

조디악

 

Assassin's Creed: Chronicles Pack

차이나,러시아, 인도 합본


출처 : 루리웹


PS.VITA가 부활하고 있어!!

 

Posted by 철냄비짱
,

http://yshmac.tistory.com/4

 

(1) 프로젝트 구조


(2) Mybatis와 Database 설정 파일

db.properties

- 데이터베이스에 대한 정보

 driver=org.mariadb.jdbc.Driver
 url=jdbc:mariadb://localhost:3306/chat
 username=root
 password=비밀번호

mybatis-config.xml

마이바티스 설정 정보

(2) Mapper

select, insert, update, delete에 대한 쿼리

(3) VO, DAO

MemberVO.java

package com.ysh.vo;

public class MemberVO {
	
	public String email;
	public String password;
	public String name;
	
	public MemberVO() {
		super();
	}

	public MemberVO(String email, String password, String name) {
		super();
		this.email = email;
		this.password = password;
		this.name = name;
	}
	
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
	
}

MemberDAO.java

package com.ysh.dao;

import java.util.List;

import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;

import com.ysh.vo.MemberVO;

public class MemberDAO {

	private SqlSessionFactory sqlSessionFactory = null;

	public MemberDAO(SqlSessionFactory sqlSessionFactory) {
		this.sqlSessionFactory = sqlSessionFactory;
	}
	
	public int insertMember(MemberVO memberVO) {
		int id = -1;
		SqlSession session = sqlSessionFactory.openSession();
		
		try {
			id = session.insert("member.insert", memberVO);
		} finally {
			session.commit();
			session.close();
		}
		System.out.println("insert("+memberVO+") --> "+memberVO.getEmail());
		System.out.println(memberVO.getName());
		return id;
	}
	
	public List selectAll() {
		List list = null;
		SqlSession session = sqlSessionFactory.openSession();
		
		try {
			list = session.selectList("member.selectAll");
		} finally {
			session.close();
		}
		System.out.println(list);
		return list;
	}
	
	public MemberVO selectOne(String email) {
		MemberVO member = null;
		SqlSession session = sqlSessionFactory.openSession();
		
		try {
			member = session.selectOne("member.selectOne", email);
		} finally {
			session.close();
		}
		System.out.println("select" + member.getEmail());
		return member;
	}
	
	public void update(MemberVO memberVO) {
		
		int id = -1;
		SqlSession session = sqlSessionFactory.openSession();
		
		try {
			id = session.update("member.update", memberVO);
		} 
		finally {
			session.commit();
			session.close();
		}
	}
	
	public void delete(String email) {
		SqlSession session = sqlSessionFactory.openSession();
		
		try {
			session.delete("member.delete", email);
		} 
		finally {
			session.commit();
			session.close();
		}
	}

}

(4) ConnectionFactory

ConnectionFactory.java

package com.ysh.config;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.Reader;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class ConnectionFactory {
	
	private static SqlSessionFactory sqlSessionFactory;
	
	static {
		try {
			String resource = "com/ysh/config/mybatis-config.xml";
			Reader reader = Resources.getResourceAsReader(resource);
			
			if (sqlSessionFactory == null) {
				sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
			}
		} catch(FileNotFoundException fileNotFoundException) {
			fileNotFoundException.printStackTrace();
		} catch(IOException ioException) {
			ioException.printStackTrace();
		}
	}
	public static SqlSessionFactory getSqlSessionFactory() {
		return sqlSessionFactory;
	}
}




http://yshmac.tistory.com/4

Posted by 철냄비짱
,

header( "Content-type: application/vnd.ms-excel" );  
header( "Content-type: application/vnd.ms-excel; charset=utf-8"); 
header( "Content-Disposition: attachment; filename = invoice.xls" );  
header( "Content-Description: PHP4 Generated Data" );  
 
$sql = "select * from tblName order by reg_date desc"; 
$result = mysql_query($sql); 
 
// 테이블 상단 만들기 
$EXCEL_STR = " 
<table border='1'> 
<tr> 
   <td>번호</td> 
   <td>코드</td> 
   <td>내용</td> 
</tr>"; 
 
while($row = mysql_fetch_array($result)) { 
   $EXCEL_STR .= " 
   <tr> 
       <td>".$row['idx']."</td> 
       <td>".$row['code']."</td> 
       <td>".$row['contents']."</td> 
   </tr> 
   "; 

 
$EXCEL_STR .= "</table>"; 
 
echo "<meta content=\"application/vnd.ms-excel; charset=UTF-8\" name=\"Content-type\"> "; 
echo $EXCEL_STR; 
?> 

 

출처 : http://ezcode.tistory.com/75

Posted by 철냄비짱
,

 오랜만에 PHP 작업을 하는데 함수도 기억안나고 해서 어려움이 많다.

 

그래도 PHP가 에러 메세지가 너무 친절해서 큰 어려움은 없었는데...

 

CAFE24에서 작업하면 에러메세지가 안난다....

 

이 문제가 너무 힘들어서 찾아서 해결한 내용...

 

호스팅 root 폴더에 존재하는 .htaccess

 

하단 내용을 추가하면 해결 됨.

 

 

php_value error_reporting 22527
php_flag display_errors on

 

이 경우 NOTICE 문장도 같이 표출되는데 개발할 때는 NOTICE는 무시하면 됨.

Posted by 철냄비짱
,

Get url in asp.net

string url = HttpContext.Current.Request.Url.AbsoluteUri;
// http://localhost:1302/TESTERS/Default6.aspx

string path = HttpContext.Current.Request.Url.AbsolutePath;
// /TESTERS/Default6.aspx

string host = HttpContext.Current.Request.Url.Host;
// localhost

string url = Request.Url.Host;
Posted by 철냄비짱
,

Spring quartz 사용시 cronExpression 입니다.

월~금요일만 실행하고 싶어서 day-of-week 옵션을 설정했지만
day-of-week 를 잘못설정하면  이런 오류가 나더군요.
Support for specifying both a day-of-week AND a day-of-month parameter is not implemented.
변경전 : 0 0 20 * * MON-FRI
변경후 : 0 0 20 ? * MON-FRI



아래는 기본 설정방법입니다.


초 0-59 , - * /
분 0-59 , - * /
시 0-23 , - * /
일 1-31 , - * ? / L W
월 1-12 or JAN-DEC , - * /
요일 1-7 or SUN-SAT , - * ? / L #
년(옵션) 1970-2099 , - * /

* 모든 값
? 특정 값 없음
- 범위 지정에 사용
, 여러 값 지정 구분에 사용
/ 초기값과 증가치 설정에 사용
L 지정할 수 있는 범위의 마지막 값
W 월~금요일 또는 가장 가까운 월/금요일
# 몇 번째 무슨 요일 2#1 => 첫 번째 월요일

예제)
Expression Meaning
초분시일월주(년)
"0 0 12 * * ?" 아무 요일, 매월, 매일 12:00:00
"0 15 10 ? * *" 모든 요일, 매월, 아무 날이나 10:15:00
"0 15 10 * * ?" 아무 요일, 매월, 매일 10:15:00
"0 15 10 * * ? *" 모든 연도, 아무 요일, 매월, 매일 10:15
"0 15 10 * * ? 2005" 2005년 아무 요일이나 매월, 매일 10:15
"0 * 14 * * ?" 아무 요일, 매월, 매일, 14시 매분 0초
"0 0/5 14 * * ?" 아무 요일, 매월, 매일, 14시 매 5분마다 0초
"0 0/5 14,18 * * ?" 아무 요일, 매월, 매일, 14시, 18시 매 5분마다 0초
"0 0-5 14 * * ?" 아무 요일, 매월, 매일, 14:00 부터 매 14:05까지 매 분 0초
"0 10,44 14 ? 3 WED" 3월의 매 주 수요일, 아무 날짜나 14:10:00, 14:44:00
"0 15 10 ? * MON-FRI" 월~금, 매월, 아무 날이나 10:15:00
"0 15 10 15 * ?" 아무 요일, 매월 15일 10:15:00
"0 15 10 L * ?" 아무 요일, 매월 마지막 날 10:15:00
"0 15 10 ? * 6L" 매월 마지막 금요일 아무 날이나 10:15:00
"0 15 10 ? * 6L 2002-2005"
2002년부터 2005년까지 매월 마지막 금요일 아무 날이나 10:15:00
"0 15 10 ? * 6#3" 매월 3번째 금요일 아무 날이나 10:15:00


Posted by 철냄비짱
,

ASP.NET MVC 프로젝트 일때

태그값 저장 시 잠재적 위험 Request.Form 값을 발견했습니다. 오류시,

 

web.config

 

에서

 

<pages validateRequest="false">

<httpRuntime requestValidationMode="2.0" /> 추가

 

 

MVC 프로젝트 일 경우 추가로

해당 메소드에

 

[ValidateInput(false)]

추가 해줘야 함

Posted by 철냄비짱
,