zoukankan      html  css  js  c++  java
  • 2017.11.15 JavaWeb的学生体质管理系统

    (11)案例-----学生身体体质信息管理系统的开发

    11.1 功能划分:
    1.添加记录模块:完成向数据库添加新纪录
    2.查询记录模块:完成将数据库的记录以网页的方式显示出来,一般采用有条件的查询
    3.修改记录操作:完成对指定条件的数据库记录实现修改
    4.删除记录操作:完成对指定条件记录从数据库中删除

    11.2 每个模块的操作流程
    1.注册驱动
    2.建立连接
    3.创建数据库操作对象
    4.执行语句
    5.处理执行结果
    6.释放资源


    操作流程:
    1.数据库和数据表的建立
    	数据库students   数据表students_info
    

    2.注册驱动并建立数据库的连接

    		String driverName="com.mysql.jdbc.Driver";//加载驱动程序名
        	String userName="root";     //数据库用户名
        	String userPwd="123456";   //密码
        	String dbName="students";  //数据库名字
        	String url1="jdbc:mysql://localhost:3306/"+dbName;
        	String url2="?user="+userName+"&password="+userPwd;
        	String url3="&userUnicode=true&character=UTF-8";
        	String url=url1+url2+url3;//形成带数据库读写编码的数据库连接字
        	Class.forName(driverName);//加载并注册驱动程序
        	Connection conn=DriverManager.getConnection(url);
    

    3.添加记录模块

    基本格式:insert into 表名(字段名列表) values(值列表)
    
    //insert_stu_2_tijiao.jsp	
    <%@page contentType="text/html%" pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
    <html>
    	<head>
    		<title>添加任意学生的提交页面</title>
    	</head>
    	<body>
    		<form action="insert_stu_2.jsp" method="post">
    			<table border="0" width="238" height="252">
    				<tr><td>学号</td><td><input type="text" name="id"></td></tr>
    				<tr><td>姓名</td><td><input type="text" name="name"></td></tr>
    				<tr><td>性别</td><td><input type="text" name="sex"></td></tr>
    				<tr><td>年龄</td><td><input type="text" name="age"></td></tr>
    				<tr><td>体重</td><td><input type="text" name="weight"></td></tr>
    				<tr><td>身高</td><td><input type="text" name="hight"></td></tr>
    				<tr align="center">
    					<td colspan="2">
    					<input type="submit" value="提 交">&nbsp;&nbsp;&nbsp;
    					<input type="reset" value="取 消">
    					</td>
    					</tr>
    			</table>
    		</form>
    	</body>
    </html>
    
    //insert_stu_2.jsp
    <%@ page language="java" import="java.sql.*" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <title>利用PreparedStatement对象添加一条记录页面</title>
      </head>
      <body>
        <%
        	String driverName="com.mysql.jdbc.Driver";//加载驱动程序名
        	String userName="root";     //数据库用户名
        	String userPwd="123456";   //密码
        	String dbName="students";  //数据库名字
        	String url1="jdbc:mysql://localhost:3306/"+dbName;
        	String url2="?user="+userName+"&password="+userPwd;
        	String url3="&userUnicode=true&character=UTF-8";
        	String url=url1+url2+url3;//形成带数据库读写编码的数据库连接字
        	Class.forName(driverName);//加载并注册驱动程序
        	Connection conn=DriverManager.getConnection(url);  //数据库连接
        	String sql="Insert into stu_info(id,name,sex,age,weight,hight)values(?,?,?,?,?,?)";//sql语句
        	PreparedStatement pstmt=conn.prepareStatement(sql);//执行编译
        	request.setCharacterEncoding("UTF-8"); //设置编码格式
        	int id=Integer.parseInt(request.getParameter("id"));  //转化格式
        	String name=request.getParameter("name");
        	String sex=request.getParameter("sex");
        	int age=Integer.parseInt(request.getParameter("age"));
        	float weight=Float.parseFloat(request.getParameter("weight"));
        	float hight=Float.parseFloat(request.getParameter("hight"));
        	pstmt.setInt(1,id);  //设置参数
        	pstmt.setString(2,name);
        	pstmt.setString(3,sex);
        	pstmt.setInt(4,age);
        	pstmt.setFloat(5,weight);
        	pstmt.setFloat(6,hight);
        	int n=pstmt.executeUpdate();
        	if(n==1){ %>数据插入操作成功!<br><%}
        		else{ %>数据插入操作失败!<br> <% }
        			if(pstmt!=null){
        				pstmt.close();
        			}
        			if(conn!=null){
        				conn.close();
        			}
        	%>
      </body>
    </html>
    

    4.查询记录模块

    	基本格式:select 要列出的字段名  from 表名  where  特定条件
    
    //find_stu_3.jsp
    <%@page contentType="text/html" import="java.sql.*" pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    	<head>
    		<title>由提交页面获取查询条件并实现查询的页面</title>
    	</head>
    	<body>
    	<center>
    			<%  request.setCharacterEncoding("utf-8");
    				String driverName="com.mysql.jdbc.Driver";
    				String userName="root";
    				String userPassword="123456";
    				String dbName="students";
    				String url1="jdbc:mysq://localhost:3306/"+dbName;
    				String url2="?user="+userName+"&password"+userPassword;
    				String url3="&userUnicode=true&characterEncoding=UTF-8";
    				String url=url1+url2+url3;
    				Class.forName(driverName);
    				Connection conn=DriverManager.getConnection(url);
    				
    				String sql="select *form stu_info where sex=? and weight>=? and weight<=?";
    				PreparedStatement pstmt=conn.prepareStatement(sql);
    				ResultSet rs=pstmt.executeQuery();
    				rs.last();
    			 %>你要查询的学生数据表中共有
    			   <font size="5" color="red"><%=rs.getRow()%></font>人
    				 <table border="2" bgcolor="ccceee" width="650">
    			 			<tr bgcolor="CCCCCC" align="center">
    			 				<td>记录条数</td><td>学号</td><td>姓名</td>
    			 				<td>性别</td><td>年龄</td><td>体重</td><td>身高</td>
    			    		</tr>
    			    <% rs.beforeFirst();
    			    	while(rs.next()){%>
    			     		<tr align="center">
    			     			<td><%=rs.getRow() %></td>
    			     			<td><%=rs.getString("id") %></td>
    			     			<td><%=rs.getString("name") %></td>
    			     			<td><%=rs.getString("sex") %></td>
    				     		<td><%=rs.getString("age") %></td>
    				     		<td><%=rs.getString("weight") %></td>
    				     		<td><%=rs.getString("hight") %></td>
    				     </tr>
    			     <%} %>
    			     </table>
    			    </center> 
    			     <% if(rs!=null){rs.close();} 
    			    	if(pstmt!=null){pstmt.close();}
    			     	if(conn!=null){conn.close();}%>
    	</body>
    </html>
    
    //find_stu_3_tijiao.jsp
    <%@page language="java" pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
    <html>
    	<head>
    		<title>查询条件提交页面</title>
    	</head>
    	<body>
    		请选择查询条件<hr width="100%" size="3">
    		<form action="find_stu_3.jsp" method="post">
    		性别:男<input type="radio" name="sex" value="男">
    			女<input type="radio" name="sex" value="女">
    			<br/>
    			体重范围:<p>&nbsp;&nbsp;&nbsp;&nbsp;
    			最小<input type="text" name="w1" value="0"><br><br>
    			&nbsp;&nbsp;&nbsp;&nbsp;
    			最大<input type="text" name="w2" value="150"><p>
    			<input type="submit" value="提交">
    			<input type="reset" value="取 消">
    		</form>
    	</body>
    </html>
    

    5.修改记录模块的设计和实现
    6.删除记录模块的实现
    7.数据库操作模板
    8.整合形成系统

  • 相关阅读:
    第十讲:网络虚拟化(二)
    第九讲:网络虚拟化(一)
    第十二讲:存储虚拟化(二)
    第十一讲:存储虚拟化(一)
    第八讲:I/O虚拟化
    第七讲:内存虚拟化
    第六讲:CPU虚拟化
    node to traverse cannot be null!
    利用 squid 反向代理提高网站性能(转载)
    Servlet自动加载
  • 原文地址:https://www.cnblogs.com/qichunlin/p/7841380.html
Copyright © 2011-2022 走看看