使用spring boot+JPA实现增、删、查、改和上传图片的小demo,把它记录下来,防止以后忘记了

我的工程目录

一、前端的页面

list.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
 <link rel="stylesheet" href="/css/bootstrap.css"></link>
</head>

<body>
<div class="with:80%">
    <table class="table table-hover">
        <thead>
        <tr align="center">
        	<td colspan="9">
        	<form action="/listall" method="post">
        		<label>查询条件:</label>
        		<input type="text" name="userName"  id="userName" placeholder="输入姓名">
        		<input type="submit"  value="查询" class="btn btn-info" />
        	</form>
        	</td>
        </tr>
        <tr>
            <th>编号</th>
            <th>用户名</th>
            <th>密码</th>
            <th>邮箱</th>
            <th>头像</th>
            <th>编辑</th>
            <th>删除</th>
        </tr>
        </thead>
        <tbody>
        <c:set var="index" value="0" /> 
        <c:forEach var="i" items="${list}" >
        <c:set var="index" value="${index+1}" /> 
         <tr>
            <th >${index}</th>
            <td >${i.userName}</td>
            <td >${i.passWord}</td>
            <td >${i.email}</td>
             <td ><img  src="/upload/${i.filepath }" width="100" height="100"></td>
            <td><a href="/toEdit?id=${i.id }" class="btn btn-info">edit</a></td>
            <td><a  href="javascript:void(0)" οnclick="del(${i.id })" class="btn btn-info">delete</a></td>
        </tr>
        </c:forEach>
       
        </tbody>
    </table>
    <script type="text/javascript">
    function del(id){
    	if(confirm("确认删除id="+id))
    		location.href="/del?id="+id;
    }
    </script>
</div>
<div class="form-group">
    <div class="col-sm-2 control-label">
        <a href="userAdd.jsp" class="btn btn-info">添加</a>
    </div>
</div>

</body>
</html>
userAdd.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
 <link rel="stylesheet" href="/css/bootstrap.css"></link>
</head>

<body class="container">
<br/>
<h1>用户添加</h1>
<br/><br/>
<div class="with:80%">
    <form class="form-horizontal"  action="/add"  method="post" enctype="multipart/form-data">
        <div class="form-group">
            <label for="userName" class="col-sm-2 control-label">用户名</label>
            <div class="col-sm-10">
                <input type="
  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,我是一个语言模型,无法提供完整的代码案例。但我可以提供一些指导,希望对你有所帮助。 首先,你需要了解以下技术: - layui:一个基于 jQuery 的前端 UI 框架,用于构建 Web 界面。 - Spring Boot:一个快速构建基于 Spring 框架的应用程序的框架。 - JPA:Java Persistence API,用于将 Java 对象映射到数据库表。 - FullCalendar:一个开源的日历插件,用于展示日程。 接下来,你需要创建一个 Spring Boot 项目,并添加相关依赖。在 pom.xml 文件中添加以下依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>jquery</artifactId> <version>3.6.0</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>layui</artifactId> <version>2.5.6</version> </dependency> <dependency> <groupId>org.webjars</groupId> <artifactId>fullcalendar</artifactId> <version>3.10.0</version> </dependency> ``` 接下来,你需要创建一个实体类来映射数据库表。在这个例子中,我们创建一个 Event 实体类,用于存储日程信息。 ```java @Entity @Table(name = "event") public class Event { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String title; @Temporal(TemporalType.TIMESTAMP) private Date start; @Temporal(TemporalType.TIMESTAMP) private Date end; private String color; // getter 和 setter 方法省略 } ``` 接下来,你需要创建一个 JPA Repository 接口来操作数据库。在这个例子中,我们创建一个 EventRepository 接口,用于增删改查日程信息。 ```java public interface EventRepository extends JpaRepository<Event, Long> { } ``` 接下来,你需要创建一个控制器来处理前端请求。在这个例子中,我们创建一个 EventController 控制器,用于处理日程的增删改查请求。 ```java @Controller public class EventController { @Autowired private EventRepository eventRepository; @GetMapping("/") public String index() { return "index"; } @GetMapping("/events") @ResponseBody public List<Event> events() { return eventRepository.findAll(); } @PostMapping("/events") @ResponseBody public Event addEvent(@RequestBody Event event) { return eventRepository.save(event); } @PutMapping("/events") @ResponseBody public Event updateEvent(@RequestBody Event event) { return eventRepository.save(event); } @DeleteMapping("/events/{id}") @ResponseBody public void deleteEvent(@PathVariable Long id) { eventRepository.deleteById(id); } } ``` 最后,你需要创建一个前端页面来展示日程信息。在这个例子中,我们使用了 layui 和 FullCalendar 插件来构建前端页面。 ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Layui + Spring Boot + JPA + FullCalendar Demo</title> <link rel="stylesheet" href="/webjars/layui/2.5.6/css/layui.css"> <link rel="stylesheet" href="/webjars/fullcalendar/3.10.0/fullcalendar.min.css"> <script src="/webjars/jquery/3.6.0/jquery.min.js"></script> <script src="/webjars/layui/2.5.6/layui.all.js"></script> <script src="/webjars/fullcalendar/3.10.0/fullcalendar.min.js"></script> </head> <body> <div class="layui-container"> <div class="layui-row"> <div class="layui-col-md12"> <div id="calendar"></div> </div> </div> </div> <script> layui.use(['layer'], function () { var layer = layui.layer; $('#calendar').fullCalendar({ header: { left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, editable: true, eventLimit: true, events: '/events', eventColor: '#378006', eventDrop: function (event) { $.ajax({ url: '/events', type: 'PUT', data: JSON.stringify(event), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (response) { layer.msg('修成功'); }, error: function (response) { layer.msg('修失败'); } }); }, eventResize: function (event) { $.ajax({ url: '/events', type: 'PUT', data: JSON.stringify(event), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (response) { layer.msg('修成功'); }, error: function (response) { layer.msg('修失败'); } }); }, dayClick: function (date, jsEvent, view) { layer.prompt({ formType: 0, title: '请输入日程标题' }, function (value, index) { $.ajax({ url: '/events', type: 'POST', data: JSON.stringify({ title: value, start: date.format(), end: date.format(), color: '#378006' }), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (response) { $('#calendar').fullCalendar('renderEvent', response, true); layer.msg('添加成功'); }, error: function (response) { layer.msg('添加失败'); } }); layer.close(index); }); }, eventClick: function (event, jsEvent, view) { layer.confirm('确定要除该日程吗?', function (index) { $.ajax({ url: '/events/' + event.id, type: 'DELETE', success: function (response) { $('#calendar').fullCalendar('removeEvents', event.id); layer.msg('除成功'); }, error: function (response) { layer.msg('除失败'); } }); layer.close(index); }); } }); }); </script> </body> </html> ``` 这样,一个简单的 layui + Spring Boot + JPA + FullCalendar 的增删改查完整案例就完成了。你可以根据实际需求进行修和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值