赞
踩
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
mysql和mybatis依赖配置
- <!-- mysql驱动依赖 -->
- <dependency>
- <groupId>com.mysql</groupId>
- <artifactId>mysql-connector-j</artifactId>
- </dependency>
-
- <!-- mybatis的起步依赖 -->
- <dependency>
- <groupId>org.mybatis.spring.boot</groupId>
- <artifactId>mybatis-spring-boot-starter</artifactId>
- <version>3.0.0</version>
- </dependency>
数据库创建
- create database if not exists mybatis;
-
- use mybatis;
-
- create table user(
- id int unsigned primary key auto_increment comment 'ID',
- name varchar(100) comment '姓名',
- age tinyint unsigned comment '年龄',
- gender tinyint unsigned comment '性别, 1:男, 2:女',
- phone varchar(11) comment '手机号'
- ) comment '用户表';
-
- insert into user(id, name, age, gender, phone) VALUES (null,'白眉鹰王',55,'1','18800000000');
- insert into user(id, name, age, gender, phone) VALUES (null,'金毛狮王',45,'1','18800000001');
- insert into user(id, name, age, gender, phone) VALUES (null,'青翼蝠王',38,'1','18800000002');
- insert into user(id, name, age, gender, phone) VALUES (null,'紫衫龙王',42,'2','18800000003');
- insert into user(id, name, age, gender, phone) VALUES (null,'光明左使',37,'1','18800000004');
- insert into user(id, name, age, gender, phone) VALUES (null,'光明右使',48,'1','18800000005');
数据库配置
- spring:
- datasource:
- driver-class-name: com.mysql.cj.jdbc.Driver
- url: jdbc:mysql://localhost:3306/mybatis
- username: root
- password: root
创建实体类User
- package com.geji.pojo;
-
- public class User {
-
- private Integer id;
- private String name;
- private Short age;
- private Short gender;
- private String phone;
-
- public User() {
- }
-
- public User(Integer id, String name, Short age, Short gender, String phone) {
- this.id = id;
- this.name = name;
- this.age = age;
- this.gender = gender;
- this.phone = phone;
- }
-
- 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 Short getAge() {
- return age;
- }
-
- public void setAge(Short age) {
- this.age = age;
- }
-
- public Short getGender() {
- return gender;
- }
-
- public void setGender(Short gender) {
- this.gender = gender;
- }
-
- public String getPhone() {
- return phone;
- }
-
- public void setPhone(String phone) {
- this.phone = phone;
- }
-
- @Override
- public String toString() {
- return "User{" +
- "id=" + id +
- ", name='" + name + '\'' +
- ", age=" + age +
- ", gender=" + gender +
- ", phone='" + phone + '\'' +
- '}';
- }
- }
定义接口
- package com.geji.mapper;
-
- import com.geji.pojo.User;
- import org.apache.ibatis.annotations.Mapper;
- import org.apache.ibatis.annotations.Select;
-
- @Mapper
- public interface UserMapper {
- @Select("select * from user where id=#{id}")
- public User findById(Integer id);
- }
- package com.geji.service;
-
- import com.geji.pojo.User;
-
- public interface UserService {
- public User findById(Integer id);
- }
创建查询类
- package com.geji.service.impl;
-
- import com.geji.mapper.UserMapper;
- import com.geji.pojo.User;
- import com.geji.service.UserService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
-
- @Service
- public class UserServiceImpl implements UserService {
-
- @Autowired
- private UserMapper userMapper;
-
- @Override
- public User findById(Integer id) {
- return userMapper.findById(id);
- }
- }
编写controller
- package com.geji.controller;
-
- import com.geji.pojo.User;
- import com.geji.service.UserService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
-
- @RestController
- public class UserController {
-
- @Autowired
- private UserService userService;
-
- @RequestMapping("/findById")
- public User findById(Integer id){
- return userService.findById(id);
- }
- }
打开网页查看效果
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。