[JAVA EE] JPA技术基础:完成数据列表的删除

news/2024/4/16 3:34:44

接上一篇:[JAVA EE] JPA技术基础:完成数据列表显示

本章完成数据列表的删除

  • 修改 UserController.java
package com.example.demo.controller;import com.example.demo.entity.User;
import com.example.demo.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.List;@Controller
public class UserController {//@Autowired:自动注入,即对象只需声明,不用new就能使用(Spring IoC技术体现,厉害呀!)@AutowiredUserRepository userRepository;@RequestMapping("/")public String Index(){return "redirect:/list";//redirect:请求转发,将请求转发到list}@RequestMapping("/list")public String list(Model model){//Repository内置的方法,可直接使用,查找所有对象List<User> users = userRepository.findAll();model.addAttribute("users",users);return "user/list";//list.html 显示所有 user 信息}@RequestMapping(value = "/delete/{id}")public String delete(@PathVariable Long id){userRepository.deleteById(id);return "redirect:/list";}
}
  • 添加依赖
  • pom.xml
<!-- jquery 库-->
<dependency>
<groupId>org.webjars</groupId>
<artifactId>jquery</artifactId>
<version>3.3.1</version>
</dependency>
<!-- bootstrap 库-->
<dependency>
<groupId>org.webjars</groupId>
<artifactId>bootstrap</artifactId>
<version>3.3.7</version>
</dependency>
<!-- webjars-locator用于库的版本控制 -->
<dependency>
<groupId>org.webjars</groupId>
<artifactId>webjars-locator</artifactId>
<version>0.31</version>
</dependency>
  • 添加 list.html
  • 在 templates 目录下新建 user 目录,并添加 list.html 页面
    在这里插入图片描述
    list.html

WebJars是将客户端(浏览器)资源(JavaScript,Css等)打成jar包文件,以对资源进行统一依赖管理。
WebJars的jar包部署在Maven中央仓库上。
我们在开发Java web项目的时候会使用像Maven,Gradle等构建工具以实现对jar包版本依赖管理,以及项目的自动化管理,但是对于JavaScript,Css等前端资源包,我们只能采用拷贝到webapp目录下的手工方式,这样做就无法对这些资源进行依赖管理。而且容易导致文件混乱、版本不一致等问题。那么WebJars就提供给我们这些前端资源的jar包形式,我们就可以进行依赖管理。
WebJars是将这些通用的Web前端资源打包成Java的Jar包,然后借助Maven工具对其管理,保证这些Web资源版本唯一性,升级也比较容易。关于webjars资源,有一个专门的网站http://www.webjars.org/,我们可以到这个网站上找到自己需要的资源,在自己的工程中添加入maven依赖,即可直接使用这些资源了。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>用户列表</title><!--使用webjar技术来添加第三库--><script th:src="@{/webjars/jquery/jquery.min.js}"></script><script th:src="@{/webjars/bootstrap/js/bootstrap.min.js}"></script><link th:href="@{/webjars/bootstrap/css/bootstrap.min.css}" rel="stylesheet">
</head>
<body>
<div class="container"><h2>用户列表</h2><div class="width:80%"><div style="margin:20px;"><a href="/add" th:herf="@{/add}" class="btn btn-info">添加用户</a></div><table class="table table-hover"><tr><th>用户id</th><th>用户名</th><th>密码</th><th>创建时间</th><th>用户状态</th><th>操作</th><th>操作</th></tr><tr th:each="user:${users}"><th scope="row" th:text="${user.id}">1</th><td th:text="${user.username}">neo</td><td th:text="${user.password}">123456</td><td th:text="${#dates.format(user.regdate,'yyyy/MM/dd HH:mm:ss')}">2020/11/11</td><td th:text="${user.status}">0</td><td><a th:href="@{/edit/{id}(id=${user.id})}">编辑</a></td><td><a th:href="@{/delete/{id}(id=${user.id})}"th:onclick="return confirm('确定删除吗?')">删除</a></td></tr></table></div>
</div>
</body>
</html>

