servlet代码如下:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;public class Inquire extends HttpServlet{
public void init(ServletConfig config) throws ServletException{super.init(config);
}
//通过Post方法按名字查询记录:
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
PrintWriter out=response.getWriter();
response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
out.println("<HTML>");
out.println("<BODY>");
//获取提交的姓名:
String name=request.getParameter("name");
out.print("test<br/>");
String number,xingming;
Connection con=null;
Statement sql=null;
ResultSet rs=null;
int math,english,physics; try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){}
try
{ con=DriverManager.getConnection("jdbc:odbc:sun");
sql=con.createStatement();
String condition="SELECT * FROM students WHERE 姓名 = "+"'"+name+"'";
rs=sql.executeQuery(condition);
out.print("test<br/>");
out.print("<Table Border>");
out.print("<TR>");
out.print("<TH width=100>"+"Number");
out.print("<TH width=100>"+"Name");
out.print("<TH width=50>"+"Math");
out.print("<TH width=50>"+"English");
out.print("<TH width=50>"+"Phsics");
out.print("</TR>");
while(rs.next()){
out.print("<TR>");
out.print("test<br/>");
number=rs.getString(1);
out.print("<TD >"+number+"</TD>");
xingming=rs.getString(2);
out.print("<TD >"+xingming+"</TD>");
math=rs.getInt("数学成绩");
out.print("<TD >"+math+"</TD>");
english=rs.getInt("英语成绩");
out.print("<TD >"+english+"</TD>");
physics=rs.getInt("物理成绩");
out.print("<TD >"+physics+"</TD>");
out.print("</TR>") ;
}
out.print("</Table>");
out.print("test<br/>");
con.close();
}
catch(SQLException e){
}
out.println("</BODY>");
out.println("</HTML>");
}
}
jsp代码如下:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan>
<Font size=1>
<FORM action="examples/servlet/Inquire" Method="post">
<P>成绩查询
<P>输入姓名:
<Input type=text name="name">
<Input type=submit name="g" value="提交">
</BODY>
</HTML>
我在servlet中加了几个out.print("test<br/>");进行测试,结果只出现一个,如果不写,调用的页面为空白页,不知道代码什么地方错了,请指教。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;public class Inquire extends HttpServlet{
public void init(ServletConfig config) throws ServletException{super.init(config);
}
//通过Post方法按名字查询记录:
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
PrintWriter out=response.getWriter();
response.setContentType("text/html;charset=GB2312");//设置响应的MIME类型。
out.println("<HTML>");
out.println("<BODY>");
//获取提交的姓名:
String name=request.getParameter("name");
out.print("test<br/>");
String number,xingming;
Connection con=null;
Statement sql=null;
ResultSet rs=null;
int math,english,physics; try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){}
try
{ con=DriverManager.getConnection("jdbc:odbc:sun");
sql=con.createStatement();
String condition="SELECT * FROM students WHERE 姓名 = "+"'"+name+"'";
rs=sql.executeQuery(condition);
out.print("test<br/>");
out.print("<Table Border>");
out.print("<TR>");
out.print("<TH width=100>"+"Number");
out.print("<TH width=100>"+"Name");
out.print("<TH width=50>"+"Math");
out.print("<TH width=50>"+"English");
out.print("<TH width=50>"+"Phsics");
out.print("</TR>");
while(rs.next()){
out.print("<TR>");
out.print("test<br/>");
number=rs.getString(1);
out.print("<TD >"+number+"</TD>");
xingming=rs.getString(2);
out.print("<TD >"+xingming+"</TD>");
math=rs.getInt("数学成绩");
out.print("<TD >"+math+"</TD>");
english=rs.getInt("英语成绩");
out.print("<TD >"+english+"</TD>");
physics=rs.getInt("物理成绩");
out.print("<TD >"+physics+"</TD>");
out.print("</TR>") ;
}
out.print("</Table>");
out.print("test<br/>");
con.close();
}
catch(SQLException e){
}
out.println("</BODY>");
out.println("</HTML>");
}
}
jsp代码如下:
<%@ page contentType="text/html;charset=GB2312" %>
<HTML>
<BODY bgcolor=cyan>
<Font size=1>
<FORM action="examples/servlet/Inquire" Method="post">
<P>成绩查询
<P>输入姓名:
<Input type=text name="name">
<Input type=submit name="g" value="提交">
</BODY>
</HTML>
我在servlet中加了几个out.print("test<br/>");进行测试,结果只出现一个,如果不写,调用的页面为空白页,不知道代码什么地方错了,请指教。
解决方案 »
- java代码中如何调用javascript方法,在线等
- 求助banner条弱智显示问题
- 请提供用jspSmartUpload上传文件(图片)到mysql的例子
- 帮做个小程序。有报酬200元。用jsp+sql2000实现如下网络硬盘功能:,不需要美工等,只要功能实现就行
- 关于hibernate和spring整合的问题---spring怎么用标签来annotations来加载hibernate没有.xml格式的po类
- 数据库数据查询到js数组,并按相应选择,将数组值分解赋值到各文本框的问题
- 大家帮忙介绍一个web打印控件了?
- ZeroClipboard实现复制功能,兼容各个浏览器
- resin+mysql 显示中文出现乱码!有难度!
- windows下tracert 访问国内网站,为什么会路由到国外去?
- java 经典面试 笔试题
- javax.servlet.UnavailableException: org/springframework/core/NestedExceptionUtil
{ con=DriverManager.getConnection("jdbc:odbc:sun");
sql=con.createStatement();
String condition="SELECT * FROM students WHERE 姓名 = "+"'"+name+"'";
rs=sql.executeQuery(condition);
out.print("test<br/>");这个test也没输出啊,到第怎么弄啊,我是新手,不怎么会
String condition="SELECT * FROM students WHERE 姓名 = "+"'"+name+"'";
应该是:
String condition = "SELECT * FROM students WHERE 姓名 = '"+name+"'";
out.print("test<br/>");有四个,我无法知道执行的是哪一个...
很有一个可能是 name的值等于null 时出错。
可以先写死一个来进行调试。如
String condition = "SELECT * FROM students WHERE 姓名 = '张三'";这样就能慢慢找出原因了