<!-- The contents of this file will be loaded for each web application -->
<Context>    <!-- Default set of monitored resources -->
    <WatchedResource>WEB-INF/web.xml</WatchedResource>

    <!-- Uncomment this to disable session persistence across Tomcat restarts -->
    <!--
    <Manager pathname="" />
    -->
<Resource name="zcdata" auth="Container"
     type="javax.sql.DataSource"
     driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
     url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=zcdata"
     username="Luffy" password="Luffy"
     maxActive="20" maxIdle="10" maxWait="-1"  
/>
</Context>
这是我的连接池的内容, 现在有个问题是读取数据库中的内容到jsp中是乱码,求解多谢

解决方案 »

  1.   

    设置一个字符过滤器
    过滤所有的url
      

  2.   

    1, Tomcat6根目录下, conf文件夹下面:修改context.xml文件;
     在<Context>中加入:
    <Resource name="jdbc/test"   
       auth="Container"   
       type="javax.sql.DataSource"   
       driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"   
       url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"   
       username="sa3"
       password="sa3"
       maxActive="10"   
       maxIdle="3"   
       maxWait="10000" /> 2,项目文件架下:WEB-INF目录下:修改web.xml文件: 在<web-app>中加入:
    <resource-ref>
    <res-ref-name>jdbc/test</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    </resource-ref>
    3、在apache-tomcat-6.0.0\lib下放入相关数据库的驱动包4、在jsp页面上写
    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    <%@ page import="java.sql.*"%>
    <%@ page import="javax.sql.*"%>
    <%@ page import="javax.naming.*"%>
    <%
    InitialContext initCtx = new InitialContext();
    Context envCtx = (Context) initCtx.lookup("java:comp/env");
    DataSource ds = (DataSource) envCtx.lookup("jdbc/test");
    Connection conn = ds.getConnection();
    System.out.println(conn);

    %>
      

  3.   

    不知到我这个过滤器加 的对不对
    看看
    package com.filter;import java.io.IOException;import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.HttpServletRequest;public class EcodFilter implements Filter { public void destroy() {
    // TODO Auto-generated method stub } public void doFilter(ServletRequest arg0, ServletResponse arg1,
    FilterChain arg2) throws IOException, ServletException {
    // TODO Auto-generated method stub
    HttpServletRequest request = (HttpServletRequest)arg0;
    request.setCharacterEncoding("gb2312");
    arg2.doFilter(request, arg1);
    } public void init(FilterConfig arg0) throws ServletException {
    // TODO Auto-generated method stub }}
      

  4.   

    package com.yz.filter;import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.util.*;public class ChracterFilter extends HttpServlet implements Filter {
        private FilterConfig filterConfig;
        //Handle the passed-in FilterConfig
        public void init(FilterConfig filterConfig) throws ServletException {
            this.filterConfig = filterConfig;
        }    //Process the request/response pair
        public void doFilter(ServletRequest request, ServletResponse response,
                             FilterChain filterChain) {
            try {
                //中文处理
                request.setCharacterEncoding("gb2312");
                response.setCharacterEncoding("gb2312");            filterChain.doFilter(request, response);
            } catch (ServletException sx) {
                filterConfig.getServletContext().log(sx.getMessage());
            } catch (IOException iox) {
                filterConfig.getServletContext().log(iox.getMessage());
            }
        }    //Clean up resources
        public void destroy() {
        }
    }
    上面是完整的过滤器配置
    同时你 还要在web.xml中配置过滤器加上一句话 才可以   <filter>
        <filter-name>chracterfilter</filter-name>
        <filter-class>com.yz.filter.ChracterFilter</filter-class>
      </filter>
      <filter-mapping>
        <filter-name>chracterfilter</filter-name>
        <url-pattern>/*</url-pattern>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>INCLUDE</dispatcher>
        <dispatcher>ERROR</dispatcher>
      </filter-mapping>看看 可以不 , 看看上面代码
      

  5.   

    Jsp页面上加上:<%request.setCharacterEncoding("gb2312");%>不知道行不.
    我也初学