从java直接上手SpringBoot【CTGU启明星】

news/2024/10/19 5:27:10/

本文适合刚刚学完java包括面向对象的同学,直接上手SpringBoot教程。

一、写在前面

先说说为什么这样做,现在主流的java后端学习是

面向对象->ssm框架->SpringBoot

其间还穿插数据库的学习,例如MyBatis等。

但是我们认为从项目入手学习的效果可能会好一点:为了让刚开始的同学尽快的上手实际开发,先从SpringBoot开始学会怎么用,然后在学长学姐的带领下边开发边接触数据库,掌握了实际开发之后再回去学习ssm框架和底层的原理。

这种学习路线相当于把传统的反过来,同样需要投入大量时间,前期也会很痛苦【鄙人亲身经历,没有足够的实际的同学请慎用】。

二、创建项目

首先得保证你有一个稳定的专业版的IDEA(推荐)。如果觉得网上不靠谱的话可以微信关注公众号:“呼哧好大枫”,领取专业版的IDEA使用教程(你懂的)

创建Spring项目还有一些注意事项,请看拙作:传送门。

三、准备mysql数据库

建议安装数据库管理软件php study(小皮面板),可以很方便的管理多个版本的mysql。下载链接

安装完成之后的页面

然后安装数据库系统软件navicate,使(po)用(jie)教程还是在微信公众号“呼哧好大枫” 上面。

在小皮面板上创建一个数据库,设置好用户名和密码。然后在navicate上连通。不能连通的请检查端口等,自行解决。

连通之后创建你自己的数据表(提前设计好了的,可以用powerDesinger等软件)

至此,准备工作就完成了。

三、Spring相关文件 

一个完成的项目大致包含上面几个文件夹。本人写代码比较随意, 在命名上面可能有所不同,下面我来一一解释这些文件夹是干啥的

在java/smartbox文件下:

项目文件夹的含义
文件夹名称含义
config一些代码上的配置文件,如存储桶配置、时间配置等
controller接口控制层,用来书写接口
daodao层,用来连接数据库
domain也叫model等,用来存放一个个实体类
server底层的服务
task存放一些需要服务器自动运行的功能,如定时闹钟等
Utils一个自己编写的常用的工具,如可以把文件的上传等自己写一个工具类,用于多次调用

在resource下还有一个总的配置文件夹,application.yml,用.yml后缀的比较好

还有一个非常重要的文件pom.xml,这个是整个项目需要导入的jar包和spring的版本配置等。

需要说明的是,本教程采用的是Mybatis连接数据库,需要在pom.xml文件中加入下面的依赖

        <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.1</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.16</version></dependency>

方可使用下面的代码。

四、一些代码模板

项目连接数据库需要在application.yml中配置:

spring:datasource: # 数据库的相关配置url: jdbc:mysql://localhost:3307/smartbox?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghaiusername: hlt_pluspassword: 123456
server:   # 配置启动端口port: 8088

其中端口号、账户名称、密码换成你自己的

dao基本代码

package smartbox.dao;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import smartbox.domain.User;/*** @program: SmartBoxing* @description:* @author: hlt* @create: 2023-03-02 19:38**/
@Mapper
public interface userDao extends BaseMapper<User> {}

domain层基本代码

package smartbox.domain;import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;/*** @program: SmartBoxing* @description:* @author: hlt* @create: 2023-03-02 19:12**/
@Data
public class User {@TableId(type = IdType.AUTO)private Long id;private String openid;   // 微信唯一标识符private String via;private String nickname;  // 微信昵称
}

controller层基本代码

package smartbox.Controller;import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.client.RestTemplate;
import smartbox.dao.medicineDao;
import smartbox.dao.userDao;
import smartbox.domain.User;import java.util.List;
import java.util.stream.Collectors;/*** @program: SmartBoxing* @description:* @author: hlt* @create: 2023-03-02 19:38**/
@RestController
@RequestMapping("/users")
@CrossOrigin(origins = "*", maxAge = 3600)
public class userController {@Autowiredprivate userDao userDao;@Autowiredprivate medicineDao medicineDao;@GetMapping("/test")public String test(){return "test successfully!";}
}

