SpringBoot的基本使用(整合SSM)

 
 

SpringBoot的基本使用

创建一个Maven工程

在pom.xml中引入统一的父工程以及需要的启动器

在resources下添加SpringBoot项目的配置文件application.properties---覆盖默认配置(端口号)

创建引导类--这个类要在父包下,这样才能扫描子包-类

整合SpringMVC

引入启动器

创建Controller类

配置拦截器

首先需要自定义一个拦截器,实现HandlerInterceptor接口

配置拦截器

自定义一个Java配置类(使用@Configuration),实现WebMvcConfigurer接口

测试—浏览器访问

整合数据源

引入jdbc的启动器,mysql的驱动

在application.properties中添加四大配置

整合Mybatis

引入Mybatis的启动器

覆盖默认配置

整合通用Mapper

引入启动器

添加实体类--需要使用注解@Table,name属性对应表名

添加Mapper层的接口

添加Service类

写了一个查询所有的方法,一个删除的方法

整体测试

总结

总体思路

1.搭建springboot的基本应用

2.整合SpringMVC

3.整合数据源

4.整合Mybatis,Mapper

个人总结

如果本篇博客对您有一定的帮助,大家记得留言+点赞+收藏哦。


创建一个Maven工程

在pom.xml中引入统一的父工程以及需要的启动器

 <!--引入父工程-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.7.RELEASE</version>
    </parent>

resources下添加SpringBoot项目的配置文件application.properties---覆盖默认配置(端口号)

server.port=8888

创建引导类--这个类要在父包下,这样才能扫描子包-类

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 22:43
 * @Description: 引导类
 * @version: 1.0
 */
@SpringBootApplication
public class UserApplication {
    public static void main(String[] args) {
        SpringApplication.run(UserApplication.class,args);
    }
}

整合SpringMVC

引入启动器

 <!-- springMVc的启动器-->
 <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
 </dependency>

创建Controller类

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 22:36
 * @Description: User表的Controller类
 * @version: 1.0
 */
@Controller
@RequestMapping("user")
public class UserController {

    @Autowired
    private UserService service;

    @GetMapping("test")
    @ResponseBody
    public String test(){
        return "hello User";
    }

    @GetMapping("findAll")
    @ResponseBody
    public String findAll(){
        List<Account> users = service.findAll();
        System.out.println(users);
        return "findAll";
    }

}

配置拦截器

首先需要自定义一个拦截器,实现HandlerInterceptor接口

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 23:06
 * @Description: mvc拦截器
 * @version: 1.0
 */
@Component
public class MyInterceptor implements HandlerInterceptor {
    /**
     * 前置方法 --Handler执行之前执行
     * @param request
     * @param response
     * @param handler
     * @return
     * @throws Exception
     */
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        //true 放行
        //false 拦截
        System.out.println("前置方法正在执行!");
        return true;
    }

    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        System.out.println("后置方法正在执行!");
    }

    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
        System.out.println("完成方法正在执行!");
    }
}

配置拦截器

自定义一个Java配置类(使用@Configuration),实现WebMvcConfigurer接口

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 23:15
 * @Description: 配置拦截器
 *              1.java配置类
 *              2.实现WebMvcConfigurer
 * @version: 1.0
 */
@Configuration
public class WebMvcConfiguration implements WebMvcConfigurer {
    //注入自定义拦截器
    @Autowired
    private MyInterceptor myInterceptor;

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        //传入拦截器对象  设置路径--链式编程
        registry.addInterceptor(myInterceptor).addPathPatterns("/**");
    }
}

测试—浏览器访问


整合数据源

引入jdbc的启动器,mysql的驱动

 <!--        jdbc的启动器-->
    <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
<!--        mysql的驱动-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>

application.properties中添加四大配置

## 指定数据库名
spring.datasource.username=root
spring.datasource.password=root 
#注释--注意 指定数据源名 spring.datasource.data-password
spring.datasource.url=jdbc:mysql:///ssm
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

整合Mybatis

引入Mybatis的启动器

 <!--mybatis的启动器-->
 <dependency>
       <groupId>org.mybatis.spring.boot</groupId>
       <artifactId>mybatis-spring-boot-starter</artifactId>
       <version>1.3.2</version>
 </dependency>

覆盖默认配置

mybatis.type-aliases-package=com.dynamic.user.pojo

整合通用Mapper

引入启动器

