日期:2014-05-20  浏览次数:20819 次

使用httpclient访问网页,进行留言时出现了中文乱码,用的是post方法,麻烦大家看下程序
import   org.apache.commons.httpclient.*;

import   org.apache.commons.httpclient.cookie.*;

import   org.apache.commons.httpclient.methods.*;


public   class   FormLoginDemo   {

        static   final   String   LOGON_SITE   =   "127.0.0.1 ";

        static   final   int         LOGON_PORT   =   8080;

       

        public   static   void   main(String[]   args)   throws   Exception{

                HttpClient   client   =   new   HttpClient();

                client.getHostConfiguration().setHost(LOGON_SITE,   LOGON_PORT);

             

              //模拟登录页面

                PostMethod   post   =   new   PostMethod( "/os/checkuser.jsp ");

                NameValuePair   name   =   new   NameValuePair( "username ",   "admin ");          

                NameValuePair   pass   =   new   NameValuePair( "password ",   "admin ");          

                post.setRequestBody(new   NameValuePair[]{name,pass});

              int   status   =   client.executeMethod(post);
             
      System.out.println( "登录通过 ");

                post.releaseConnection();    


              //访问所需的页面

                PostMethod   post1   =   new   PostMethod( "/os/submit.jsp ");

NameValuePair   title=new       NameValuePair( "title ",       new   String( "测试3 ".getBytes( "iso8859_1 ")));
NameValuePair   title   =   new   NameValuePair( "title ",   "测试3 ");  
post1.setRequestBody(new   NameValuePair[]{title,content});
client.executeMethod(post1);

System.out.println(post1.getResponseBodyAsString());
post1.releaseConnection();    

        }

}


要接收数据的jsp网页部分源码如下:

<%@   page   contentType= "text/html;   charset=gb2312 "   language= "java "   import= "java.sql.* "   errorPage= " "   %>
<!DOCTYPE   HTML   PUBLIC   "-//W3C//DTD   HTML   4.01   Transitional//EN "   "http://www.w3.org/TR/html4/loose.dtd ">
<jsp:useBean   id= "dbconn "   scope= "page "   class= "os.osconn "/>
<html>
<head>
<META   http-equiv=Content-Type   content= "text/html;   charset=gb2312 ">
<link   rel= "stylesheet "   href= "b.css "   type= "text/css ">