(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目

使用idea工具快速搭建SpringBoot项目并整合Mybatis框架

SpringBoot开箱即用,使用起来非常方便,快捷。那么搭建一个项目到底有多快呢?那么相信你看完之后,就知道有快了,并且会爱上SpringBoot,它是如此的方便。
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第1张图片
使用idea创建一个Project,然后选择Spring Initializr 快速搭建
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第2张图片
然后直接点击Next
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第3张图片
填写好项目相关的信息后,点击Next
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第4张图片
然后选择Web里面的Web
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第5张图片
再选择Sql里面的Mysql和Mybatis,idea会为你自动添加相关的jar包

(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第6张图片
然后给项目取个名字,点击Finsh完成项目就创建好了。

这里数据库使用得Mysql,只用到了user表,mysql得建表语句:
CREATE TABLE t_user (
userId int(11) NOT NULL AUTO_INCREMENT,
userName varchar(255) NOT NULL,
password varchar(255) NOT NULL,
phone varchar(255) NOT NULL,
) CHARSET=utf8;

INSERT INTO t_user VALUES (‘1’, ‘aaa’, ‘bbb’, ‘123’);
INSERT INTO t_user VALUES (‘2’, ‘jack’, ‘123’, ‘13856’);
INSERT INTO t_user VALUES (‘3’, ‘tom’, ‘123’, ‘13856’);
INSERT INTO t_user VALUES (‘4’, ‘alice’, ‘123’, ‘13856’);
INSERT INTO t_user VALUES (‘5’, ‘小明’, ‘123’, ‘13856’);
INSERT INTO t_user VALUES (‘6’, ‘小王’, ‘123’, ‘13856’);
本段可以不看(可以在pom文件中,看到自动生成了一些starter结尾得jar,是springboot整合好得jar包集合,点进去可以看到有很多子jar包,就不用担心我们如何添加哪些jar包,缺少jar包得烦恼了,这是springboot得优点之一,极简单得配置,开箱即用)
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第7张图片
首先创建好controller .service.dao(这里用得mybatis注解,dao层即为mapper层)

  1. 创建user实体类
package com.ssmt1.pojo;
import java.io.Serializable;
public class User implements Serializable {
    private Integer userId;

    private String userName;

    private String password;

    private String phone;

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    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 getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }
}

2.写配置文件,配置数据库连接信息和mybatis配置信息(pojo类的位置)
在resources资源文件夹下创建application.yml配置文件(文件名字不能错)
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第8张图片

spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/boottest?useUnicode=true&characterEncoding=utf-8
    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password:
mybatis:
  type-aliases-package: com.ssmt1.pojo
server:
  port: 8080
  1. 从下往上写,先写dao层(mapper层);
package com.ssmt1.mapper;

import com.ssmt1.pojo.User;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper
public interface UserMapper {
    /**
     * 根据id查询用户
     * @param id
     * @return
     */
    @Select("select * from t_user where userId = #{userId}")
    User selectById(int userId);

    /**
     * 查询所有用户
     * @return
     */
    @Select("select * from t_user")
    List selectAll();

    /**
     * 添加用户
     * @param user
     */
    @Insert("insert into t_user (userName,password,phone) values(#{userName},#{password},#{phone})")
    void addUser(User user);

    /**
     * 根据id删除用户
     * @param userId
     */
    @Delete("delete from  t_user where userId =#{userId}")
    void deleteUser(int userId);

}

4.service接口

package com.ssmt1.service;

import com.ssmt1.pojo.User;
import java.util.List;

public interface UserService {
    /**
     * 根据id查询用户
     * @param id
     * @return
     */
    User selectById(int userId);

    /**
     * 查询所有用户
     * @return
     */
    List selectAll();

    /**
     * 添加用户
     * @param user
     */
    void addUser(User user);

    /**
     * 根据id删除用户
     * @param userId
     */
    void deleteUser(int userId);
}

  1. serviceImpl
package com.ssmt1.service.impl;

import com.ssmt1.mapper.UserMapper;
import com.ssmt1.pojo.User;
import com.ssmt1.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
@Service
public class UserserviceImpl implements UserService {

   @Autowired
   private UserMapper userMapper;

   @Override
   public User selectById(int userId) {
       return userMapper.selectById(userId);
   }

   @Override
   public List selectAll() {
       return userMapper.selectAll();
   }

   @Override
   public void addUser(User user) {
       userMapper.addUser(user);
   }

   @Override
   public void deleteUser(int userId) {
       userMapper.deleteUser(userId);
   }
}

  1. controller层,这里为了方便,直接使用@RestController注解,所有请求返回以json形式返回(想到与@Controller + 方法上的@responsebody),这里只进行了查询操作,添加和修改也类似;
package com.ssmt1.controller;

import com.ssmt1.pojo.User;
import com.ssmt1.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class UserController {

    @Autowired
    private UserService userService;

    @RequestMapping("/findAll")
    public List getAll(){
        return userService.selectAll();
    }
    
}

特别注意
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第9张图片
因为这个启动类会扫描与他在同一层下的所有包下的所有类的注解。
8.启动项目,打开这个启动类 Ssmt1Application
(SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第10张图片

  1. 启动成功后,打开浏览器输入:http://localhost:8080/findAll
    (SpringBoot入门)SpringBoot+Mybatis搭建最简单的项目_第11张图片
    可以看到查询出的数据,这就是最简单入门的SpringBoot+Mybatis整合。

学疏才浅,作为一个菜鸟码农,可能会有一些地方理解上有纰漏,记录下来就是为了和众多java同行们共同交流,欢迎大家在评论进行探讨。

你可能感兴趣的:(JAVA)