基于SpringBoot框架的开发环境搭建:项目创建+集成数据库

本文将会展示如何从0开始搭建一个Spring项目,并且会集成常用的插件,实现一个简单的CMS。本文适合有一定编程基础,想要快速入门Springboot开发的同学看,因为省略了一些基础的流程,如如何安装Java,如果安装mysql数据库,java语言基础,Spring相关基础知识等。

前置

  1. 安装了java
  2. 安装了 idea

一. 创建Spring项目

  1. 打开idea,点击新建项目,确定信息后,点击“Next”,
    在这里插入图片描述

  2. 选择插件 Lombok, spring web,spring data jpa,mysql, 选择完成后点击创建按钮
    在这里插入图片描述

  3. 此时项目开始构建,下载依赖需要一定的时间。构建完成后,我们配置一下数据库信息
    在resource/application.properties中输入以下信息

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/cms
spring.datasource.username=root
spring.datasource.password=12345678

spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true

  1. 新建controller。 在cms文件下新建目录HomeController.java
package com.example.cms.controller;

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

@RestController
public class HomeController {

    @GetMapping("/")
    public String home(){
        return  "Hello world";
    }
}

  1. 点击右上角箭头,运行项目。 如果箭头显示不可点击,或者点击后报java版本的错误,一定要确定一下几个地方的版本一致。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

运行成功后,在浏览器输入 http://127.0.0.1 就可以正常预览了

二. 集成数据库

Springboot针对持久层操作的主流框架有MyBatis(Plus)和JPA, 相比较而言我更喜欢JPA多一些,使用JPA可以更专注于业务,而不去关注sql是如何实现的。

1. 实现一个简单新增数据

创建entity

package com.example.cms.entity;


import jakarta.persistence.*;
import lombok.Data;

@Entity
@Table(name="user")
@Data
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "user_name", length = 20, nullable = false)
    private String userName;
}

创建dao

package com.example.cms.dao;

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

public interface UserRepository extends JpaRepository<User,Long> {
}

创建service

package com.example.cms.service;

import com.example.cms.entity.User;

public interface UserService {
    User add(Long id,String userName);
}

------------实现类---------------------

package com.example.cms.service.impl;

import com.example.cms.entity.User;
import com.example.cms.dao.UserRepository;
import com.example.cms.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    UserRepository userRepository;

    @Override
    public User add(Long id, String userName) {
        User _user = new User();
        _user.setUserName(userName);
        _user.setId(id);
        userRepository.save(_user);
        return null;
    }
}

在HomeController中测试

	@GetMapping("/")
    public String home(){
        userService.add(Long.valueOf(1),"nike");
        return  "Hello world";
    }

重启项目,访问一下这个地方,然后在数据库中就可以看到新增了一个user表,并且里面插入了一条数据。

简单查询

在上面的案例中,我们向user表中插入了1条name为nike的数据,现在我们来做一个查询操作。

UserRepository.java

public interface UserRepository extends JpaRepository<User,Long> {
    User findByUserName(String username);
}

UserService.java

public interface UserService {
    User add(Long id,String userName);

    User getByName(String name);
}

UserServiceImpl.java

@Override
    public User getByName(String name) {
        User user = userRepository.findByUserName(name);
        return user;
    }

HomeController.java

    @GetMapping("/")
    public String home(){
        User user = userService.getByName("nike");
        return  "Hello,"+user.getUserName();
    }

重启服务器,再次刷新浏览器页面就可以看到输出“Hello, nike”了。

三. JPA的查询操作

简单查询
复杂查询
分页

四. 其他库的引入

redis
mq
log

五. 安全

鉴权

六. 分布式

nacos

七. 大数据

分表
分库
多数据源
数据库读写分离

八. 部署

直接部署
脚本部署
反向代理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值