잘못된 Java 개체에 대한 해결 방법: 1. 잘못된 파일을 다운로드할 때 다운로드 응답 헤더와 파일 이름은 HTTP 전송 전에 URLEncoding으로 인코딩되어야 합니다. 2. Java와 데이터베이스 간의 잘못된 파일의 경우 유니코드를 사용하여 데이터베이스와 직접 상호 작용합니다. 드라이버 URL에 지정할 수 있습니다.
Java 객체 잘못된 코드에 대한 솔루션:
jsp와 페이지 매개변수 사이의 잘못된 코드
요청이 인코딩을 가져오는 방식을 강제로 지정:
request.setCharacterEncoding("UTF-8");
페이지에 대한 jsp 출력이 잘못된 경우 :
response.setCharacterEncoding("UTF-8");
또는 web.xml에서 서블릿 필터 필터를 구성합니다(POST 모드에만 유효, GET 모드에는 유효하지 않음):
<filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>net.vschool.web.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
Tomact 구성 파일 server.xml
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false" URIEncoding="UTF-8">
URL 처리 변경:
<a href="TestAction.do?name=<%=java.net.URLEncoder.encode("你好","UTF-8")%>" ></a>
파일 잘못된 코드 다운로드:
키는 다운로드 시 응답 헤더입니다. HTTP 전송을 위해 파일 이름을 URLEncoding으로 인코딩해야 합니다.
response.setHeader("Content-disposition", "attachment;filename="+ URLEncoder.encode(fileName,"utf-8"));
Get 메소드가 깨졌습니다:
String args = new String(strCn.getBytes("ISO-8859-1"),"UTF-8");
Post 메소드가 깨졌습니다:
Just request.setCharacterEncoding("UTF-8");
.
Java와 데이터베이스 간의 잘못된 코드
유니코드를 사용하여 데이터베이스와 직접 상호 작용합니다. 이는 mysql 드라이버와 같은 드라이버의 URL에 지정할 수 있습니다.
jdbc:mysql://127.0.0.1:3306/database?useUnicode=true&characterEncoding=utf-8
관련 학습 권장 사항: java 기본 튜토리얼
위 내용은 Java 객체가 왜곡된 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!