问题总结

两个Java项目,他们之间进行信息的通信

前提:必须知道要通信的java项目(接收请求方)的服务器的IP地址和访问路径。

其实两个java项目之间的通信还是使用HTTP的请求。主要有两种方式:

①使用apache的HttpClient方式。

②使用JDK自带的java.NET包下的HttpURLConnection方式。

HttpURLConnection方式:

HttpURLConnection传递请求常用的有两种方式:POST和GET方式。使用setRequestMethod()方法设置传递的方式。

页面乱码解决

String str = new String(request.getParameter("something").getBytes("ISO-8859-1"),"utf-8");

jso页面乱码:

在JSP文件中使用page命令指定响应结果的MIME类型,如<%@ page language="java" contentType="text/html;charset=gb2312" %>

表单乱码:

表单提交时(post和Get方法),使用request.getParameter方法得到乱码,这是因为tomcat处理提交的参数时默认的是iso-8859-1,表单提交get和post处理乱码问题不同,

过滤器:

Java代码
 
  CharacterEncodingFilter.java:
 
  public class CharacterEncodingFilter implements Filter{
 
    protected String encoding = null;
 
  public void init(FilterConfig filterConfig) throws ServletException{
 
    this.encoding = filterConfig.getInitParameter("encoding");
 
  }
 
  public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException{
 
    request.setCharacterEncoding(encoding);
 
    response.setContentType("text/html;charset="+encoding);
 
    chain.doFilter(request, response);
 
  }
 
}

Java反射:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性。

posted @ 2017-02-19 18:26  珈子  阅读(207)  评论(0编辑  收藏  举报