2012-05-09 5 views
1

오라클 데이터베이스에 아랍어 단어를 저장하고 싶습니다. 사용자가 클라이언트 측에서 아랍어 단어를 입력하고 해당 단어를 제출하십시오. 클라이언트 측에서 경고를 사용하여 해당 단어를 인쇄하면 아랍어 텍스트가 표시됩니다. 그러나 서버 측에 표시된 단어는 Java 콘솔 (Sytem.out.println을 사용하여) شاحÙØ©으로 표시됩니다. 따라서 db에 ????으로 표시됩니다. 관련 포스트를 보았는데, 게시물 중 하나에서 '텍스트 파일 인코딩'을 Eclipse의 UTF-8로 변경하는 것에 대해 '텍스트 파일 인코딩'을 UTF-8로 변경했습니다. 그러나 이전 문자 (예 : شاحÙØ©)를 표시하는 효과는 없습니다. 그런 다음 응용 프로그램의 텍스트 파일 인코딩을 UTF-8로 변경 한 다음 동일한 출력을 얻었습니다. db와 같이 db로 보내는 단어가 db가 ???? 인 이유입니다. 어떤 해결책이 있습니까?아랍어 단어를 Oracle 데이터베이스에 저장하는 방법은 무엇입니까?

내 코드가 명령 줄에서

vehicleServiceModel.setVehicleType(request.getParameter("vehicleType")); 

    System.out.println("vehicle Type : "+vehicleServiceModel.getVehicleType()); 

자바

에서 클라이언트 측

jQuery.ajax({ 
     type: "GET", 
     cache : false, 
     url: "addvehicle.htm", 
     data:{vehName:VehicleName,make:Make,model:Model,color:Color,plateNumber:PlateNumber,driverName:DriverName,vehicleType:VehicleType,vehTimeZone:vehTimeZone}, 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: Success, 
     error: Error 
    }); 

    function Success(data, status) { 
    //some code 
    } 

답변

0

, 당신은 1256 (아랍어)에 코드 페이지를 설정해야합니다. 그러나 아랍어 텍스트를 데이터베이스에 저장하려면 열 데이터를 UTF-8로 설정해야합니다. 또한 문자 세트가 UTF-8로 설정되어 있는지 확인하십시오 (웹 페이지를 작성중인 경우).

+0

jsp 페이지에 이미 utf-8을 설정했습니다. –

+0

답변을 설명해 주시겠습니까 –

+0

정확히 설명할까요? –

2

이 질문에 대한 답변입니다. 다른 도움이되기를 바랍니다. 나는 자바

을 변경

:

내 문제는 해결

vehicleServiceModel.setVehicleType(request.getParameter("vehicleType")); 
String str = vehicleServiceModel.getVehicleType(); 
    str = new String(str.getBytes("8859_1"), "UTF-8"); 
    System.out.println("vehicle Type : "+str); 
    vehicleServiceModel.setVehicleType(str); 

는 이제 해결 및 아랍어 단어는 데이터베이스에 저장. 자세한 내용은

this

0

으로 봐 주시기 바랍니다 당신이 이클립스와 소스 코드, 웹 페이지에 즉, UTF-8 모든 방법을 사용하는 것이 좋습니다, 그리고 데이터베이스 (NLS_CHARACTERSET 또는 정의 열을 NVARCHAR2로 지정). 이렇게하면 전환 할 필요가 없습니다.

관련 문제