JDBC实践-添加功能的实现

2017-12-06 22:32:33

  1. 重写list.jsp文件,内容如下
<%--
  Created by IntelliJ IDEA.
  User: nosay
  Date: 17-12-5
  Time: 下午3:31
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<html>
<head>
    <title>Title</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>

<div class="container">
    <div class="row clearfix">
        <div class="col-md-12 column">
            <form role="form" method="get" action="">
                <div class="form-group">
                    <label for="username">用户名</label><input class="form-control" name="username" value="${requestScope.username}" id="username" type="username" />
                </div>
                <button type="submit" class="btn btn-default">查询</button>
                <a class="btn btn-primary" href="/addUser">添加</a>
            </form>
            <table class="table">
                <thead>
                <tr>
                    <th>编号</th>
                    <th>用户名</th>
                    <th>操作</th>
                </tr>
                </thead>
                <tbody>
                <c:forEach items="${userList}" var="user" varStatus="status">

                    <tr>
                        <td>${status.index +1}</td>
                        <td>${user.username}</td>
                        <td><a href="/editUser?id=${user.id}">编辑</a> | <a href="/delUser?id=${user.id}">删除</a></td>
                    </tr>

                </c:forEach>

                </tbody>
            </table>
        </div>
    </div>
</div>

</body>
</html>
  1. 建立AddUserServlet.java文件,内容如下
package com.ungly.servlet;

import com.ungly.service.ListService;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

@WebServlet(name = "AddUserServlet",urlPatterns = "/addUser")
public class AddUserServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        request.setCharacterEncoding("UTF-8"); //设置编码
        String username = request.getParameter("username");
        ListService listService = new ListService();
        boolean status = listService.addUser(username);
        if(status)
        {
            response.sendRedirect("/List");

        }else{
            response.setContentType("text/html;charset=utf-8;");
            PrintWriter writer = response.getWriter();
            writer.write("添加失败");
        }


    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        request.getRequestDispatcher("/WEB-INF/jsp/front/addUser.jsp").forward(request,response);
    }
}
  1. 在UserDao.java文件中,加入addUser方法,内容如下
public boolean addUser(String username)
    {
        try {
            String sql = "INSERT INTO user SET username=?";
            this.preparedStatement = this.conn.prepareStatement(sql);
            this.preparedStatement.setString(1,username);
            int i = this.preparedStatement.executeUpdate();
            if(i>0)
            {
                this.status = true;
            }else{
                this.status = false;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                this.conn.close();
                this.preparedStatement.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        return this.status;
    }
  1. 在ListServict.java文件中添加addUser方法,内容为
public boolean addUser(String username)
    {
        return this.userDao.addUser(username);
    }

测试通过,jdbc练习小项目完成
阿里云代码托管