运行结果:
删除前:
在这里插入图片描述
在这里插入图片描述
删除中
在这里插入图片描述
删除后:
在这里插入图片描述
刷新数据库:
在这里插入图片描述


http://www.ppmy.cn/news/607683.html

相关文章

大数据必学Java基础(七):扩展环境变量

文章目录 扩展环境变量 一、classpath环境变量 二、JAVA_HOME环境变量 扩展环境变量 一、classpath环境变量 【1】系统有一个环境变量叫:

linux创建一个交换分区,如何创建linux交换分区

匿名用户1级2017-03-26 回答1.mkswap 把一个分区格式化成为swap交换区&#xff1b;[rootlocalhost]# mkswap /dev/sda6 注&#xff1a;创建此分区为swap 交换分区[rootlocalhost]# swapon /dev/sda6 注&#xff1a;加载交换分区&#xff1b;[rootlocalhost]# swapoff /dev/sda6…

NXP智能驾驶软件系统

NXP智能驾驶软件系统 ADAS和高度自动驾驶 汽车解决方案 市场领先的ADAS解决方案 先进的驾驶员辅助系统(ADAS)提供了安全的、日益自动化的驾驶体验&#xff0c;这将重塑出行关系。自动驾驶技术将很快让乘客体验到个性化且互连的驾驶乐趣&#xff0c;赋予汽车无缝地感知、思考和行…

[JAVA EE] JPA 技术实践:完成增、删、改、查操作

项目已上传&#xff1a;https://codechina.csdn.net/qq_36286039/javaee 注意本项目是包含后文JPA 查询用法内容的&#xff0c;若您想看只有本文内容的项目&#xff0c;请下载&#xff1a; https://download.csdn.net/download/qq_36286039/21941623?spm1001.2014.3001.5501 …

云原生(二十九) | Kubernetes篇之自建高可用k8s集群优化

文末有惊喜 文章目录 自建高可用k8s集群优化 一、Docker配置优化 二、优化kubelet

光学滤光片与镀膜

光学滤光片与镀膜 什么是减反射&#xff08;Anti-reflective) 减反射&#xff08;AR&#xff0c;anti-reflective&#xff09;&#xff0c;就是减少反射光&#xff0c;反光少了&#xff0c;说明透过的光多了&#xff0c;所以减反射又叫增透。 下面的图中&#xff0c;做过减反射…

linux下用js生成xml,js2xml:将javascript字符串转换为xml

有时候爬数据遇到像下面这种&#xff0c;数据在script标签中以javascript形式存在。var totalReviewsValue 32;var averageRating 4.5;if(totalReviewsValue ! 0){events "...";}一般我们都是通过正则的方式抽取&#xff0c;其实还可以使用js2xml。将js转换为xml标…

setTimeout、setInterval、promise、async/await的顺序详解(多种情况,非常详细~)

本文很长&#xff0c;列举的情况很多。 在阅读本文之前&#xff0c;如果您有充足的时间&#xff0c;请新建一个项目与本文一同实践。 每段代码都有对应的解释&#xff0c;但是自己动手尝试印象才会更深哦~ setInterval&#xff1a;表示多久执行一次&#xff0c;需要clearInterv…

大数据必学Java基础(八):简单介绍API和注释

文章目录 简单介绍API和注释 一、API 二、注释 单行注释和多行注释 文档注释 简单介绍API和注释

【算法题】2678. 老人的数目

题目&#xff1a; 给你一个下标从 0 开始的字符串 details 。details 中每个元素都是一位乘客的信息&#xff0c;信息用长度为 15 的字符串表示&#xff0c;表示方式如下&#xff1a; 前十个字符是乘客的手机号码。 接下来的一个字符是乘客的性别。 接下来两个字符是乘客的年…

摄像头CCM模组