接下来就是你自己发挥了,写完了后端接口之后用apipost或者postman测试一下。

本教程为工作室内部讲解辅助使用,会比较简略,若有不足或不懂之处,请留言。


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

相关文章

雅迪与大长江两大行业龙头携手成立爱换换能源公司

雅迪科技集团有限公司&#xff08;下称 ”雅迪科技集团”&#xff09;和大长江集团有限公司&#xff08;下称 “大长江集团”&#xff09;联合宣布&#xff0c;双方共同组建的爱换换能源&#xff08;上海&#xff09;有限公司&#xff08;下称 “爱换换”&#xff09;正式成立。…

雅迪高端之后开始变慢

电动车自1995 年问世以来&#xff0c;二十多年的发展&#xff0c;已然成为了日常出行的主要交通工具之一。 数据显示&#xff0c;2020年我国两轮电动车保有量约为3.2亿辆&#xff0c;2020年市场产量和销量分别为5100万辆和4760万辆&#xff0c;2021年全年电动两轮车市场销量约…

行驶的“珠宝”:雅迪采用施华洛世奇元素,打造轻奢骑行体验

6月27日晚&#xff0c;在星光璀璨的上海滩&#xff0c;第八届 World Jewelry Facets环球时尚首饰汇展开幕仪式荣耀开幕。这个享誉国际的盛大活动&#xff0c;不仅展现施华洛世奇悠久丰富的创意传统&#xff0c;更带来了与其合作逾年的众多出色设计人才的艺术作品。 知名大牌汇聚…

设计模式需遵循的几个原则

文章目录 设计模式的来源几个原则依赖倒置原则&#xff08;DIP&#xff09;开放封闭原则&#xff08;OCP&#xff09;单一职责原则&#xff08;SRP&#xff09;Liskov替换原则&#xff08;LSP接口隔离原则&#xff08;ISP&#xff09;合成复用原则&#xff08;Composite Reuse …

Invoke-Expression : 无法将参数绑定到参数“Command”,因为该参数为空字符串。 所在位置 C:\Users\xxx\miniconda3\shell\condabin\Cond

运行Windows Anaconda Powershell Prompt 报错显示&#xff1a;Invoke-Expression : 无法将参数绑定到参数“Command”&#xff0c;因为该参数为空字符串。 所在位置 D:\anaconda\shell\condabin\Conda.psm1:107 字符: 36&#xff08;对应自己报错路径和文件行数&#xff09; 报…

宏基计算机两个DP接口,宏碁R7有什么接口?宏碁R7有几个USB接口?

宏碁R7有什么接口 宏碁R7有USB2.0接口、USB3.0接口、HDMI接口、RJ45、声音输入、声音输出孔、直流电源插孔等。 在接口的类型上宏碁R7也有自己独有的亮点&#xff0c;位于HDMI左侧的复合式扩展接口&#xff0c;它的形状与mini DP一致&#xff0c;但却可以同时扩展出VGA、RJ45以…

Acer小尺寸Win8平板W3确认:6月4日发布

【搜狐数码消息】关于Win8平板电脑走向小型化的消息最近很多&#xff0c;包括微软的下一代Surface&#xff0c;Acer在亚马逊上泄露的W3&#xff0c;以及华硕也有可能在年内推出相关产品。今天&#xff0c;Acer的W3最先传来确切消息——该机将于6月4日发布&#xff0c;消息来自他…

在Dell Mini 9小试了下Moblin系统

前一段时间&#xff0c;Intel专为MID开发的系统&#xff0c;Moblin出了beta1版本&#xff08;什么是Moblin&#xff1f;&#xff09;。小小尝试了一下&#xff0c;感觉很适合Dell mini 9这样的上网本。 首先&#xff0c;很小。安装的ISO只有280M。这里可以下载。 其次&#x…