SpringBoot项目集成thymeleaf实现web

一、新建SpringBoot项目并引入jpa依赖

版本和springboot版本保持一致

XML 复制代码
        <!--  JPA -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
            <version>3.5.7</version>
        </dependency>

二、yml配置

XML 复制代码
server:
  port: 8085

spring:
  application:
    name: demo-springboot-web
  # 数据库连接池
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.2:3306/demo?useSSL=false&serverTimezone=UTC
    username: root
    password: 123456
  # jpa
  jpa:
    show-sql: true
    hibernate:
      ddl-auto: update
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQLDialect
  thymeleaf:
    cache: false
# 日志
logging:
  level:
    com.qiu.dao: debug
    org.mybatis: debug

三、启动类

java 复制代码
package com.qiu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;

/**
 * 描述:启动类
 *
 * @author: qxd
 * @date: 2025/12/13 14:40
 * @version: 1.0.0
 */
@SpringBootApplication
@EnableJpaRepositories(basePackages = "com.qiu.repository")
public class DemoSpringBootWebApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoSpringBootWebApplication.class, args);
    }
}

四、entity

java 复制代码
// src/main/java/com/qiu/demo/entity/User.java
package com.qiu.entity;

import jakarta.persistence.*;
import lombok.Data;
import org.hibernate.annotations.Comment;

/**
 * 用户实体类
 */
@Data
@Entity
@Comment("用户表")
@Table(name = "users")
public class User {
    /**
     * 用户唯一标识符,主键,自增长
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id", columnDefinition = "BIGINT COMMENT '用户唯一标识符'")
    private Long id;

    /**
     * 用户姓名或昵称
     */
    @Column(name = "name", columnDefinition = "VARCHAR(255) COMMENT '用户姓名或昵称'")
    private String name;

    /**
     * 用户电子邮箱地址
     */
    @Column(name = "email", columnDefinition = "VARCHAR(255) COMMENT '用户电子邮箱地址'")
    private String email;

    /**
     * 用户登录用户名
     */
    @Column(name = "username", columnDefinition = "VARCHAR(255) COMMENT '用户登录用户名'")
    private String username;

    /**
     * 用户登录密码
     */
    @Column(name = "password", columnDefinition = "VARCHAR(255) COMMENT '用户登录密码'")
    private String password;

}

五、repository

java 复制代码
// src/main/java/com/qiu/demo/repository/UserRepository.java
package com.qiu.repository;

import com.qiu.entity.User;
import org.springframework.data.jpa.repository.JpaRepository;

import java.util.Optional;

public interface UserRepository extends JpaRepository<User, Long> {
    Optional<User> findByUsername(String username);
    Optional<User> findByUsernameAndPassword(String username, String password);
    boolean existsByUsername(String username);
}

六、访问链接

http://127.0.0.1:8085/swagger-ui/index.html

七、项目地址

https://gitee.com/qiuxiaodong/demo

项目名称:demo-springboot-web

相关推荐
前端之虎陈随易4 小时前
编程语言级别的Skill市场,AI Agent 的未来形态
前端·vue.js·人工智能·typescript·node.js
一路向北he4 小时前
字节钢铁军团--“提供情境,而非控制”
java·开发语言·前端
码事漫谈4 小时前
别写Prompt了,现在流行给AI“写循环”
后端
kyriewen5 小时前
豆包和千问同时关了智能体,我用它们搭的 3 个自动化全废了——迁移方案整理
前端·javascript·ai编程
前端一小卒5 小时前
我用 TypeScript 从零手写了一个 Claude Code,然后发现它的核心只有 30 行
前端·agent
Kyrie_Li5 小时前
Spring Boot Kafka 生产级配置全解析:从入门到精通
spring boot·后端·kafka
Coder_Shenshen6 小时前
西门子S7CommPlus协议鉴权算法原理与流程详解
网络·后端·算法
大圣编程7 小时前
Python中continue语句的用法是什么?
开发语言·前端·python
yuhaiqiang7 小时前
随手 vibecoding 的浏览器插件已经 6000 多次下载,聊聊他的产品设计
前端·后端·面试
之歆7 小时前
Vue商品详情与放大镜组件
前端·javascript·vue.js