JavaWeb课程复习资料(十)——修改功能

简介: JavaWeb课程复习资料(十)——修改功能

1、创建【UpdateByIdServlet.java】

image.png

package com.item.servlet;
import com.item.dao.UserInfoDAO;
import com.item.daoimpl.UserInfoDAOImpl;
import com.item.pojo.UserInfo;
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;
@WebServlet("/UpdateByIdServlet")
public class UpdateByIdServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html;charset=utf-8");
        req.setCharacterEncoding("utf-8");
        String id=req.getParameter("id");
        int i = Integer.parseInt(id);
        UserInfoDAO db=new UserInfoDAOImpl();
        UserInfo userInfo = db.SelectById(i);
        req.setAttribute("userInfo",userInfo);
        req.getRequestDispatcher("UpdateServlet.jsp").forward(req,resp);
    }
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req,resp);
    }
}

2、创建【UpdateServlet.jsp】

image.png

<%@ page import="com.item.pojo.UserInfo" %><%--
  Created by IntelliJ IDEA.
  User: 红目香薰
  Date: 2022/2/26
  Time: 13:30
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>修改页面</title>
    <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
</head>
<body>
<form action="/UpdateServlet" method="post">
    <%
        UserInfo userInfo=(UserInfo)request.getAttribute("userInfo");
    %>
    <p>
        <input type="text" name="id" value="<%= userInfo.getId()%>" class="form-control" readonly required/>
    </p>
    <p>
        创建时间:<%= userInfo.getCreateDate()%>
    </p>
    <p>
        <input type="text" placeholder="请输入用户名" value="<%= userInfo.getUserName()%>" name="userName" class="form-control" required/>
    </p>
    <p>
        <input type="text" placeholder="请输入爱好" value="<%= userInfo.getIntroduce()%>" name="introduce" class="form-control" required/>
    </p>
    <p>
        <input type="submit" value="修改" class="btn btn-primary"/>
    </p>
</form>
</body>
</html>

3、创建【UpdateServlet.jsp】


package com.item.servlet;
import com.item.dao.UserInfoDAO;
import com.item.daoimpl.UserInfoDAOImpl;
import com.item.pojo.UserInfo;
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("/UpdateServlet")
public class UpdateServlet extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html;charset=utf-8");
        req.setCharacterEncoding("utf-8");
        String id = req.getParameter("id");
        String userName = req.getParameter("userName");
        String introduce = req.getParameter("introduce");
        PrintWriter out = resp.getWriter();
        if (id == null || userName == null || introduce == null) {
            out.println("<script>alert('参数不允许为空。')</script>");
        }
        UserInfoDAO db = new UserInfoDAOImpl();
        UserInfo userInfo = db.SelectById(Integer.parseInt(id));
        userInfo.setUserName(userName);
        userInfo.setIntroduce(introduce);
        boolean isf = db.UpdateById(userInfo);
        if(isf){
            out.println("<script>alert('修改成功');window.location.href='/index.jsp';</script>");
        }else{
            out.println("<script>alert('修改失败');window.location.href='/index.jsp';</script>");
        }
    }
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }
}


4、执行测试、

image.png

image.png


image.png

image.png


测试成功。


整个Servlet完成,希望能给大家带来一定的帮助。


相关文章
|
25天前
|
安全 Java 测试技术
🎉Java零基础:全面解析枚举的强大功能
【10月更文挑战第19天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
103 60
|
13天前
|
Java
Java 8 引入的 Streams 功能强大,提供了一种简洁高效的处理数据集合的方式
Java 8 引入的 Streams 功能强大,提供了一种简洁高效的处理数据集合的方式。本文介绍了 Streams 的基本概念和使用方法,包括创建 Streams、中间操作和终端操作,并通过多个案例详细解析了过滤、映射、归并、排序、分组和并行处理等操作,帮助读者更好地理解和掌握这一重要特性。
23 2
|
1月前
|
Java 程序员
在Java编程中,关键字不仅是简单的词汇,更是赋予代码强大功能的“魔法咒语”。
【10月更文挑战第13天】在Java编程中,关键字不仅是简单的词汇,更是赋予代码强大功能的“魔法咒语”。本文介绍了Java关键字的基本概念及其重要性,并通过定义类和对象、控制流程、访问修饰符等示例,展示了关键字的实际应用。掌握这些关键字,是成为优秀Java程序员的基础。
24 3
|
1月前
|
Java 数据安全/隐私保护
Java ffmpeg 实现视频加文字/图片水印功能
【10月更文挑战第22天】在 Java 中使用 FFmpeg 实现视频加文字或图片水印功能,需先安装 FFmpeg 并添加依赖(如 JavaCV)。通过构建 FFmpeg 命令行参数,使用 `drawtext` 滤镜添加文字水印,或使用 `overlay` 滤镜添加图片水印。示例代码展示了如何使用 JavaCV 实现文字水印。
|
1月前
|
Java
让星星⭐月亮告诉你,jdk1.8 Java函数式编程示例:Lambda函数/方法引用/4种内建函数式接口(功能性-/消费型/供给型/断言型)
本示例展示了Java中函数式接口的使用,包括自定义和内置的函数式接口。通过方法引用,实现对字符串操作如转换大写、数值转换等,并演示了Function、Consumer、Supplier及Predicate四种主要内置函数式接口的应用。
27 1
|
安全 算法 Java
Java 17 新功能介绍(LTS)
Java 17 新功能介绍(LTS)
686 0
Java 17 新功能介绍(LTS)
|
Java 测试技术 API
Java 18 新功能介绍
Java 18 新功能介绍
322 0
Java 18 新功能介绍
|
JavaScript 前端开发 算法
超详细 Java 15 新功能介绍
超详细 Java 15 新功能介绍
168 0
超详细 Java 15 新功能介绍
|
Java Unix Linux
Java 14 新功能介绍
Java 14 新功能介绍
207 0
Java 14 新功能介绍
|
存储 JSON Oracle
Java 13 新功能介绍
Java 13 新功能介绍
254 0
Java 13 新功能介绍
下一篇
无影云桌面