笔记springboot0410

1.课程大纲-springboot框架

1. 什么是Springboot以及Springboot的特点。
2. 快速搭建springboot项目
3. springboot常用的配置文件类型.
4. 读取springboot配置文件的内容
5. 多环境配置
6. springboot整合数据源。
7. springboot整合mybatis.
8. springboot整合定时器。

2. 什么是Springboot以及Springboot的特点。

2.1 什么是springboot?

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程 . 理解:spring框架搭建的步骤:[1]依赖 [2]配置文件。 使用springboot可以简化上面的两个步骤。

2.2 springboot的特点

① 创建独立的 Spring 应用程序

② 嵌入的 Tomcat,无需部署 WAR 文件

③ 简化 Maven 配置

④ 自动配置 Spring

⑤ 提供生产就绪型功能,如指标,健康检查和外部配置

⑥ 开箱即用,没有代码生成,也无需 XML 配置。

3. 使用idea快速搭建springboot工程

3.1 在有网的情况


创建一个controller包

浏览器访问接口

4.pringboot常用的配置文件类型.

properties和yml格式。他们的区别就是格式上不同。

properties格式如下:

#修改端口号
server.port=8888
# 修改上下文路径
server.servlet.context-path=/xia

yml结构

server:
  port: 8887
  servlet:
    context-path: /xia

springboot配置文件名字后缀必须是application. 两个配置文件同时存在而且里面有相同的配置时properties优先级高于yml。

5. java如何读取配置文件中的内容

java为什么需要读取配置文件的内容,我们开发时需要把哪些内容放入配置文件。

OSS:上传文件。accessKeyId,accessKeySecret等,这些内容能写在java源代码中。硬编码文件,不利维护。 我们需要把信息写入配置文件。

读取方式有两种:

第一种方式: 在类上@ConfigurationProperties(prefix="")

第二种使用@Value读取属性:---他只能读取基本类型和String类型。加在属性上

    @Value("${student.map}")
    private Map<String,Object> map;

    @GetMapping("a")
    public Map<String,Object> a(){
        return map;
    }

6. springboot整合数据源

druid数据源: ----连接数据库

(1)引入相关的依赖。

       <!--mysql的驱动依赖-->
 <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.21</version>
        </dependency>

(2)配置数据源信息

spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.druid.url=jdbc:mysql://localhost:3306/db6?serverTimezone=Asia/Shanghai
spring.datasource.druid.username=root
spring.datasource.druid.password=320023
spring.datasource.druid.initial-size=5

(3)测试

@SpringBootTest
class XiaSpringboot01ApplicationTests {

    @Autowired
    private DataSource dataSource;
    @Test
    void contextLoads() throws Exception{
        System.out.println(dataSource);
    }


7. springboot整合mybatis

(1)相关依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.10</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.aaa</groupId>
    <artifactId>xia-springboot01</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>xia-springboot01</name>
    <description>xia-springboot01</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--mysql的驱动依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.28</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <!--mybatis和springboot整合的依赖 启动依赖-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.20</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>


    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.7.10</version>
            </plugin>
        </plugins>

    </build>

</project>


(2)修改配置文件


#端口号
server.port=8887
#上下文地址
server.servlet.context-path=
#数据源
spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.druid.url=jdbc:mysql://localhost:3306/db6?serverTimezone=Asia/Shanghai
spring.datasource.druid.username=root
spring.datasource.druid.password=320023

#指定映射文件所在的路径
mybatis.mapper-locations=classpath:mapper/*.xml

#mybatis日志文件
mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

(3) mapper接口

public interface StudentMapper {
    public List<Student> findAll();
}

(4)为mapper接口生成代理实现类

@SpringBootApplication
@MapperScan(basePackages = "com.xhw.dao")
public class Springboot02Application {

public static void main(String[] args) {
    SpringApplication.run(Springboot02Application.class, args);
}

}

(5)测试

@SpringBootTest
class Springboot02ApplicationTests {
@Autowired
private StudentDao studentDao;
    @Test
    void contextLoads() {
        System.out.println(studentDao.findAll());
    }

}

posted @   某夏  阅读(17)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示