使用Spring Boot实现操作数据库的接口的过程

网友投稿 1021 2022-12-26

使用Spring Boot实现操作数据库的接口的过程

使用Spring Boot实现操作数据库的接口的过程

一、Spring Boot原理

用户从页面前端,也就是我们所说的 view 层进行查询访问,进入到 controller 层找到对应的接口,接 着 controller 进行对 service 层进行业务功能的调用,service 要进入 dao 层查询数据http://,dao 层调用 mapper.xml 文件生成 sql 语句到数据库中进行查询

二、实现过程

2.1、准备数据库user表插入四条数据

2.2、model下创建一个User类

与数据库的字段一一对应

@Getter @Setter

public class User {

private int id;

private String username;

private String password;

private int age;

}

2.3、dao下创建一个UserDao接口

@Repository注解修饰哪个类,则表明这个类具有对对象进行CRUD(增删改查)的功能

@Repository

public interface UserDao {

public User getUserById(@Param("id") int id);

public List getUserByAge(@Param("age") int age);

public List getUserByName(@Param("username") String username);

public int insertUser(@RequestBody User user);

}

通过UserMapping.xml配置文件实现UserDao接口

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

select * from `user` where id=#{id}

<select id="getUserByAge" resultType="User">

select * from `user` where age=#{age}

select * from `user` where username like concat('%',#{username},'%')

SELECT LAST_INSERT_ID()

insert into user (username, password, age)

values (#{username,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, #{age,jdbcType=INTEGER})

2.4、Service下创建一个UserService接口

public interface UserService {

public User queryUserById(int id);

public List queryUserByAge(int age);

public List queryUserByName(String username);

public int insertUser(User user);

}

再创建一个UserServiceImpl实现UserService

@Service

public class UserSeviceImpl implements UserService {

@Autowired

private UserDao userDao;

@Override

http:// public User queryUserById(int id) {

return userDao.getUserById(id);

}

@Override

public List queryUserByAge(int age) {

return userDao.getUserByAge(age);

}

@Override

public List queryUserByName(String username) {

return userDao.getUserByName(username);

}

@Override

public int insertUser(User user) {

return userDao.insertUser(user);

}

}

2.5、controller下创建一个UserController

@GetMapping是代表该查询接口用的是get方式

@RequestMapping(value="/insert",method = RequestMethod.POST)代表该插入接口用post方式

@RestController

public class UserController {

@Autowired

private UserService userService;

@GetMapping("/userid")

public User getUserById(@RequestParam("id") int id){

return userService.queryUserById(id);

}

@GetMapping("/username")

public List getUserByUsername(@RequestParam("username") String username){

return userService.queryUserByName(username);

}

@RequestMapping(value="/insert",method = RequestMethod.POST)

public User insertUser(@RequestBody User user){

LVwOAisint x = userService.insertUser(user);

return user;

}

}

2.6、application.yml文件连接数据库

server:

port: 8080

spring:

datasource:

driver-class-name: com.mysql.cj.jdbc.Driver

url: jdbc:mysql://localhost:3306/testingdev9?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai

username: root

password: 123456

mybatis:

mapper-locations:

- classpath:mapper/*.xml

- classpath*:com/**/mapper/*.xml

type-aliases-package: com.example.demo.model

2.7、启动DemoApplication文件

出现Started DemoApplication代表启动成功了

2.8、使用postman调用接口

如下图根据id查询

如下图插入数据

可以看到数据库多了一条数据

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:华阴一体化政务服务平台(华阴一体化政务服务平台网址)
下一篇:flutter桌面app(flutter 开发windows桌面应用)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~