-------------------JSP 소스 입니다.---------------------
<%@ page contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR" %>
<% request.setCharacterEncoding("EUC-KR"); %>
<%
response.setCharacterEncoding("EUC-KR");
String R_YEAR = request.getParameter("R_YEAR"); //파라미터 받는 부분
Class.forName("oracle.jdbc.driver.OracleDriver");
try{
Connection Conn =
DriverManager.getConnection("jdbc:oracle:thin:@localhost:XXXX:SIDXXXX","ID","PW");
Statement stmt = Conn.createStatement();
ResultSet rs = stmt.executeQuery("INSERT INTO TEST(ID,PW) VALUES('"+R_YEAR+"','TESTPW')");
stmt.close();
Conn.close();
out.println("ok");
}
catch(SQLException e)
{
out.println("" + e.getMessage());
}
%>
-------------------안드로이드 커넥션 하는 부분 입니다.---------------------
public void HttpPostWeek_REPORT(String R_YEAR ) {
try {
URL url = new URL(유알엘 주소); // URL
HttpURLConnection http = (HttpURLConnection) url.openConnection(); // 접속
http.setDefaultUseCaches(false);
http.setDoInput(true);
http.setDoOutput(true);
http.setRequestMethod("POST");
http.setRequestProperty("content-type","application/x-www-form-urlencoded");
StringBuffer buffer = new StringBuffer();
buffer.append("R_YEAR").append("=").append("한구구국글").append("&");
OutputStreamWriter outStream = new OutputStreamWriter(http
.getOutputStream(), "EUC-KR");
PrintWriter writer = new PrintWriter(outStream);
writer.write(buffer.toString());
writer.flush();
InputStreamReader tmp = new InputStreamReader(http.getInputStream(), "EUC-KR");
BufferedReader reader = new BufferedReader(tmp);
StringBuilder builder = new StringBuilder();
String str;
while ((str = reader.readLine()) != null) {
builder.append(str + "\n");
}
String result = builder.toString();
Log.i("result-->" , result);
} catch (MalformedURLException e) {
} catch (IOException e) {
}
}
}
이렇게 해서 안드로이드에서 한글을 보냈는데 디비 저장되어있는거 보면 한글이 깨져서 들어가있떠라구요..ㅠㅠ
얼래 GET 방식으로 브라우저로 먼저 확인하고 날렸는데 한글은.. 안된다고 해서 POST 형식으로 바꾼거구요..
POST 는 브라우저로 볼수가 없어 모바일로 직접 날려보고 확인하고 있습니다.
그런데..ㅠㅠ 한글이 자꾸 깨지네요.. UTF-8 로 모 다해봐도 깨지네요..진짜 이거 몇일째인지 ㅠㅠ 미쳐돌아버릴지경입니다.
JSP 파라미터 넘기는부분 좀 경험있으신분 ㅠㅠ 도와주세요..
읽어주셔서 감사합니다 ^^ 감기 조심하시고 행복하세욥.
디비 뭐 쓰시는지 모르겠지만...
제 경험상으로는 대부분이 디비 자체의 인코딩 문제였습니다.
일단 DB 거치지 마시고 JSP 페이지의 한글 상수를 안드로이드에 받는걸로 테스트해보세요.
그럼 DB 문제인지 JSP 인코딩 문제인지 좀더 확실하게 구별할수있을것같은데..