当前位置: 首页 > news >正文

Springboot jPA+thymeleaf实现增删改查

项目结构

pom文件

配置相关依赖:

2.thymeleaf有点类似于jstl+el

th:href="@{url}表示这是一个链接

th:each="user : ${users}"相当于foreach,对user进行循环遍历

th:if进行if条件判断

{变量} 与 ${变量}的区别:

4.配置好application.yml配置文件

5.DAO层

6.实体类

@GeneratedValue(strategy = GenerationType.IDENTITY) 中的strategy = GenerationType.IDENTITY使用场景补充说明:
前端页面中只有三个username,password,age三个数据,我们设置strategy = GenerationType.IDENTITY以后只需要传入这三个属性我们就把他当作是一个User对象来看

.UserService和它的实现类

总结
这个最重要了,写博客的初衷也是梳理一些做本次项目的流程思路,因为在写的时候并没有这么顺畅,从昨天晚上有了想法开始做了一点后今天除了去上课其他时间都在做,每一步都失败了很多很多次,在把这个大致流程和内容写完后,我也发现了一个问题:
最后的数据库的id为什么把我之前删掉的数据id都跳过了!!!!是从7开始的,我都没有注意到这点。明天早上处理!

本次项目踩得坑:

1.昨天数据库怎么都连接不上,改了很多地方都不行,一直显示连接失败,含恨睡觉,早上又折腾了很久,终于发现,是配置文件yml放错了位置!放到了templates文件中了!!再也不会犯这个错误了。

2.在添加联系人时候一开始要么说不能进行POST请求或者说GET请求,因为我在一开始映射那里使用的是@PostMapping/@GetMapping。后来改成了@RequestMapping,OK解决了问题~下次记得直接就用@RequestMapping注解好了!

3.在更新sql语句那里一开始是选定条件where id,可是在后来的操作类中就没用到这个条件,导致在我修改成功的时候发现把所有的信息都修改了…于是我用name属性作为选定条件了,解决了这个问题。

4.在删除sql语句传入的参数是id,我在controller层里写的发现根本就没有用到id这个条件,当然结果也是点击删除按钮直接重定向到了list页面,并没有做删除操作。经过一番百度,我在controller里传入了id参数解决了这个问题(嗯嗯这一点是很基础的传入参数我都没有考虑到,以后一定会多考虑这点,以及继续多刷Java基础题。

本次项目还需要强化的地方
1.再多熟悉thymeleaf的属性,有些还需要百度,需要在实战中多多使用多多记住用过的。

2.参数传入传出一定不能忘记了。

3.crud的操作还需要多加熟悉和使用,明天会再过一遍的。

emmm还有很多想到在写(看别人的博客都很专业严谨,不知道我这样写的像流水账合适不合适…

本次项目继续要修复的问题或添加的功能
1.数据库删除了一条数据后id应该也相应抹除掉,插入的下一条数据不能跳过上条删掉的数据。

2完成login页面的编写,要先登录后才可以查看crud这个数据库。添加学习过得cache啦还有记住我功能,等等等想到再加上,反正要把这个登录页面后面的功能写的丰富一些,尽可能的多用到我学习到的知识点。明天开始丰富login页面做完之后再写接下来要添加的功能

http://www.lryc.cn/news/446330.html

相关文章:

  • 【YashanDB知识库】yashandb执行包含带oracle dblink表的sql时性能差
  • 效率工具推荐 | 高效管理客服中心知识库
  • 综合实验1 利用OpenCV统计物体数量
  • [Redis][主从复制][上]详细讲解
  • 【算法】leetcode热题100 146.LRU缓存. container/list用法
  • [论文总结] 深度学习在农业领域应用论文笔记13
  • 《Detection of Tea Leaf Blight in Low-Resolution UAV Remote Sensing Images》论文阅读
  • 低代码BPA(业务流程自动化)技术探讨
  • 开闭原则(OCP)
  • Unity之 TextMeshPro 介绍
  • Linux套接字Socket
  • 基于 Web 的工业设备监测系统:非功能性需求与标准化数据访问机制的架构设计
  • 【MySQL】基础入门篇
  • uni-app vue3封装websocket,支持微信小程序
  • 杭州算力小镇:AI泛化解锁新机遇,探寻AI Agent 迭代新路径
  • IT行业的现状与发展趋势
  • 华为认证HCIA篇--网络通信基础
  • 【linux】regulartor-fixed
  • 11年408考研真题解析-计算机网络
  • wireshark使用要点
  • WebGL扩展与WebGPU
  • 基于小安派AiPi-Eyes-Rx的N合1触摸屏游戏
  • Java List sort() 排序
  • Vue.js 与 Flask 或 Django 后端配合
  • 抽奖拼团卷轴模式系统开发小程序源代码解析
  • MySql语言操作数据库---增删改查数据库,表,数据
  • C++深入学习string类成员函数(2):容器管理
  • MariaDB 和 MySQL 全面对比:选择数据库需要考虑这几点
  • Python 实现图形学几何变换算法
  • 接口测试|超详细面试题【附答案】