实验十访问数据库--web

一、实验目的
理解和巩固课堂上所学的数据库的开发与使用方法,提高学生对知识的实际运用与软件编程实现能力。
二、实验内容
设计实现一个数据库操作程序。具体步骤如下:1、在mysql中建立一个数据库student,然后在数据库student中建立userinfo表,该表中可以包含三个字段:name(varchar)学生姓名、age(int)年龄、school(varchar)学校。2、设计一个index.jsp页面,访问student数据库,并且在页面中显示学生相关信息。3、除了上述的查询功能之外,可以增加(添加、更新、删除记录)功能(可选)。4、查询功能可以增加分页功能(可选)。
三、实验要求

  1. 文件名字不要使用中文,文件名字首字母小写。2. 第一个文件命名为为index.jsp。3. 所有文件打成一个文件压缩包提交。压缩包文件命名规则:计181-01-姓名。4. 在程序中的title或者注释等地方加入个人名字信息。 5.提交程序运行成功结果截图,可以截多张图。

//index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>xxx</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <%
  Connection con = null;
  Statement st = null;
  ResultSet rs = null;
  //加载驱动
  try {
    
    
   Class.forName("com.mysql.jdbc.Driver");
  } catch (ClassNotFoundException e) {
    
    
   e.printStackTrace();
  }
  try {
    
    
   //建立连接
   con=DriverManager.getConnection("jdbc:mysql://localhost:3307/student?characterEncoding=utf-8","root","101017xpp");
   st = con.createStatement();
   //发送查询SQL语句,返回结果集
   rs = st.executeQuery("select * from userinfo ");
   while(rs.next()){
    
    
    out.print(rs.getString("name") + "&nbsp;&nbsp;&nbsp;&nbsp;");
    out.print(rs.getString("age") + "&nbsp;&nbsp;&nbsp;&nbsp;");
    out.print(rs.getString("school") + "&nbsp;&nbsp;&nbsp;&nbsp;");
    out.print("<br>");
   }  
  } catch (SQLException e) {
    
    
   e.printStackTrace();
  }finally{
    
    
   rs.close();
   st.close();
   con.close();
  } 
 %>
  </body>
</html>

//addStudent.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>xxx</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <form action="/shiyan10/add_student" method="post">
 <table border="1">
  <tr>
   <td>姓名:</td>
   <td><input type="text" name="name"/></td>
  </tr>
  <tr>
   <td>年龄</td>
   <td><input type="text" name="age"/></td>
  </tr>
  <tr>
   <td>学校</td>
   <td><input type="text" name="school"/></td>
  </tr>
  <tr>
   <td><input type="submit" value="添加"></td>
   <td><input type="reset" value="重置"></td>
  </tr>
 </table>
 </form>
  </body>
</html>

//add_student.java (student包)

package student;
import javax.servlet.*;
public class add_student extends HttpServlet
{
    
    
 public void doPost(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException
{
    
    
 res.setContentType("text/html;charset=utf-8");
 PrintWriter out = res.getWriter();
 req.setCharacterEncoding("utf-8");
 String name= req.getParameter("name");
 String age= req.getParameter("age");
}
public void doGet(HttpServletRequest req, HttpServletResponse res)
 throws ServletException,IOException
 {
    
     
     doGet(req,res);
 }
}

//web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
 xmlns="http://java.sun.com/xml/ns/javaee" 
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name></display-name> 
  <servlet>
    <servlet-name>add_student</servlet-name>
    <servlet-class>student.add_student</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>add_student</servlet-name>
    <url-pattern>/add_student</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

(这次作业就用到数据库了,下MySQL和navicat)

Guess you like

Origin blog.csdn.net/weixin_45800653/article/details/107956395