连接数据库,并用表格输出数据

创建insex.jsp

<table border="1" width="80%" align='center'>
<tr>
<td>序号</td>
<td>学号</td>
<td>姓名</td>
<td>性别</td>
<td>出生日期</td>
<td>操作</td>
</tr>
<%
int n=0;
String driver_class="com.mysql.cj.jdbc.Driver";
String serverip="localhost";
String databasename="oa";
String username="root";
String pwd="123456";
String jdbcUrl="jdbc:mysql://"+serverip+":3306/"+databasename+"?serverTimezone=Asia/Shanghai&useSSL=true";
Class.forName(driver_class);
Connection conn= DriverManager.getConnection(jdbcUrl,username,pwd);
PreparedStatement pst= conn.prepareStatement("select * from student");
ResultSet rs= pst.executeQuery();

//ResultSet 一个指向数据库的变量,是不包含内容的

while(rs.next()){
n++;
%>
<tr>
<td><%=n %></td>
<td><%=rs.getString("id") %></td>
<td><%=rs.getString("user_name") %></td>
<td><%=rs.getString("sex") %></td>
<td><%=rs.getString("birthday") %></td>
<td>
<a href="insert_action.jsp">添加</a>
<a href="delete.jsp?id=<%=rs.getString("id")%>">删除</a>
<a href="update_action.jsp?id=<%=rs.getString("id")%>&name=<%=rs.getString("user_name")%>&bir=<%=rs.getString("birthday")%>">修改</a></td>
</tr>
<%
}

pst.close();
conn.close();
%>
</table>
<%out.print("合计"+n+"记录"); %>

运行结果如下:

创建delete.jsp

<%
String id=request.getParameter("id");
String driver_class="com.mysql.cj.jdbc.Driver";
String serverip="localhost";
String databasename="oa";
String username="root";
String pwd="123456";
String jdbcUrl="jdbc:mysql://"+serverip+":3306/"+databasename+"?serverTimezone=Asia/Shanghai&useSSL=true";
Class.forName(driver_class);
Connection conn= DriverManager.getConnection(jdbcUrl,username,pwd);
PreparedStatement pst1=conn.prepareStatement("delete from student where id=?");
pst1.setString(1,id);
pst1.execute();
pst1.close();
conn.close();

response.sendRedirect("index.jsp");
%>

在之前的insex.jsp中已经调用过了

运行后:从7条减为6条了

创建insert_action.jsp

<form action='insert.jsp' method="post">
请输入姓名:
<input type='text' name='username'>
<br>
请输入性别:
<input name="radiobutton" type="radio" value="男" checked>

<input type="radio" name="radiobutton" value="女">

<br>
请输入出生日期:
<input type='text' name='birthday'>
</p>
<p>
<input type="submit" name="submit" value='添加'>
</p>
</form>

创建insert.jsp

<%

String name=request.getParameter("username");
name=new String(name.getBytes("iso-8859-1"),"UTF-8");
String sex=request.getParameter("radiobutton");
sex=new String(sex.getBytes("iso-8859-1"),"UTF-8");
String birthday=request.getParameter("birthday");

String driver_class="com.mysql.cj.jdbc.Driver";
String serverip="localhost";
String databasename="oa";
String username="root";
String pwd="123456";
String jdbcUrl="jdbc:mysql://"+serverip+":3306/"+databasename+"?serverTimezone=Asia/Shanghai&useSSL=true";
Class.forName(driver_class);
Connection conn= DriverManager.getConnection(jdbcUrl,username,pwd);
PreparedStatement pst1=conn.prepareStatement("insert into student(user_name,sex,birthday)values(?,?,?)");
pst1.setString(1,name);
pst1.setString(2,sex);
pst1.setString(3,birthday);
pst1.execute();
pst1.close();
conn.close();

response.sendRedirect("index.jsp");
%>

在之前的index.jsp中

点击添加后

输入数据再点击添加按钮

可以看到数据添加成功了

创建update_action.jsp

<form action='update.jsp' method="post">
<%
String n=request.getParameter("id");
String name=request.getParameter("name");
String sex=request.getParameter("sex");
String birthday=request.getParameter("bir");
%>
<input type='text' name='id'value='<%=n%>' style='display:none'>
请输入姓名:
<input type='text' name='username'value='<%=name%>'>
<br>
请输入性别:
<script type="text/javascript">
function loadsex(){
<%
if(sex.equals("男")){
%>
document.getElementById("radiobutton1").checked="checked";
document.getElementById("radiobutton2").checked="";
<%
}else{
%>
document.getElementById("radiobutton1").checked="";
document.getElementById("radiobutton2").checked="checked";
<%
}
%>
}
onload=loadsex;
</script>
<input name="radiobutton" type="radio" value="男" id="radiobutton1" checked>

<input type="radio" name="radiobutton" value="女" id="radiobutton2">

<br>
请输入出生日期:
<input type='text' name='birthday'value='<%=birthday%>'>
</p>
<p>
<input type="submit" name="submit" value='修改'>
</p>
</form>

在创建update.jsp

