通过Springboot +JPA+thymeleaf+MySQL+BootStrap写一个具有增删改查的系统

本篇项目是我根据我最近玩的游戏英雄联盟然后根据里面的一个小工具来写他们的位置

禁用率和登场率

首先写整个期末作业让我从什么都不懂到每个步骤 怎么样的思路我都看的很详细都能看懂

1:首先我创建了一个叫Hero的基本信息:包括名字、位置、禁用率、登场率

package com.example.demo.model;
import jakarta.persistence.*;
import lombok.Data;
@Data
@Entity
@Table(name = "hero")
public class Hero {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    @Column(name = "name")
    private String name;

    @Column(name = "location")
    private String location;

    @Column(name = "Disable_rate")
    private String Disable_rate;

    @Column(name = "DAppearance_rate")
    private String Appearance_rate;
}

2:业务逻辑层:里面实现了:获取指定id的英雄、新增/更新一个英雄、删除指定id的英雄,还有分页和通过位置查找英雄

package com.example.demo.repository;
import com.example.demo.model.Hero;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;

import java.util.List;


@Repository
public interface HeroRepository extends JpaRepository<Hero, Long> {
    @Query("select h from Hero h where h.location like %:location%")
    List<Hero> findAllByHeroLocation(@Param("location") String location);
}

3:控制层(Controller):接收用户的请求,调用相应的服务方法,并返回处理结果。

3.1接收和处理用户请求。当用户发起请求时,Controller层会根据请求的URL、HTTP方法等信息来判断请求的目标,并调用相应的方法进行处理。

3.2 调用Service层处理业务逻辑。当Controller需要进行业务逻辑处理时,会调用Service层的方法,Service层会根据具体业务需求进行相应的处理。

3.3 返回处理结果。Controller层在完成请求处理之后,会将处理结果封装成一个ModelAndView对象,然后将其发给前端页面进行显示。

3.4 控制页面跳转。当用户请求需要跳转到另一个页面时,Controller层负责选择正确的View并返回相应的ModelAndView,然后前端页面根据ModelAndView中的信息进行页面渲染,完成页面跳转。

*项目创建依赖包:Lombok+Mysql+thmyeleaf+JPA+Spring Web*

我的框架

我的过程是怎么写的思路是怎么样的呢:

1先连接数据库mysql 这样当你在网页上进行增删改查的时候会连接数据库这样你才能看到自己的功能在idea上有没有实现,先将代码写入application.properties(设置里面的ip和端口号 然后设置你的密码)

spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
spring.datasource.username= root
spring.datasource.password= 123456

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# for Spring Boot 2
# spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MySQL5InnoDBDialect

# for Spring Boot 3
spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MySQLDialect

# Hibernate ddl auto (create, create-drop, validate, update)
spring.jpa.hibernate.ddl-auto= update

#?????hibernate-sql
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.type=TRACE

 

在里面的spring.jpa.hibernate.ddl-auto=updata:

指的是在启动应用时候,自动更新数据库的结构。

2创建我的model 层构建Hero类

这里我们添加了Data这样我们就不需要在用get与set、toString()等方法了大量减少了我们的时间。

我创建了id,英雄名字、位置、登场率和禁用率

package com.example.demo.model;
import jakarta.persistence.*;
import lombok.Data;
@Data
@Entity
@Table(name = "hero")
public class Hero {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    @Column(name = "name")
    private String name;

    @Column(name = "location")
    private String location;

    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值