JSP案例_简单实现用户信息的增、删、查、改

来源:互联网 发布:迷你led显示屏软件 编辑:程序博客网 时间:2024/05/16 08:21

JSP案例_简单实现用户信息的增、删、查、改


1.案例要求

一个简单的jsp页面与mysql的结合,实现用户信息的增、删、查、改的案例


2.案例分析

(1)在mysql创建数据库,创建用户表

(2)创建对应的jsp页面

(3)在jsp文件中连接数据库,获取输入值,进行对应的数据库操作


3.代码分析

(1)数据库设计:简单的用户表,为了简单,只有两列

(2)JSP页面设计注重实现功能,界面简单粗暴!


4.代码实现

(1)数据库代码-sql语句:

CREATE DATABASE test;USE test;-- 用户表CREATE TABLE USER(id INT PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(20))

(2)JSP代码:

index.jsp:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><form action="doadd.jsp"><h2>数据录入</h2>输入姓名:<input type="text" name="username" /><button type="submit">插入数据</button></form>
doadd.jsp:

<%@page import="java.sql.*"%><%@page import="com.mysql.jdbc.Driver"%><%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%//获取传递过来的数据String name = request.getParameter("username");//out.print(name);//加载驱动Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://localhost:3306/test";String user = "root";String password = "root";//获取连接对象Connection conn = DriverManager.getConnection(url, user, password);//定义sql语句String sql = "insert into user values(null,?)";//预编译PreparedStatement stmt = conn.prepareStatement(sql);//设置参数stmt.setString(1, name);//执行参数int count = stmt.executeUpdate();/* if(count!=0){out.print("插入成功!");} */conn.close(); %> <script type="text/javascript">window.location = "show.jsp";</script>
dodel.jsp:

<%@page import="java.sql.*"%><%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><% //获取传递过来的idString i = request.getParameter("id");int id = Integer.parseInt(i);//out.print(id);//加载驱动Class.forName("com.mysql.jdbc.Driver");//获取连接对象String url = "jdbc:mysql://localhost:3306/test";String user = "root";String password = "root";Connection conn = DriverManager.getConnection(url, user, password);//定义sql语句String sql = "delete from user where id=?;";//预编译PreparedStatement stmt = conn.prepareStatement(sql);//设置参数stmt.setInt(1, id);//执行int count = stmt.executeUpdate();%><script type="text/javascript">window.location = "show.jsp";</script>
doupdate.jsp:

<%@page import="java.sql.*"%><%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><% //获取String newname = request.getParameter("newname");String idString = request.getParameter("id");int id = Integer.parseInt(idString);Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://localhost:3306/test";String user = "root";String password = "root";Connection conn = DriverManager.getConnection(url, user, password);String sql = "update user set name=? where id=?;";PreparedStatement stmt = conn.prepareStatement(sql);stmt.setString(1, newname);stmt.setInt(2, id);int count = stmt.executeUpdate();%><script>window.location="show.jsp";</script>
show.jsp:

<%@page import="java.sql.*"%><%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>当前所有用户列表:<table border="2" width="300"><tr><td>id</td><td>姓名</td><td>删除操作</td><td>修改操作</td></tr><%//加载驱动Class.forName("com.mysql.jdbc.Driver");//获取连接对象String url = "jdbc:mysql://localhost:3306/test";String user = "root";String password = "root";Connection conn = DriverManager.getConnection(url, user, password);/* if(conn!=null){out.print("123");} *///定义sql语句String sql = "select * from user;";//预编译PreparedStatement stmt = conn.prepareStatement(sql);//执行ResultSet rs = stmt.executeQuery();//数据显示while(rs.next()){//out.print(rs.getInt("id")+"-"+rs.getString("NAME"));%><tr><td><%=rs.getInt("id") %></td><td><%=rs.getString("NAME") %></td><td><a href="dodel.jsp?id=<%=rs.getInt("id") %>">删除</a></td><td><a href="showupdate.jsp?id=<%=rs.getInt("id") %>">修改</a></td></tr><% }conn.close(); %></table><a href="index.jsp">继续添加</a>
showupdate.jsp:

<%@page import="java.sql.*"%><%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>当前信息:<br /><table border="2" width="300"><tr><td>id</td><td>当前姓名</td></tr><% String idString = request.getParameter("id");int id = Integer.parseInt(idString);Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://localhost:3306/test";String user = "root";String password = "root";Connection conn = DriverManager.getConnection(url, user, password);String sql = "select * from user where id=?;" ;PreparedStatement stmt = conn.prepareStatement(sql);stmt.setInt(1, id);ResultSet rs = stmt.executeQuery();while(rs.next()){%><tr><td><%=rs.getInt("id") %></td><td><%=rs.getString("name") %></td></tr><% }%></table><form action="doupdate.jsp">请输入新的姓名:<input type="hidden" value="<%=request.getParameter("id") %>" name="id"/> <input type="text" name="newname"/><button type="submit">确认修改</button></form>

5.运行截图

数据录入:



数据显示:

数据删除:

数据修改:



6.案例总结

(1)注意web项目的部署和Tomcat的启动,mysql服务的启动

(2)如果代码正确刷新不出来,建议重新部署web项目,重启Tomcat

(3)注意导java包

(4)注意jdbc的语法以及驱动的导入,可参照前面的文章

(5)注意JSP页面里java代码和html代码的配合使用

(6)注意sql语句的正确编写

(7)注意加载驱动的语句

(8)预编译sql语句之后还要执行

(9)注意给预编译sql语句设置参数

(10)注意url的语法,用户名以及密码的正确性