可视化 网站开发工具,企查查天眼查免费,网站建设加数据库,网站建设确认报告目标#xff1a;
实现添加功能实现查询功能实现删除功能实现修改功能添加日期转换器 1.搭建项目 1.1pom文件#xff1a;
parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdvers…目标
实现添加功能实现查询功能实现删除功能实现修改功能添加日期转换器 1.搭建项目 1.1pom文件
parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.3.2.RELEASE/versionrelativePath/ !-- lookup parent from repository --/parentpropertiesmaven.compiler.source8/maven.compiler.sourcemaven.compiler.target8/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactId/dependencydependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion2.0.1/version/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.47/version/dependencydependencygroupIdcom.alibaba/groupIdartifactIddruid/artifactIdversion1.2.19/version/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-thymeleaf/artifactId/dependency/dependenciesbuild!-- 如果不添加此节点src/main/java目录下的所有配置文件都会被漏掉。 --resourcesresourcedirectorysrc/main/java/directoryincludesinclude**/*.xml/include/includes/resourceresourcedirectorysrc/main/resources/directory/resource/resources/build 1.2链接数据库application.yml:
spring:datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://localhost:3305/springbootusername: rootpassword:type: com.alibaba.druid.pool.DruidDataSource
logging:level:com:by:mapper: DEBUG 1.3构建启动类SpringbootMybatisApplication
SpringBootApplication
MapperScan(com.by.mapper)
public class SpringbootMybatisApplication {public static void main(String[] args) {SpringApplication.run(SpringbootMybatisApplication.class, args);}
}
2.添加功能实现 2.1add_user.html:
!DOCTYPE html
html xmlns:thhttp://www.thymeleaf.org
headmeta charsetUTF-8title添加用户/title
/head
body
h3新增用户/h3
hr/
form action/user/addUser methodpost姓名input typetext namename/br/密码input typetext namepwd/br/性别input typeradio namesex value1/女input typeradio namesex value0/男br/生日input typetext namebirth/br/input typesubmit value确定/br/
/form
/body
/html 2.2对应实现controllerservicemapper层代码 2.2.1controller层代码
/** Copyright (c) 2020, 2024, All rights reserved.**/
package com.by.controller;import com.by.pojo.User;
import com.by.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 java.util.List;/*** pProject: springboot - UserController/p* pPowered by scl On 2024-01-15 16:25:51/p* p描述p** author 孙臣龙 [1846080280qq.com]* version 1.0* since 17*/
Controller
RequestMapping(/user)
public class UserController {Autowiredprivate UserService userService;/*** 添加** param user* return*/RequestMapping(/addUser)public String addUser(User user) {userService.addUser(user);return redirect:/user/selectUser;}} 2.2.2实现service层代码
/** Copyright (c) 2020, 2024, All rights reserved.**/
package com.by.service;import com.by.pojo.User;import java.util.List;public interface UserService{void addUser(User user);} 实现类
Service
Transactional
public class UserServiceImpl implements UserService {Autowiredprivate UserMapper userMapper;Overridepublic void addUser(User user) {userMapper.addUser(user);}
} 2.2.3实现mapper层代码
package com.by.mapper;import com.by.pojo.User;import java.util.List;/*** pProject: springboot - UserMapper/p* pPowered by scl On 2024-01-15 14:51:39/p* p描述p** author 孙臣龙 [1846080280qq.com]* version 1.0* since 17*/
public interface UserMapper {void addUser(User user);}映射文件
?xml version1.0 encodingUTF-8 ?
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.by.mapper.UserMapperinsert idaddUser parameterTypecom.by.pojo.Userinsert into user(name,sex,pwd,birth) values(#{name},#{sex},#{pwd},#{birth})/insert/mapper
3.查询功能实现 3.1select_user.html
!DOCTYPE html
html xmlns:thhttp://www.thymeleaf.org
headmeta charsetUTF-8title首页/titlelink relshortcut icon href../resources/favicon.ico th:href{/static/favicon.ico}/style typetext/csstable {border-collapse: collapse; font-size: 14px; width: 80%; margin: auto}table, th, td {border: 1px solid darkslategray;padding: 10px}/style
/head
body
div styletext-align: centerspan stylecolor: darkslategray; font-size: 30px欢迎光临/spanhr/a href/add_user添加/atable classlisttrthid/thth姓名/thth密码/thth性别/thth生日/thth操作/th/trtr th:eachuser : ${userList}td th:text${user.id}/tdtd th:text${user.name}/tdtd th:text${user.pwd}/tdtd th:text${user.sex1}?女:男/tdtd th:text${#dates.format(user.birth,yyyy-MM-dd)}/tdtda th:href{/user/deleterUserById/{id}(id${user.id})}删除/aa th:href{/user/getUserById/{id}(id${user.id})}修改/a/td/tr/table
/div
/body
/html 3.2实现对应的controller、service、mapper层代码 3.2.1controller层代码
/*** 查询所有用户信息** param model* return*/RequestMapping(/selectUser)public String selectUser(Model model) {ListUser userList userService.selectUser();model.addAttribute(userList, userList);return select_user;} 3.2.2service层代码 ListUser selectUser();Overridepublic ListUser selectUser() {return userMapper.selectUser();} 3.2.3mapper层代码
ListUser selectUser(); select idselectUser resultTypecom.by.pojo.Userselect *from user;/select 4.删除功能实现 4.1实现对应的controller、service、mapper层代码 4.1.1controller层代码
/*** 根据id删除用户** param id* return*/GetMapping(/deleterUserById/{id})public String deleterUserById(PathVariable Integer id) {userService.deleterUserById(id);return redirect:/user/selectUser;} 4.1.2service层代码 void deleterUserById(Integer id); Overridepublic void deleterUserById(Integer id) {userMapper.deleterUserById(id);} 4.1.3mapper层代码
void deleterUserById(Integer id); delete iddeleterUserById parameterTypejava.lang.Integerdelete from user where id #{id}/delete
5.修改功能实现 5.1update_user.html
!DOCTYPE html
html xmlns:thhttp://www.thymeleaf.org
headmeta charsetUTF-8title添加用户/title
/head
body
h3新增用户/h3
hr/
form action/user/updateUserById methodpostinput typehidden nameid th:value${user.id}姓名input typetext namename th:value${user.name}/br/密码input typetext namepwd th:value${user.pwd}/br/性别input typeradio namesex value1 th:checked${user.sex1}?true:false/女input typeradio namesex value0 th:checked${user.sex0}?true:false/男br/生日input typetext namebirth th:value${#dates.format(user.birth,yyyy-MM-dd)}/br/input typesubmit value确定/br/
/form
/body
/html 5.2实现对应的controller、service、mapper层代码 5.2.1controller层代码 /*** 数据回显** param id* return*/GetMapping(/getUserById/{id})public String getUserById(PathVariable Integer id, Model model) {User user userService.getUserById(id);model.addAttribute(user, user);return update_user;}/*** 修改** param* return*/PostMapping(/updateUserById)public String updateUserById(User user) {userService.updateUserById(user);return redirect:/user/selectUser;}5.2.2service层代码
User getUserById(Integer id);void updateUserById(User user); Overridepublic User getUserById(Integer id) {return userMapper.getUserById(id);}Overridepublic void updateUserById(User user) {userMapper.updateUserById(user);} 5.2.3mapper层代码 User getUserById(Integer id);void updateUserById(User user select idgetUserById resultTypecom.by.pojo.User parameterTypejava.lang.Integerselect * from user where id#{id}/selectupdate idupdateUserById parameterTypecom.by.pojo.Userupdate usersetif testname!null and name!name#{name},/ifif testsex!nullsex#{sex},/ifif testpwd!null and pwd!pwd#{pwd},/ifif testbirth!nullbirth#{birth},/if/setwhere id #{id}/update6.添加日期转换器
DateConverter日期转换器
/** Copyright (c) 2020, 2024, All rights reserved.**/
package com.by.converter;import org.springframework.core.convert.converter.Converter;
import org.springframework.stereotype.Component;import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;/*** pProject: springboot - DateConverter/p* pPowered by scl On 2024-01-15 17:09:15/p* p描述p** author 孙臣龙 [1846080280qq.com]* version 1.0* since 17*//*** 日期转换器*/
Component
public class DateConverter implements ConverterString, Date {Overridepublic Date convert(String source) {try {DateFormat format new SimpleDateFormat(yyyy-MM-dd);return format.parse(source);} catch (Exception e) {e.printStackTrace();}return null;}
}
WebmvcConfig将日期转换器装到容器中
/** Copyright (c) 2020, 2024, All rights reserved.**/
package com.by.config;import com.by.converter.DateConverter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.FormatterRegistry;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;/*** pProject: springboot - WebmvcConfig/p* pPowered by scl On 2024-01-15 17:17:46/p* p描述p** author 孙臣龙 [1846080280qq.com]* version 1.0* since 17*//*** 将日期转换器注入到容器中*/
Component
public class WebmvcConfig implements WebMvcConfigurer {Autowiredprivate DateConverter dateConverter;Overridepublic void addFormatters(FormatterRegistry registry) {registry.addConverter(dateConverter);}
}