<%
String id=request.getParameter("id");
String name=request.getParameter("username");
name=new String(name.getBytes("iso-8859-1"),"UTF-8");
String sex=request.getParameter("radiobutton");
sex=new String(sex.getBytes("iso-8859-1"),"UTF-8");
String birthday=request.getParameter("birthday");
String driver_class="com.mysql.cj.jdbc.Driver";
String serverip="localhost";
String databasename="oa";
String username="root";
String pwd="123456";
String jdbcUrl="jdbc:mysql://"+serverip+":3306/"+databasename+"?serverTimezone=Asia/Shanghai&useSSL=true";
Class.forName(driver_class);
Connection conn= DriverManager.getConnection(jdbcUrl,username,pwd);
PreparedStatement pst1=conn.prepareStatement("update student set user_name=?,sex=?,birthday=? where id=?;");
pst1.setString(1,name);
pst1.setString(2,sex);
pst1.setString(3,birthday);
pst1.setString(4,id);
pst1.execute();
pst1.close();
conn.close();

response.sendRedirect("index.jsp");
%>

在之前的index.jsp中

点击修改后,出现修改前的数据,直接在文本框中修改即可

把傻明改为明za,再点击修改按钮

Java连接MYSQL进行操作(增,删,改)的更多相关文章

  1. django单表操作 增 删 改 查

    一.实现:增.删.改.查 1.获取所有数据显示在页面上 model.Classes.object.all(),拿到数据后,渲染给前端;前端通过for循环的方式,取出数据. 目的:通过classes(班 ...

  2. Mysql基本操作语句 增-删-改-查

    增 INSERT INTO 表名(属性名1,属性名2) VALUES(值1,值2) 删 DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子 ...

  3. java连接MySQL数据库操作步骤

    package com.swift; //这里导入的包是java.sql.Connection而不是com.mysql.jdbc.Connection import java.sql.Connecti ...

  4. 使用JDBC连接MySQL数据库操作增删改查

    目录 1.首先这个Myeclipse的包名以及一些实现的类(这样子写是我的习惯) 2.接下来我们创建数据库(MySQL) 3.在数据库里面添加数据 4.首先是BaseDao,这个是重中之重,注意那个数 ...

  5. C# ADO.NET (sql语句连接方式)(增,删,改)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  6. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  7. Java连接MySQL数据库及简单操作代码

    1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...

  8. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  9. 【JDBC】Java 连接 MySQL 基本过程以及封装数据库工具类

    一. 常用的JDBC API 1. DriverManager类 : 数据库管理类,用于管理一组JDBC驱动程序的基本服务.应用程序和数据库之间可以通过此类建立连接.常用的静态方法如下 static ...

随机推荐

  1. [WPF]获取鼠标指针下的元素

    原文:[WPF]获取鼠标指针下的元素   [WPF]获取鼠标指针下的元素 周银辉 以前写过一些GetElementUnderMouse之类的函数,要用到坐标换算而显得有些麻烦(特别是当元素有XXXTr ...

  2. 2015微软创新杯Imaginecup正在进行参赛(报名截止日期2014年12月31日本23:59)

    CSDN高校俱乐部与微软官方合作,2015微软创新杯大赛中国区官网落户CSDN高校俱乐部:http://student.csdn.net/mcs/imaginecup2015 在微软官方设置创新杯中国 ...

  3. strlen, wcslen, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l, setlocale(LC_CTYPE, "Japanese_Japan")(MSDN的官方示例)

    // crt_strlen.c // Determine the length of a string. For the multi-byte character // example to work ...

  4. 【C#】wpf查找父子节点

    原文:[C#]wpf查找父子节点 using System; using System.Collections.Generic; using System.Linq; using System.Tex ...

  5. 【WPF】wpf用MultiBinding解决Converter需要动态传参的问题,以Button为例

    原文:[WPF]wpf用MultiBinding解决Converter需要动态传参的问题,以Button为例       用Binding并通过Converter转换的时候,可能偶尔会遇到传参的问题, ...

  6. liunx 桥接 上网 ip配置 外部网络访问

    一.设置VMware 在vmware的[编辑]-->[虚拟网络编辑器]设置:将VMnet0设置为“桥接”,并桥接到宿主机器的网卡(可以是有线或者无线网络).   二.设置虚拟机系统(以cento ...

  7. [WPF疑难] 如何限定ListView列宽度

    原文:[WPF疑难] 如何限定ListView列宽度 [WPF疑难] 如何限定ListView列宽度                                            周银辉 今天 ...

  8. android studio 3.0+发布签名apk注意的情况

    在build.gradle for module文件中添加 lintOptions { checkReleaseBuilds false abortOnError false } 这样避免失败

  9. Win10《芒果TV》商店内测版更新至v3.1.6:率先支持Xbox One平台 - 参与反馈,赢取VIP奖励

    芒果TV For Win10商店内测版 v3.1.6 于2016年9月1日星期四下午正式登陆商店 主要是优化手机版视频下载相关设置.策略.风险提示,并升级兼容目标,率先支持Xbox One平台,覆盖更 ...

  10. GIS基础软件及操作(八)

    原文 GIS基础软件及操作(八) 练习八.地理建模 地理建模:Model Builder 土壤侵蚀危险性建模分析 认识ModelBuilder操作界面 1: 添加硬盘上的数据或工具到模型中,数据也可以 ...