摄像头CCM模组 手机摄像头产业链上游原材料为玻璃、覆铜板、铜材料等&#xff0c;中游组件包括摄像头镜头、音圈马达、CIS 芯片、手机模组组装四大环节 CIS在手机摄像头产业价值量占比最高&#xff0c;其次是CCM组装和镜头。预计2024年会达到457亿美元。摄像头价值链中&#…

[JS] undefined、null、ReferenceError的区别、变量作用域问题

undefined、null、ReferenceError的区别 null表示"没有对象"&#xff0c;即该处不应该有值。 典型用法是&#xff1a; &#xff08;1&#xff09; 作为函数的参数&#xff0c;表示该函数的参数不是对象。 &#xff08;2&#xff09; 作为对象原型链的终点。 undefi…

数据湖(十):Hive与Iceberg整合

文章目录 Hive与Iceberg整合 一、开启Hive支持Iceberg 1、下载iceberg-hive-runtime.jar 2、配置hive-site.xml

光学镜头与模组

光学镜头与模组 光学镜头是机器视觉系统中必不可少的部件&#xff0c;直接影响成像质量的优劣&#xff0c;影响算法的实现和效果。 车载镜头现有量产机种稳定供货&#xff0c;产品涉及ADAS、AVM、DVR、DMS、CMS、E-mirror 等。 持续加强高端镜头、玻塑混合、超薄镜头、广角镜…

小波变换(wavelet transform)的通俗解释(一)

小波变换 小波&#xff0c;一个神奇的波&#xff0c;可长可短可胖可瘦&#xff08;伸缩平移&#xff09;&#xff0c;当去学习小波的时候&#xff0c;第一个首先要做的就是回顾傅立叶变换&#xff08;又回来了&#xff0c;唉&#xff09;&#xff0c;因为他们都是频率变换的方法…

vsftpd的主配置文件是什么linux,linux下vsftpd配置文件选项详细说明

//关闭三、vsftp配置文件各选项说明#vi /etc/vsftpd/vsftpd.conf允许匿名登录12 anonymous_enableYES允许本地帐号登录15 local_enableYES控制可写权限18 write_enableYES控制本地文件的权限掩码22 local_umask022控制是否允许匿名上传(与31行同时开启或关闭)27 anon_upload_en…

【FFmpeg实战】视频基础和MP4容器解封装

转载自原文地址&#xff1a;https://juejin.cn/post/6901218687081480206 一、视频的编解码方式 谈到视频&#xff0c;我们经常会听到视频编解码、H.264等诸如此类的内容。那么视频编解码是什么意思呢&#xff1f; 视频编解码&#xff0c;其实就是对视频数据进行压缩和解压缩…

[JAVA EE] JPA 查询用法:自定义查询,分页查询

项目已上传&#xff1a;https://codechina.csdn.net/qq_36286039/javaee 自定义查询 问题&#xff1a;内置的crud功能不满足需求时如何添加自定义查询&#xff1f; 几种自定义查询方法 方法命名规则查询 按照 JPA 定义的规则&#xff0c;查询方法以 find|read|get 开头&…

DOM相关内容(课程来源:B站 后盾人)

课程来源:B站后盾人 有关DOM的介绍 在此引用一位大佬的博客的部分内容: JS-DOM https://blog.csdn.net/weixin_45077672/article/details/116693698?spm1001.2014.3001.5501 1.什么是DOM 文档对象模型&#xff08;Document Object Model&#xff0c;简称DOM&#xff09;&am…

4D毫米波雷达Radar

4D毫米波雷达Radar 概述 全球前四大的毫米波雷达供应商被称为“ABCD”&#xff0c;即 Autoliv&#xff08;美安&#xff09;、Bosch&#xff08;博世&#xff09;、Continental&#xff08;大陆&#xff09;和 Delphi&#xff08;德尔福&#xff09;。 除了全天候和低成本的优势…
最新文章