2024最新版本idea SpringBoot创建web项目(详细介绍如何搭建和配置spring boot web,以及写出一个简单的前后端交互界面)

1.创建springboot项目:

新建项目 -> Spring Boot ->自定义写你的项目名称、项目位置等、语言java、类型选择maven,最后选择JDK版本,这里推荐17以上,对应Java也一样,最后选jar包 -> next

首先选择springboot版本,我这里为3.3.5,接下来导入依赖,springboot功能强大, 能直接导入而不需要手敲,按图先导入这几种(可以直接搜索),下面为对这几种依赖的个人解释:
Lombok日志文件,springboot开发必不可少

Spring Web:添加web依赖,web开发必须

Thymeleaf:处理web环境

JDBC API:数据库驱动

MySQL Driver:用于与MySQL数据库交互

CycloneDX SBOM support:用于跟踪,管理依赖项

接下来点击创建,等待idea构建完毕

2.配置application.yml文件

开始时你只能看到applicaiton.propitious,右键 -> 重构 -> 改为application.yml

删除里面代码,复制为如下代码:

spring:

application:

name: xlxz

datasource:

url: jdbc:mysql://localhost:3306/【这里替换你建的数据库名】useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai

username: root #这里替换你的数据库用户名

password: 123456#这里替换你的数据库密码

driver-class-name: com.mysql.cj.jdbc.Driver

mybatis-plus:

mapper-locations: classpath:mapper/*.xml

3.接下来你就可以自己测试了!(可以自己写,也可以用文末我的简单示例)

4.如果测试不成功,如注解大量报错这些,则可能是最新的springboot版本太超前了,与mybatis-plus-boot-starter 不兼容,则需要自己手动导入一下依赖:

在pom.xml中,

里面导入以下依赖:
com.baomidou mybatis-plus-boot-starter 3.5.7 org.mybatis mybatis-spring org.mybatis mybatis-spring 3.0.3 mysql mysql-connector-java 8.0.33

这三个依赖大致作用就是解析和sql驱动。

然后右键 -> 点击maven ->重新加载项目

就可以解决报错问题(当然这是基础的构建问题)

5.简单测试:

首先建一个简单的数据库:

create database users1;

use users1;

CREATE TABLE `user` (

`userid` int NOT NULL AUTO_INCREMENT COMMENT '用户id',

`username` varchar(255) DEFAULT NULL COMMENT '用户名字',

`userPassword` varchar(255) DEFAULT NULL COMMENT '用户密码',

PRIMARY KEY (`userid`)

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

然后插入一个简单数据:例如下:

然后按下面这个格式建包建类:

各类的代码如下:(记得代码中自己替换成自己项目的路径,否则会报红)

UserController:

package com.xlxz.springboot3.controller;

import com.xlxz.springboot3.entiy.User;

import com.xlxz.springboot3.service.UserService;

import jakarta.annotation.Resource;

import org.springframework.stereotype.Controller;

import org.springframework.ui.Model;

import org.springframework.web.bind.annotation.GetMapping;

import java.util.List;

@Controller

public class UserController {

@Resource

UserService userService;

@GetMapping("/index")
public  String list(Model model){
    List<User> list = userService.list();
    model.addAttribute("list", list);
    return "index";
}

}

User:

package com.xlxz.springboot3.entiy;

import com.baomidou.mybatisplus.annotation.TableField;

import com.baomidou.mybatisplus.annotation.TableName;

import lombok.AllArgsConstructor;

import lombok.Data;

import lombok.NoArgsConstructor;

@Data

@NoArgsConstructor

@AllArgsConstructor

@TableName("user")

public class User {

@TableField("userid")

private int userid;

@TableField("username")

private String username;

@TableField("userPassword")

private String userPassword;

}

UserMapper:

package com.xlxz.springboot3.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import com.xlxz.springboot3.entiy.User;

import org.apache.ibatis.annotations.Mapper;

@Mapper

public interface UserMapper extends BaseMapper {

}

UserServiceImpl:

package com.xlxz.springboot3.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;

import com.xlxz.springboot3.entiy.User;

import com.xlxz.springboot3.mapper.UserMapper;

import com.xlxz.springboot3.service.UserService;

import org.springframework.stereotype.Service;

@Service

public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {

}

UserServiceI:

package com.xlxz.springboot3.service;

import com.baomidou.mybatisplus.extension.service.IService;

import com.xlxz.springboot3.entiy.User;

public interface UserService extends IService {

}

index.html:
用户列表

这是用户列表页面

ID 用户名 密码
1td> 用户名td> 密码td>

application.yml:这个已经有了,主要替换数据库信息

spring:

application:

name: xlxz

datasource:

url: jdbc:mysql://localhost:3306/users1useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai

username: root

password: 123456

driver-class-name: com.mysql.cj.jdbc.Driver

mybatis-plus:

mapper-locations: classpath:mapper/*.xml

UserMapper.xml一般建好就有代码了,没有就复制如下:

启动:

没有爆红就OK,打开浏览器,输入:http://localhost:8080/index运行:

测试完成,实现了一个简单的前后端数据库交互

相关推荐
坚定信念,勇往无前21 分钟前
Spring Boot中整合Flink CDC 数据库变更监听器来实现对MySQL数据库
数据库·spring boot·flink
祈澈菇凉22 分钟前
如何结合使用thread-loader和cache-loader以获得最佳效果?
前端
垣宇25 分钟前
Vite 和 Webpack 的区别和选择
前端·webpack·node.js
java1234_小锋28 分钟前
一周学会Flask3 Python Web开发-客户端状态信息Cookie以及加密
前端·python·flask·flask3
化作繁星31 分钟前
如何在 React 中测试高阶组件?
前端·javascript·react.js
Au_ust38 分钟前
千峰React:函数组件使用(2)
前端·javascript·react.js
爱吃南瓜的北瓜1 小时前
npm install 卡在“sill idealTree buildDeps“
前端·npm·node.js
TTc_1 小时前
记录首次安装远古时代所需的运行环境成功npm install --save-dev node-sass
前端·npm·sass
坚定信念,勇往无前1 小时前
Spring Boot 如何保证接口安全
spring boot·后端·安全
翻滚吧键盘1 小时前
npm使用了代理,但是代理软件已经关闭导致创建失败
前端·npm·node.js