搭建一个springboot简单的增删改查

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-1 00:58   780   0

最近微服务这么热,感觉啥系统都要做成微服务,真的是合久必分,分久必合。现在就简单做一个微服务的增删改查项目。

基于maven的springboot项目。

1.File---》New---》Project

2.选中Spring Initializer,点击next

3.给项目取名字

4.选择项目要的依赖,这边就选了两个组件 Web -》Spring Web

SQL-->JDBC API ,Spring Data JDBC,Mybatis Framework ,MySQL Driver,后面就直接Finish

5.项目导入好了以后就开始写代码,这边先在数据库中新建一张user表,表中字段为id,name,age;

项目结构如下,在static静态资源目录下面,加载一个html文件,index.html就可以访问了。

6.在demo4目录下面新建bean(实体类),dao,service,web四层

bean中 User代码为

package xom.xin.demo4.bean;



public class User {
    private Integer age;
    private Integer id;
    private String name;

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    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 User(Integer age, Integer id, String name) {
        this.age = age;
        this.id = id;
        this.name = name;
    }
    public User(){

    }

}

dao中UserDao接口代码

package xom.xin.demo4.dao;

import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;
import xom.xin.demo4.bean.User;

import java.util.List;
@Mapper
@Repository
public interface UserDao {
    /*
    用户数据新增
     */
    @Insert("insert into user(id,name,age) values (#{id},#{name},#{age})")
    void addUser(User user);
    /*
    用户数据修改
     */
    @Update("update user set name=#{name},age=#{age} where id=#{id}")
    void updateUser(User user);
    /*
    用户数据删除
     */
    @Delete("delete from user where id=#{id}")
    void deleteUser(int id);
    /*
    用户数据查询
     */
    @Select("select name,age,id from user where name=#{userName}")
    User findUserByName(@Param("userName") String userName);

    /*
    查询所有用户
     */
    @Select("select id,name,age from user")
    List<User> findAll();

}

service中的UserService接口

package xom.xin.demo4.service;

import xom.xin.demo4.bean.User;

import java.util.List;

public interface UserService {
    /*
    新增用户
     */
    boolean addUser(User user);
    /*
    修改用户
     */
    boolean updateUser(User user);
    /*
    删除用户
     */
    boolean deleteUser(int id);
    /*
    /根基用户名字查找用户
     */
    User findUserByName(String userName);
    /*
    查询所有用户
     */
    List<User> findAll();

}

service中UserServiceImpy实现类

package xom.xin.demo4.service;

import org.springframework.stereotype.Service;
import xom.xin.demo4.bean.User;
import xom.xin.demo4.dao.UserDao;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@Service
public class UserServiceImpy implements  UserService {
    @Resource
    private UserDao userDao;
    @Override
    public boolean addUser(User user) {
        boolean flag=false;
        try{
            userDao.addUser(user);
            flag=true;
        }catch(Exception e){
            e.printStackTrace();
        }
        return flag;
    }

    @Override
    public boolean updateUser(User user) {
        boolean flag=false;
        try{
            userDao.updateUser(user);
            flag=true;
        }catch (Exception e){
            e.printStackTrace();
        }
        return flag;
    }

    @Override
    public boolean deleteUser(int id) {
        boolean flag=false;
        try{
            userDao.deleteUser(id);
            flag=true;
        }catch(Exception e){
            e.printStackTrace();
        }
        return flag;
    }

    @Override
    public User findUserByName(String userName) {
        User user=null;
        try{
             user=userDao.findUserByName(userName);
        }catch(Exception e){
            e.printStackTrace();
        }

        return user;
    }

    @Override
    public List<User> findAll() {
        ArrayList<User> list=null;
        try{
            list= (ArrayList<User>) userDao.findAll();
        }catch(Exception e){
            e.printStackTrace();
        }
        return list;
    }
}

web对外调用接口代码

package xom.xin.demo4.web;

import org.springframework.stereotype.Repository;
import org.springframework.web.bind.annotation.*;
import xom.xin.demo4.bean.User;
import xom.xin.demo4.service.UserService;

import javax.annotation.Resource;
import java.util.List;

@RestController
@RequestMapping(value="api/user")
public class UserRestController {
    @Resource
    private UserService userService;


    @RequestMapping(method = RequestMethod.POST)
    public boolean addUser(@RequestBody User user){
        System.out.println("开始新增");
        return userService.addUser(user);
    }

    @RequestMapping(method =RequestMethod.PUT)
    public boolean updateUser(@RequestBody User user){
        System.out.println("开始修改");
        return userService.updateUser(user);
    }

    @RequestMapping(method = RequestMethod.DELETE)
    public boolean delteUser(@RequestParam(value = "userId",required = true) int userId){
        System.out.println("开始删除");
        return userService.deleteUser(userId);
    }

    @RequestMapping(method = RequestMethod.GET)
    public User findUserByName(@RequestParam(value = "userName",required = true) String userName){
        System.out.println("开始查找");
        return userService.findUserByName(userName);
    }

    @RequestMapping(value = "/all",method = RequestMethod.GET)
    public List<User> findALL(){
        System.out.println("开始查找所有用户");
        return userService.findAll();
    }
}

7,对application.properties文件进行配置


spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT

spring.datasource.username=root
spring.datasource.password=admin
spring.jpa.show-sql=true


mybatis.type-aliases-package=xom.xin.demo4.bean
mybatis.mapper-locations=classpath\:mapper/*.xml

8.完成以后就用postman做接口的调用

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP