每天叫醒你的不是闹钟,而是梦想
本章节主要搭建一个简单SpringBoot与Mybatis的框架,给大家复习复习,也给自己复习复习。
● 新建一个Spring Initializr项目
● 选择所需要的依赖
● 创建配置文件
application.yml
spring:
profiles:
active: dev
application-dev.yml
server:
port: 8080
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/hyt?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
driver-class-name: com.mysql.jdbc.Driver
mybatis:
mapper-locations: classpath*:mapping/*Mapping.xml
type-aliases-package: com.zero.appadmin.entity
这里根据自己需要可以分为dev、test、prod
● controller
package com.zero.appadmin.controller;
import com.zero.appadmin.entity.User;
import com.zero.appadmin.service.IUserService;
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 IUserService userService;
@RequestMapping("/test")
public String test (){
User select = userService.select("1");
System.out.println(select);
return select.toString();
}
}
● service
package com.zero.appadmin.service;
import com.zero.appadmin.entity.User;
public interface IUserService {
User select();
}
impl
package com.zero.appadmin.service.impl;
import com.zero.appadmin.entity.User;
import com.zero.appadmin.mapper.UserMapper;
import com.zero.appadmin.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements IUserService {
@Autowired
private UserMapper userMapper;
@Override
public User select() {
return userMapper.selectid();
}
}
● mapper
package com.zero.appadmin.mapper;
import com.zero.appadmin.entity.User;
import org.springframework.stereotype.Repository;
@Repository
public interface UserMapper {
User selectid();
}
● entity
package com.zero.appadmin.entity;
import java.io.Serializable;
public class User implements Serializable {
private Long id;
private String username;
private String password;
private String address;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
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 getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
", address='" + address + '\'' +
'}';
}
}
● 数据库
● 数据库映射mapping文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zero.appadmin.mapper.UserMapper">
<resultMap id="BaseResultMap" type="com.zero.appadmin.entity.User">
<result column="id" property="id"></result>
<result column="username" property="username"></result>
<result column="password" property="password"></result>
<result column="address" property="address"></result>
</resultMap>
<select id="selectid" resultType="com.zero.appadmin.entity.User">
select * from t_user limit 10
</select>
</mapper>
● 最后框架结构
● 在启动类加上扫描的mapper文件的路径
package com.zero.appadmin;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@MapperScan("com.zero.appadmin.mapper")
@SpringBootApplication
public class AppAdminApplication {
public static void main(String[] args) {
System.out.println("hello world");
SpringApplication.run(AppAdminApplication.class, args);
}
}
● 启动访问
我知道你在看哟