【精选】第一个简单的SpringBoot实现增删改查(带前端界面,超详细)

您所在的位置:网站首页 javaweb删除功能怎么写 【精选】第一个简单的SpringBoot实现增删改查(带前端界面,超详细)

【精选】第一个简单的SpringBoot实现增删改查(带前端界面,超详细)

2023-10-27 04:24| 来源: 网络整理| 查看: 265

由于网页端无法完成post之类的请求,所以增加需要手动增加,这个页面只能进行更改和删除,而且将源码中的端口号改为了8082,在访问网址的时候请注意一下 在这里插入图片描述 点击更改按钮 在这里插入图片描述 更改完毕后会继续回到index,html界面。点击删除按钮就直接删除所选信息。

创建SpringBoot项目

在这里插入图片描述

项目目录 在这里插入图片描述

pom.xml文件 4.0.0 org.springframework.boot spring-boot-starter-parent 2.6.2 com.csq csqtest 0.0.1-SNAPSHOT csqtest Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter-web org.mybatis.spring.boot mybatis-spring-boot-starter 2.2.1 mysql mysql-connector-java com.alibaba druid 1.1.9 javax.servlet javax.servlet-api 3.0.1 com.alibaba fastjson 1.2.47 org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine org.springframework.boot spring-boot-devtools true runtime org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-maven-plugin true application.yml文件 spring: web: resources: static-locations: classpath:/static/,classpath:/templates/ datasource: type: com.alibaba.druid.pool.DruidDataSource url:地址 username: 账号 password: 密码 driver-class-name: com.mysql.cj.jdbc.Driver #普通浏览器只能get和post请求, #所以如果需要其他的请求方式,需要这个,然后隐藏起来 mvc: hiddenmethod: filter: enabled: true devtools: restart: enabled: true #设置开启热部署 freemarker: cache: false #页面不加载缓存,修改即使生效 mybatis: configuration: map-underscore-to-camel-case: true #下划线驼峰设置 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 打印SQL语句 user表

在这里插入图片描述

User实体类 public class User { private Integer id; private String username; private String password; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public User(Integer id,String username,String password) { this.id=id; this.username=username; this.password=password; } public User() { } @Override public String toString() { return "User{" + "id=" + id + ", username='" + username + '\'' + ", password='" + password + '\'' + '}'; } } Dao层(也就是mapper) import com.csq.csqtest.pojo.User; import org.apache.ibatis.annotations.*; import java.util.List; @Mapper public interface UserMapper { //查询全部 @Select("select * from user") List findAll(); //新增数据 @Insert("insert into user (username,password) values (#{username},#{password})") public int save(User user); //删除数据 @Delete("delete from user where id=#{id}") public int delete(int id); //根据id查找 @Select("select * from user where id=#{id}") public User get(int id); //更新数据 @Update("update user set username=#{username},password=#{password} where id=#{id}") public int update(User user); } Service层

Service接口

import com.csq.csqtest.pojo.User; import java.util.List; public interface UserService { //查询全部 List findAll(); //新增数据 int save(User user); //删除数据 Integer delete(int id); //根据id查找 User get(int id); //更新数据 int update(User user); }

Service实现类

import com.csq.csqtest.mapper.UserMapper; import com.csq.csqtest.pojo.User; import com.csq.csqtest.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public List findAll() { return userMapper.findAll(); } @Override public int save(User user) { return userMapper.save(user); } @Override public Integer delete(int id) { return userMapper.delete(id); } @Override public User get(int id) { return userMapper.get(id); } @Override public int update(User user) { return userMapper.update(user); } } Controller层 import com.csq.csqtest.pojo.User; import com.csq.csqtest.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; import java.util.Map; //控制层,导入Service层 @Controller public class UserControl { @Autowired private UserService userService; @GetMapping("/index.html") public String userList(Map result) { List Users=userService.findAll(); result.put("users",Users); return "index"; } //新增数据 @PostMapping("/add") public String save(User user) { userService.save(user); //表示重置index.html界面并且跳转到index.html界面 return "redirect:/index.html"; } //删除数据,本来需要使用DeleteMapping,但是由于没有界面可以隐藏,所以这里就直接写了RequestMapping @RequestMapping("/delete/{id}") public String delete(@PathVariable Integer id, HttpServletResponse servletResponse) throws IOException { userService.delete(id); System.out.println("delete方法执行"); return "redirect:/index.html"; } //根据id进行修改 @GetMapping("/updatePage/{id}") public String updatePage(Model model,@PathVariable int id){ User users = userService.get(id); model.addAttribute("users",users); //表示跳转到modifie,html界面 return "modifie"; } @PutMapping("/update") public String updateUser(Model model,User user,HttpServletRequest request) { String id = request.getParameter("id"); User userById = userService.get(Integer.parseInt(id)); userService.update(user); System.out.println(user); return "redirect:/index.html"; } } add.html DOCTYPE html> 添加用户 用户名: 密 码: 保存 index.html DOCTYPE html> 用户列表 a{ color: #ffffff; } h1{ /*文字对齐*/ text-align: center; } spring-boot 编号 姓名 密码 操作


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3