java第三阶段day01

1. 环境版本说明

2. 1.1 IDEA版本

在这里插入图片描述

1.2 Mysql版本

可以使用最新版本的mariadb, 课堂使用5.5 版本 最好不要使用Mysql8.0版本
在这里插入图片描述

2. IDEA环境配置

2.1 IDEA环境说明

工作空间: 理论上可以存储多个项目.
程序员操守: 路径中不要有中文,空格,特殊字符.
在这里插入图片描述

2.2 IDEA环境搭建参见PPT

2.3 IDEA 关于插件说明

2.3.1 社区版本

说明: 社区版本 没有Spring/JS/HTML的支持. 需要针对于SpringBoot 需要安装特定的插件.
提前安装Spring Assistant 该版本正式版本中 没有该插件.
在这里插入图片描述

2.3.2 正式版本

说明: 正式版本中 自带了SpringBoot的插件.所以无需下载
在这里插入图片描述

2.3.3 Lombok安装

说明: 当创建一个实体对象时,必须写get/set/toString/构造/equals/hash等方法 该方法必须有.
为了优化上述的操作,则引入lombok插件(主流用法)
提前安装:
在这里插入图片描述

2.4 SpringBoot项目入门

2.4.1 框架的作用

SpringMVC 作用: 接收用户提交的数据,返回服务器数据.(交互)
Spring 作用: 整合其他的第三方框架,可以让程序调用以一种统一的方式进行调用 (整合)
Mybatis 作用: 整合JDBC 方便用户与数据库进行交互(持久化)
SpringBoot 作用: 简化Spring等框架的操作(简化)
理解: SpringBoot就是一个框架的高级API

2.4.2 框架之间的关系

在这里插入图片描述

2.5 创建SpringBoot项目

2.5.1 创建项目

在这里插入图片描述

2.5.2 选择依赖

在这里插入图片描述

2.5.3 SpringBoot报错(一)

在这里插入图片描述

2.5.3 SpringBoot报错(二)

在这里插入图片描述

3 创建SpringBoot高级用法

3.1 关于maven坐标说明

3.1.0 Maven常见命令

在这里插入图片描述

3.1.1 Maven常见命令说明

1.install 项目打包命令
在这里插入图片描述

2.clean 清空target文件目录的.
注意事项: clean 只会清空target文件目录的内容,本地仓库中的文件不会清理.
所以每次项目打包都要重新install.

3.1.2 坐标

<!--坐标的说明:  只要是一个Maven工程必然会有坐标-->
<!--groupId 组ID: 公司域名倒写-->
<groupId>com.jt</groupId>
<!--项目名称 名称唯一-->
<artifactId>springboot_demo1</artifactId>
<!--版本: 可以自己指定-->
<version>0.0.1-SNAPSHOT</version>

3.1.3 作用

1.可以唯一标识项目的路径
2.坐标是将来项目打包的位置
3.改jar包文件可以被其他项目依赖

3.2 关于POM.xml文件说明

3.2.1 知识铺垫

说明: 作为大型项目开发,里边必然会引入很多的jar包文件(公共第三方,自己公司的jar包). 由于jar包文件众多.则可能引发jar包文件冲突的问题!!!
问: 如何解决?

3.2.2 parent标签说明

2015年SpringBoot框架进入人们的视野,其中最为主要的是Parent标签的定义.parent标签,是Spring官网负责维护, 在其中定义了几乎所有的框架与SpringBoot兼容的版本信息.
作用: 集中定义版本号

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.5.1</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

3.3.3 dependencies作用

在这里插入图片描述

3.3.4 build 作用

在这里插入图片描述

3.3 关于SpringBoot配置文件说明

3.3.1 properties文件说明

在这里插入图片描述

3.3.2 YML文件说明

在这里插入图片描述

3.4 入门案例

3.4.1 案例要求

1.编辑HelloController
2.请求路径 http://localhost:8090/hello
3.获取结果 获取 "欢迎使用SpringBoot"的字样

3.4.2 包的位置

注意事项!!!: 以后写代码,必须在主启动类的同包及子包中编辑.
在这里插入图片描述

3.4.3 入门案例

//历史: 后端进行页面跳转时一般使用Controller注解
//当下: 前后端分离, 页面不归后端管理,RestController
// RestController = Controller + @ResponseBody
//面试题: @Controller 和 @RestController
//@Controller
//@ResponseBody
@RestController
public class HelloController {

/*该注解与方法绑定 */
@RequestMapping("/hello")
public String hello(){

    return "您好SpringBoot";
}

}

3.5 pro属性赋值

3.4.1 业务需求

在这里插入图片描述

3.4.2 YML方式为属性赋值

3.4.2.1 定义属性

在这里插入图片描述

3.4.2.2 定义属性

package com.jt.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
//历史: 后端进行页面跳转时一般使用Controller注解
//当下: 前后端分离, 页面不归后端管理,RestController
// RestController = Controller + @ResponseBody
//面试题: @Controller 和 @RestController
//@Controller
//@ResponseBody
@RestController
public class HelloController {

//private String name = "李四";
/**
 * 表达式: springel表达式 简称为spel表达式
 * 语法:  ${表达式内容}
 * 工作原理:
 *      容器: 在内存中一个存储大量数据的Map集合
 *      1.当SpringBoot程序启动时,首先加载application.yml的配置文件
 *      2.当程序加载key-value结构时,将数据保存到Map集合中(容器内部)
 *      3.利用Spel表达式,通过key,获取value,之后为属性赋值.
 */
@Value("${userinfo.name}")
private String name;

/*该注解与方法绑定 */
@RequestMapping("/hello")
public String hello(){

    return "您好SpringBoot:"+name;
}

}

3.5 pro属性赋值

3.5.1 YML文件相关说明

YML文件的主要作用: 编辑SpringBoot与第三方框架的整合.
如果将大量的业务数据都写到YML文件中,则会造成业务与框架的耦合.不方便管理.
想法: 能否优化业务数据.让代码整洁.
实现策略: 通过properties的配置文件实现业务的解耦.

3.5.2 编辑pro配置文件

在这里插入图片描述

3.5.3 实现数据注入

1.类中的注解
在这里插入图片描述

2.为属性赋值
在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值