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

news/2025/1/22 1:54:58/

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运行:

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


http://www.ppmy.cn/news/1565102.html

相关文章

蓝桥杯 单词重排

问题描述 解题思路 这个问题可以通过计算排列数来解决。由于字符串 "LANQIAO" 由7个不同的字母组成&#xff0c;我们可以使用排列公式 P(n,n)n! 来计算&#xff0c;其中 n 是字母的数量。但是&#xff0c;由于字符串中存在重复的字母&#xff0c;我们需要对重复的字…

人工智能核心知识:AI Agent的四种关键设计模式

导读&#xff1a;AI Agent是指能够在特定环境中自主执行任务的人工智能系统&#xff0c;不仅接收任务&#xff0c;还自主制定和执行工作计划&#xff0c;并在过程中不断自我评估和调整&#xff0c;类似于人类在创造性任务中的思考和修正过程。AI Agent的四种关键设计模式是实现…

C 语言雏启:擘画代码乾坤,谛观编程奥宇之初瞰

大家好啊&#xff0c;我是小象٩(๑ω๑)۶ 我的博客&#xff1a;Xiao Xiangζั͡ޓއއ 很高兴见到大家&#xff0c;希望能够和大家一起交流学习&#xff0c;共同进步。* 这一课主要是让大家初步了解C语言&#xff0c;了解我们的开发环境&#xff0c;main函数&#xff0c;库…

怎样使用树莓派自己搭建一套ADS-B信号接收系统

0 我们知道&#xff0c;ADS-B全称广播式自动相关监视系统&#xff0c;其实就是飞机发出的广播信号&#xff0c;用明码来对外发送自己的位置、高度、速度、航向等信息&#xff0c;是公开信息。连续接收到一架飞机发出的ADS-B信息后&#xff0c;可以通过其坐标点来描绘出飞机的航…

为什么相关性不是因果关系?人工智能中的因果推理探秘

目录 一、背景 &#xff08;一&#xff09;聚焦当下人工智能 &#xff08;二&#xff09;基于关联框架的人工智能 &#xff08;三&#xff09;基于因果框架的人工智能 二、因果推理的基本理论 &#xff08;一&#xff09;因果推理基本范式&#xff1a;因果模型&#xff0…

麒麟v10 安装php5.6

1.麒麟v10 安装php5.6 1.修改仓库 #有网络的&#xff0c;加DNS就行 #添加访问互联路由 cat > /etc/resolv.conf <<EOF nameserver 114.114.114.114 nameserver 223.5.5.5 nameserver 8.8.8.8 EOFcat /etc/resolv.conf#没有网络的使用本地镜像 mkdir -p /etc/yum.repo…

第6章 ThreadGroup详细讲解(Java高并发编程详解:多线程与系统设计)

1.ThreadGroup 与 Thread 在Java程序中&#xff0c; 默认情况下&#xff0c; 新的线程都会被加入到main线程所在的group中&#xff0c; main线程的group名字同线程名。如同线程存在父子关系一样&#xff0c; Thread Group同样也存在父子关系。图6-1就很好地说明了父子thread、父…

【Spring MVC】如何运用应用分层思想实现简单图书管理系统前后端交互工作

前言 &#x1f31f;&#x1f31f;本期讲解关于SpringMVC的编程思想之应用分层~~~ &#x1f308;感兴趣的小伙伴看一看小编主页&#xff1a;GGBondlctrl-CSDN博客 &#x1f525; 你的点赞就是小编不断更新的最大动力 &#x1f386;那…