<!--  通用Mapper-->
<dependency>
     <groupId>tk.mybatis</groupId>
     <artifactId>mapper-spring-boot-starter</artifactId>
     <version>2.0.4</version>
</dependency>

添加实体类--需要使用注解@Table,name属性对应表名

/**
 * @Author: Promsing
 * @Date: 2021/5/30 - 23:54
 * @Description: Account实体类
 * @version: 1.0
 */
@Table(name="account")
public class Account {

    private Integer id;
    private String name;
    private Double money;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

    public Double getMoney() {
        return money;
    }

    public void setMoney(Double money) {
        this.money = money;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", money=" + money +
                '}';
    }
}

添加Mapper层的接口

/**
 * @Author: Promsing
 * @Date: 2021/5/31 - 17:28
 * @Description: DAO接口--Mapper
 * @version: 1.0
 */
@Mapper
public interface UserMapper extends tk.mybatis.mapper.common.Mapper<Account> {

      //由于使用了Mapper注解,不需要写其他方法
}

添加Service类

写了一个查询所有的方法,一个删除的方法

/**
 * @Author: Promsing
 * @Date: 2021/5/31 - 0:11
 * @Description: Service层
 * @version: 1.0
 */
@Service
public class UserService {

    @Autowired
    private UserMapper userMapper;

    public List<Account> findAll(){
       return userMapper.selectAll();
//        return dao.findAll();
    }
    @Transactional //整合事务--事务的注解
    public void deleteUserById(Long id ){
        this.userMapper.deleteByPrimaryKey(id);
    }

}

整体测试

http://localhost:8888/user/findAll
http://localhost:8888/user/test


总结

总体思路

1.搭建springboot的基本应用

引入统一的父工程,以及需要的启动器

添加引导类使用@SpringBootApplication(这是一个组合注解包含@EnableAutoConfiguration+@ComponentScan+@SpringBootConfiguration)

2.整合SpringMVC

修改端口(server.port=8888)

添加自定义拦截器:实现HandlerInterceptor接口

配置拦截器:自定义一个配置类(@Configuration),实现WebMvcConfigurer接口

3.整合数据源

引入jdbc启动器,mysql驱动

配置四大属性

4.整合Mybatis,Mapper

引入启动器

接口添加@Mapper注解

mapper继承Mapper<User>

个人总结

Spring Boot是一个简化Spring开发的框架。用来监护spring应用开发,约定大于配置,去繁就简,just run 就能创建一个独立的,产品级的应用。

跟整合SSM相比,SpringBoot减少了很多配置文件,自动配置。无需引入太多jar包,只需要一个启动器就行。

内置了Tomcat,直接启动引导类就行

我们在使用Spring Boot时只需要配置相应的Spring Boot就可以用所有的Spring组件,简单的说,spring boot就是整合了很多优秀的框架,不用我们自己手动的去写一堆xml配置然

后进行配置。从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置。

如果本篇博客对您有一定的帮助,大家记得留言+点赞+收藏哦。

 

 

 

  • 39
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 49
    评论
当前可以使用Spring Boot整合SSM框架。首先,你可以将Spring和MyBatis整合Spring Boot中。Spring Boot会自动为你处理Spring和MyBatis的配置,你只需要保留一些必要的配置即可。具体来说,你可以使用Spring Boot的starter依赖来引入Spring和MyBatis的相关模块。这样,你就可以使用Spring的依赖注入和事务管理功能,以及MyBatis的ORM功能。 接下来,你可以使用Spring Boot整合Spring MVC。Spring Boot提供了一个自动配置的MVC模块,你可以直接使用它来处理HTTP请求和响应。你只需要在Controller类上添加@Controller注解,并在方法上添加@RequestMapping注解来定义请求映射。此外,你还可以使用Spring Boot的starter依赖来引入其他需要的模块,比如JSON序列化和数据校验等。 最后,你可以使用Spring Boot整合JUnit进行测试。你可以使用@SpringBootTest注解标记测试类,并指定主程序引导类。通过自动装配业务方法,你可以在测试方法中直接调用你的业务逻辑。这样,你就可以方便地进行单元测试和集成测试了。 综上所述,你可以使用Spring Boot整合SSM框架,实现快速开发和测试。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [基于SpringBootSSM整合](https://blog.csdn.net/ware00/article/details/125689235)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小张自由—>张有博

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值