三、Spring Boot常用启动器

3.1 SpringBoot整合MVC

创建项目 springboot_02_mvc

3.1.1 起步依赖

① 新建入口程序类 Application

 

② 新建 javabean 

③ 新建 UserController

 

运行程序

3.1.2 静态资源目录

在WEB开发中我们经常需要引入一些静态资源 , 例如 : HTML , CSS , JS , 图片等 , 如果是普通的项目静态资源可以放在项目的webapp目录下

现在使用Spring Boot做开发 , 项目中没有webapp目录 , 我们的项目是一个jar工程,那么就没有webapp,我们的静态资源该放哪里呢?

在springboot中有一个叫做ResourceProperties的类,里面就定义了静态资源的默认查找路径:

默认的静态资源路径为:

  • classpath:/META-INF/resources/
  • classpath:/resources/
  • classpath:/static/
  • classpath:/public/

我们只要静态资源放在这些目录中任何一个,SpringMVC都会帮我们处理。 我们习惯会把静态资源放在classpath:/static/ 目录下。在resources目录下创建index.html文件

打开浏览器输入 : http://localhost:8080/index.html

覆盖路径

如果想要修改默认的静态资源路径, 配置如下 :

新建 application.yml

 

请求地址 http://localhost:8080/index.html

3.1.3 自定义拦截器

web开发中的拦截器也是我们经常需要使用的组件,可以帮我们完成一些日志记录 , 数据过滤 , 请求过滤等等很多功能,那么在SpringBoot中该如何配置呢?

回顾一下SpringMVC中配置拦截器的步骤 :

  1. 编写一个拦截器(实现HandlerInterceptor接口)
  2. 注册拦截器(mvc:interceptors)

xml

 

因为SpringBoot没有XML配置文件了 , 所以在SpringBoot中使用拦截器的注册拦截器的方式就不太一样了, 需要借助一个WebMvcConfigurer类帮助我们注册拦截器 , 实现拦截器的具体步骤如下 :

  1. 编写一个拦截器
  2. 通过WebMvcConfigurer注册拦截器

编写拦截器

 注册拦截器

打开浏览器,输入 : http://localhost:8888/user/findAll

3.2 SpringBoot整合Spring Data JPA

新建项目 springboot_jpa

添加Spring Data JPA的起步依赖

 在application.yml中配置数据库和jpa的相关属性

注意:Mysql8.x版本,连接时url需要指定时区,并且驱动类包名发生了变化。

创建实体配置实体

package com.atguigu.bean; import javax.persistence.*;

import java.io.Serializable;

/** * O - R Mapping 对象关系映射 */

@Entity //声明实体类

@Table(name = "user") //声明实体类与哪个表进行映射

public class User implements Serializable {

@Id //声明主键

@GeneratedValue(strategy = GenerationType.IDENTITY) //声明主键生成策略:auto_increment

@Column(name = "id") //表的字段配置: private Long id;

@Column(name = "username",nullable = false,unique = true,length = 16) private String username;

@Column(name = "password") private String password; //如果不指定@Column注解,框架会默认进行映射,字段名和属性名保持一致。 //@Column(name = "name") private String name;

//设置属性为临时属性,不需要与表进行映射。

@Transient private String email;

public Long getId() { return id;

}

public void setId(Long id) {

this.id = id;

}

public String getUsername() {

return username;

}

public void setUsername(String username) {

this.username = username;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

public String getName() { return name;

}

public void setName(String name) { this.name = name;

}

@Override public String toString() {

return "User{" + "id=" + id + ", username='" + username + '\'' + ", password='" + password + '\'' + ", name='" + name + '\'' + ", email='" + email + '\'' + '}';

}

public String getEmail() { return email;

}

public void setEmail(String email) {

this.email = email;

        }

}

 编写UserRepository

编写service类

 

 

 

 编写controller类

 

 编写主程序类

 测试运行

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值