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

IntelliJ创建Springboot项目

文章目录

  • 前言
  • 创建步骤
  • 设置UTF-8编码
  • 配置数据库
  • Controller
  • Service
  • 最后是Mapper类
  • 运行程序


前言

本文讲在IntelliJ中创建一个spring boot项目即数据库连接等相关配置


创建步骤

New Project
在这里插入图片描述
Spring Initializr -> 取工程名 -> 选择文件放在哪个文件夹,选择maven,Group名,PackageName和GroupName一样,选择对应版本的SDK
在这里插入图片描述
web里面选择Spring Web
在这里插入图片描述
SQL里面选择 JDBC API MyBatis Framework MySQL Driver。
在这里插入图片描述

设置UTF-8编码

在这里插入图片描述
file -> settings -> file encoding 将Project Encoding 和 Defulat encoding 改为UTF-8。

配置数据库

找到src文件夹下resource里面的application
如下配置:

server:
  port: 8080
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/studentsys?characterEncoding=UTF-8
    password:
    username: root


mybatis:
  type-aliases-package: com.njupt.po
  mapper-locations: classpath:mappers/*.xml

修改url连接的数据库,修改type-aliases-package的po类路径。

Controller

逐层写controller,类使用@RestController,实现类使用@Resource,方法使用@GetMapping(“url”)。

@RestController
public class StudentController {
    @Resource
    private StudentService studentService;

    @GetMapping("view")
    public List<Student> getAll(){
        return studentService.queryAllStudent();
    }
}

Service

类使用@Service注解,实现类采用@Resource,同样的有接口和实现类。

@Service
public class StudentServiceImpl implements StudentService
{
	@Resource
	private StudentMapper studentMapper;

	@Override
	public List<Student> queryAllStudent() {
		// TODO Auto-generated method stub
		return studentMapper.getAllStudent();
	}
}

最后是Mapper类

采用@Select注解,@Insert,@Delete,@Update等等。

public interface StudentMapper 
{
	@Select("select * from student")
	public List<Student>  getAllStudent();
}

记得不要忘了po类,vo类和工具类,此处不做演示。

运行程序

点击IntelliJ上方的绿色三角形,然后在火狐浏览器输入url

localhost:8080/view

在这里插入图片描述
可以看到学生信息成功显示出来。

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

相关文章:

  • spark的一些指令
  • 链式二叉树
  • 在 Ansys Mechanical 中解决干涉拟合
  • <modal>修改取消按钮样式
  • 半导体芯片制造中 W CVD(钨化学气相沉积)
  • Android开发弹框在底部显示
  • Markdown
  • 深入理解指针2
  • 【一条龙教程】用AI DS+创作原创音乐 (配合Midjourney漫画)制作原创MTV
  • vue3:vue3项目安装并引入Element-plus
  • 深入探讨分布式事务解决方案:从二阶段提交到现代模式
  • Github项目管理之 其余分支同步main分支
  • pip太慢了怎么办 换源下载
  • 【Uniapp-Vue3】导入uni-id用户体系
  • Linux中文件目录类指令
  • [杂学笔记]OSI七层模型作用、HTTP协议中的各种方法、HTTP的头部字段、TLS握手、指针与引用的使用场景、零拷贝技术
  • Python 批量横屏转竖屏视频处理工具
  • 一文掌握python中正则表达式的各种使用
  • Zetero导出文献附件和题录到Endnote
  • Imagination 最新的D系列GPU IP 为智能手机和其他电力受限设备上图形和计算工作负载的高效加速设定了新的标准
  • 【视频2 - 4】初识操作系统,Linux,虚拟机
  • git基本用法
  • 基于Qlearning强化学习的2DoF机械臂运动控制系统matlab仿真
  • 集成shardingSphere实现读写分离
  • 谷云科技iPaaS×DeepSeek:构建企业智能集成的核心底座
  • sql server笔记
  • 15KM无线数字图传,双路全高清视频无人机遥控器技术详解
  • C++之string类的模拟实现(超详细)
  • 目标检测tricks
  • Python 3.11 69 个内置函数(完整版)