当前位置: 首页 > news >正文

SpringBoot快速入门

快速入门

1). 创建springboot工程,并导入 mybatis的起步依赖、mysql的驱动包、lombok等。

项目工程创建完成后,自动在pom.xml文件中,导入Mybatis依赖和MySQL驱动依赖。如下所示:

2). 数据准备:创建用户表user,并创建对应的实体类User。

  • 用户表 user(如果已经存在,就不用创建了)

create table user(
    id int unsigned primary key auto_increment comment 'ID,主键',
    username varchar(20) comment '用户名',
    password varchar(32) comment '密码',
    name varchar(10) comment '姓名',
    age tinyint unsigned comment '年龄'
) comment '用户表';

insert into user(id, username, password, name, age) values (1, 'daqiao', '123456', '大乔', 22),
                                                           (2, 'xiaoqiao', '123456', '小乔', 18),
                                                           (3, 'diaochan', '123456', '貂蝉', 24),
                                                           (4, 'lvbu', '123456', '吕布', 28),
                                                           (5, 'zhaoyun', '12345678', '赵云', 27);
  • 实体类:实体类的属性名与表中的字段名一一对应。 实体类放在 com.itheima.pojo 包下。

@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
    private Integer id; //ID
    private String username; //用户名
    private String password; //密码
    private String name; //姓名
    private Integer age; //年龄
}

  • application.yml 配置文件中配置数据库的连接信息。

spring:
  application:
    name: tlias-web-management
  #mysql连接配置
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/tlias
    username: root
    password: 1234
#配置Mybatis日志输出
mybatis:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

准备基础包结构

//获取所有用户信息
Controller层
package com.example.Controller;


import com.example.Service.UserService;
import com.example.pojo.User;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@Slf4j
public class UserController {
    @Autowired
    private UserService userService;

    @GetMapping("/user")
    //获取所有用户信息
    public List<User> findUserAll() {
        return userService.findAll();
    }

}

UserService接口
package com.example.Service;

import com.example.pojo.User;

import java.util.List;

public interface UserService {
    //获取所有用户信息
    List<User> findAll();
}

UserServiceImpl实现类
package com.example.Service.Impl;

import com.example.Service.UserService;
import com.example.mapper.UserMapper;
import com.example.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;
    //获取所有用户信息
    @Override
    public List<User> findAll() {
        List<User> userList = userMapper.findAll();
        return userList;
    }
}

Mapper层
package com.example.mapper;

import com.example.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;

@Mapper
public interface UserMapper {
    /**
     * 查询全部
     */
    @Select("select * from user")
    public List<User> findAll();
}

实体类

package com.example.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
    private Integer id; //ID
    private String username; //用户名
    private String password; //密码
    private String name; //姓名
    private Integer age; //年龄
}

http://www.dtcms.com/a/48462.html

相关文章:

  • Debian基于Hexo搭建个人博客
  • 最新版AI大模型面试八股文
  • 菜鸟之路Day21一一网络编程
  • 超详细:数据库的基本架构
  • 基于NI USRP 硬件的下一代O-RAN研究测试台​
  • 服务器租用:静态BGP和动态BGP分别指什么?
  • 大白话css第七章跨领域融合创新、行业标准与规范遵循
  • Vue 3 响应式系统:最佳实践与陷阱解析
  • FlashMLA(DeepSeek开源周,第一个框架):含源码分析
  • Java+iTextPDF,实时生成与预览PDF文件的最佳实践!
  • 智慧农业中光谱相机对土壤成分的无损检测应用‌
  • python学习第三天
  • qt作业day2
  • 五分钟快速学习优秀网站的HTML骨架布局设计
  • 跨部门沟通与团队协作
  • 京东外卖上架菜品流程教学
  • LeetCode 解题思路 8(Hot 100)
  • Java Maven 项目问题:org.dom4j:dom4j:pom:2.1.3 failed to transfer from...
  • 分布式锁—2.Redisson的可重入锁一
  • 机器学习(五)
  • 线程相关八股
  • 【论文分析】语义驱动+迁移强化学习:无人机自主视觉导航的高效解决方案(语义驱动的无人机自主视觉导航)
  • 基于开源库编写MQTT通讯
  • Unity 内置渲染管线各个Shader的用途和性能分析,以及如何修改Shader(build in shader 源码下载)
  • Spring(二)容器
  • 2025年能源工作指导意见
  • 6.C#对接微信Native支付(退款申请、退款回调通知)
  • 分布式中间件:Redis介绍
  • Linux驱动开发之串口驱动移植
  • Android Studio 新版本Gradle发布本地Maven仓库示例