圈圈O圆圆O圈圈 2016-09-20 12:01 采纳率: 100%
浏览 7219
已采纳

servlet 怎么把数据库查到的东西传到HTML中

下面是我写的,不知道该怎么改了。。

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;

public class Servlet1 extends HttpServlet {
private static final long serialVersionUID = 1L;

@Override

protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

        // 获取客户端发送的请求类型:GET/POST
    doPost(request, response);
        }
protected void doPost(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    String responseBody = "Current request method is <B>:" + request.getMethod()
            + "</B> <br>" + new Date();
    // 将所有HTML响应数据通过网络回发到客户端。
    // 获取发送响应的PrintWriter对象
    PrintWriter out = response.getWriter();
    // 装在需要响应到客户端的响应数据
    out.println(responseBody);


try{
          Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");   //注册JDBC驱动
          Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=Stu_Man","sa","13361775956");  //链接数据库
          System.out.println("连接成功!"); //如果连接成功,控制台输出“连接成功!” 

          //查询数据
          String str2= "select Course.couid,counam, coutimes, couroom, courtea from Course,Student,Score where stunam ='张三' and  Student.stuid=Score.stuid and Score.couid=Course.couid";
          Statement stmt = con.createStatement();
          ResultSet rs = stmt.executeQuery(str2);
          response.setContentType("text/html;charset=utf-8");


          while (rs.next()) 
          {
         String a = rs.getString("couid");
         String b = rs.getString("counam");
         String c = rs.getString("coutimes");
         String d = rs.getString("couroom");
         String e = rs.getString("courtea");

         out.print("<td><input type=\"checkbox\" name=\"id\" value=\""+a+"\"></td>");
         out.print("<td>"+b+"</td>");
         out.print("<td>"+c+"</td>");
         out.print("<td>"+d+"</td>");
         out.print("<td>"+e+"</td>");
         out.print("</tr>");
                       }   
          out.print("</table></center>");
          out.println("  </BODY>");
          out.println("</HTML>");
          out.flush();
          out.close();

          //插入数据 
          String str1 = "insert  into Student values(107,'王九','男','95-05-02','技术4')";
          Statement stm = con.createStatement();
          int res= stm.executeUpdate(str1);
          if (res > 0) { 
           System.out.println("数据已成功插入!");
          }
          //删除数据
         PreparedStatement p = null;
            try {
         String str3 = "delete from Student where stunam ='王' ";
         p = con.prepareStatement(str3);
         int row = p.executeUpdate();
         System.out.println("成功删除了"+row+"行数据!");
                }
            catch (SQLException sqlE)
          {
         sqlE.printStackTrace();
          } 
            if (rs != null) {
               con.close();  //释放资源
            }
   } 
 catch (SQLException e) 
{

// e.printStackTrace();
System.out.println("数据执行错误!");
}

       catch(Exception e)
       {
          System.out.println("连接失败!");
       }  
    // 发送响应
    out.close();

}

}

  • 写回答

5条回答 默认 最新

  • Feach 2016-09-20 14:03
    关注

    我的思路这样的 ,你把从数据库里得到的东西 放到一个map或者其他的也行 ,然后放到request,到页面里 再从request里拿出来,

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!