JSP学习之---运用useBean和jdbc操作。实现简答前台操作数据库。
来源:互联网 发布:ubuntu写c程序 编辑:程序博客网 时间:2024/06/05 23:59
JSP学习之—运用useBean和jdbc操作。实现简答前台操作数据库。
功能描述
1 . 在”student”表中查询所有大于特定年龄的学生信息,此年龄由用户指定(提示,在网页上面添加一个文本框用于用户输入年龄,然后根据用户输入的年龄创建sql语句,下面加一个按钮,单击按钮将查询结果显示在网页上。
2 . 向”student”表中填入若干数据记录,要求数据由网页输入,并在下一页面显示插入后的结果。
数据库表设计
在mysql中按照下表的结构建立”student”表
实现效果展示
1 .查询
2 . 插入
实现代码
1 . DbHandle.java
package com.shiyan5_buchong;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DbHandle { Connection conn; Statement sta = null; ResultSet rst = null; public DbHandle(){ try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } try { conn = DriverManager.getConnection("jdbc:mysql://www.malikcheng.xin:3306/test","***","***"); } catch (SQLException e) { e.printStackTrace(); } //System.out.println("success!"); } public ResultSet select( String age){ String sql ="select * from students where age >"+age; try { sta = conn.createStatement(); } catch (SQLException e) { e.printStackTrace(); } try { rst = sta.executeQuery(sql); } catch (SQLException e) { e.printStackTrace(); }// System.out.println(sql); return rst; } public ResultSet selectAll( ){ try { sta = conn.createStatement(); } catch (SQLException e) { e.printStackTrace(); } try { rst = sta.executeQuery("select id,name,address,age from students"); } catch (SQLException e) { e.printStackTrace(); }// System.out.println(sql); return rst; } public void insert (String id,String name,String age,String address ) { String sql = "insert into students (id,name,age,address) values ("+id+",'"+name+"',"+age+",'"+address+"'"+")"; try { sta = conn.createStatement(); } catch (SQLException e) { e.printStackTrace(); } try { sta.execute(sql); } catch (SQLException e) { e.printStackTrace(); }// System.out.println(sql); } public void close () throws Exception{ sta.close(); conn.close(); } public static void main(String[] args) throws Exception { DbHandle d = new DbHandle(); d.insert("33", "qq", "88","qq"); ResultSet rst =d.selectAll(); while (rst.next()){ System.out.print("\n"+rst.getString(1)+" "); System.out.print(" "+rst.getString(2)+" "); System.out.print(" "+rst.getString(3)+"\n"); } }}
2 . 查询页面
<%@page import="java.sql.ResultSet"%><%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><jsp:useBean id="dbhandle" class="com.shiyan5_buchong.DbHandle"></jsp:useBean><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Insert title here</title></head><body> <table bgcolor="greed" border="1" cellspacing="0" cellpadding="0" align="center" width="500"> <% String age = request.getParameter("age"); out.println("<tr>"); out.println("<td>" + ("id") + "</td>"); out.println("<td>" + ("name") + "</td>"); out.println("<td>" + ("address") + "</td>"); out.println("<td>" + ("age") + "</td>"); out.println("</tr>"); if (age != null) { ResultSet rst = dbhandle.select(age); while (rst.next()) { out.println("<tr>"); out.println("<td>" + rst.getString("id") + "</td>"); out.println("<td>" + rst.getString("name") + "</td>"); out.println("<td>" + rst.getString("address") + "</td>"); out.println("<td>" + rst.getString("age") + "</td>"); out.println("</tr>"); } rst.close(); dbhandle.close(); } else{ ResultSet rst = dbhandle.selectAll(); while (rst.next()) { out.println("<tr>"); out.println("<td>" + rst.getString("id") + "</td>"); out.println("<td>" + rst.getString("name") + "</td>"); out.println("<td>" + rst.getString("address") + "</td>"); out.println("<td>" + rst.getString("age") + "</td>"); out.println("</tr>"); } rst.close(); dbhandle.close(); } %> </table> <div align="center"> <form method="post" action=""> <span>输入要查询的大于特定年龄的数值:</span> <input type="text" name="age"> <input type="submit" value="提交"> </form> </div></body></html>
3 . 插入页面
<%@page import="java.sql.ResultSet"%><%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <jsp:useBean id="dbhandle" class="com.shiyan5_buchong.DbHandle"></jsp:useBean> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>Insert title here</title></head><body> <table bgcolor="greed" border="1" cellspacing="0" cellpadding="0" align="center" width="500"> <% String age = request.getParameter("age"); String id = request.getParameter("id"); String address = request.getParameter("address"); String name= request.getParameter("name"); out.println("<tr>"); out.println("<td>" + ("id") + "</td>"); out.println("<td>" + ("name") + "</td>"); out.println("<td>" + ("address") + "</td>"); out.println("<td>" + ("age") + "</td>"); out.println("</tr>"); if (id != null) { dbhandle.insert(id, name, age,address); } ResultSet rst = dbhandle.selectAll(); while (rst.next()) { out.println("<tr>"); out.println("<td>" + rst.getString("id") + "</td>"); out.println("<td>" + rst.getString("name") + "</td>"); out.println("<td>" + rst.getString("address") + "</td>"); out.println("<td>" + rst.getString("age") + "</td>"); out.println("</tr>"); } rst.close(); dbhandle.close(); %> </table> <form method="post" action=""> <table align="center"> <tr> <td>id:</td> <td><input type="text" name="id" required="required"></td> </tr> <tr> <td>name:</td> <td><input type="text" name="name"></td> </tr> <tr> <td>address:</td> <td><input type="text" name="address"></td> </tr> <tr> <td>age:</td> <td><input type="text" name="age"></td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" name="" value="提交"> <input type="reset" name="" value ="重设"> </td> </tr></table> </form></body></html>
3 . 注意不要忘记把mysql驱动拷到WebContent\WEB-INF\lib 下
4 。 还有些bug没有解决,只是简单的实现。比如只能提交一次、提交的数据格式不正确时等等。
0 0
- JSP学习之---运用useBean和jdbc操作。实现简答前台操作数据库。
- 分层实现JSP通过JDBC操作数据库
- JSP学习日记(三) JDBC数据库操作
- 【JSP学习笔记】JDBC操作数据库
- JSP之JDBC操作Sql Server数据库
- JSP之JDBC操作Sql Server数据库
- 【SQL】JDBC之运用dbutils组件实现对数据库的增删改查等操作
- JDBC之数据库基本操作
- Spring之jdbc数据库操作
- JSP中使用JDBC操作数据库
- JSP基于JDBC操作MSSQL2008数据库
- JDBC 实现 配置文件和数据库操作的分离
- jsp操作数据库之插入
- jsp操作数据库之查询
- jsp操作数据库之删除
- jsp操作数据库之修改
- ASP——为实现前台和数据库分离写的数据库操作函数
- jsp和MySql数据库操作
- SPSS 22.0下载、授权及汉化
- bzoj 4883: [Lydsy2017年5月月赛]棋盘上的守卫 最小生成树
- C 最小密钥 河南第十届ACM真题 【模拟】
- eclipse中server location灰色,如何修改?
- 软件测试基础:黑盒测试,白盒测试及具体方法
- JSP学习之---运用useBean和jdbc操作。实现简答前台操作数据库。
- 创建实用的工具栏
- 如鹏java学习进程 精灵正方循环前进
- 欢迎使用CSDN-markdown编辑器
- java接口压力测试
- Android media播放卡顿问题分析流程
- java"动态分配数组容量"-键盘输入几个数,相应分配多大空间
- 神器来袭——不是你不想要(职场必备),而是你不知道
- 1*1卷积网络的作用