问题是这样的:doGet调用showQueryResult显示结果集合(先声明:sql语句是传过来的,不知道字段名,所以我用的ResultSetMetaData).可以显示数据,但是中文全是"?"
public String trans(String chi){
result=null;
byte temp[];
try{
temp=chi.getBytes("iso-8859-1");
result=new String(temp);
}catch(UnsupportedEncodingException e){
System.out.println(e.getMessage());
}
return result;
}
public void showQueryResult(String sql,HttpServletResponse response){
.
.
.
ResultSetMetaData metadata = rs.getMetaData();
while(rs.next()){
for(int i=1;i<metadata.getColumnCount();i++){
out.println(getCol(rs,metadata.getColumnType(i),i));
}
out.println("|");
}
.
.
}
public String getCol(ResultSet rs,int type,int colNum) throws SQLException{
String ret="";
switch(type){
case(12):ret=rs.getString(colNum);break;
case(2):ret=String.valueOf(rs.getInt(colNum));break;
case(93):ret=String.valueOf(rs.getDate(colNum));break;
}
return trans(ret);
}
public String trans(String chi){
result=null;
byte temp[];
try{
temp=chi.getBytes("iso-8859-1");
result=new String(temp);
}catch(UnsupportedEncodingException e){
System.out.println(e.getMessage());
}
return result;
}
public void showQueryResult(String sql,HttpServletResponse response){
.
.
.
ResultSetMetaData metadata = rs.getMetaData();
while(rs.next()){
for(int i=1;i<metadata.getColumnCount();i++){
out.println(getCol(rs,metadata.getColumnType(i),i));
}
out.println("|");
}
.
.
}
public String getCol(ResultSet rs,int type,int colNum) throws SQLException{
String ret="";
switch(type){
case(12):ret=rs.getString(colNum);break;
case(2):ret=String.valueOf(rs.getInt(colNum));break;
case(93):ret=String.valueOf(rs.getDate(colNum));break;
}
return trans(ret);
}
解决方案 »
- 新建Hyperlink出现java.lang.ClassNotFoundException异常,请高手们指点!
- Java 自制打印模板
- 来人看一哈!!数据无法写入SQL数据库
- WebLogic问题
- 请问对一个页面有两个filter,但我只能启动一个filter,经测试。两个filter单独运行都没问题,同时启动两个filter,关键是什么??
- 借人气问一下! 北大硕士与 西安电子科技大学博士?
- 如何在JSP页面中,把数组中的TreeSet中的实体存储地址变成实体对象
- poolman 数据库连接池示例
- 做个万年历! 高分!!
- 怎样知道某年某月的1号是星期几?
- 有谁知道免费JSP空间
- 不用HTML在线编辑器怎么写转换代码录入数据库?
import javax.servlet.*;
import javax.servlet.http.HttpServlet;
import java.io.IOException;/**
*
* Date: 2005-9-19
* Time: 17:33:36
* @author Duzk
*/
public class MyFilter 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("GBK");
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>MyFilter</filter-name>
<filter-class>类路径.MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>