SpringBoot项目快速搭建
创建项目
通常情况下,需要用到的包不多。需要mybatis,jdbc.数据库连接的包,可能还需要用到redis。先创建好项目,如果发现哪一步忘了可以来这里查看
<dependencies>
<!--数据库连接,Spring官方-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--mybatis,mybatis自写的-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<!--导入jdbc的包,即使导入了mybatis也需要导入jdbc的包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jdbc</artifactId>
</dependency>
<!--导入redis-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-test</artifactId>
</dependency>
</dependencies>
编写配置文件
编写application.yml文件
spring:
datasource:
url: jdbc:mysql://localhost:3306/mydb?serverTimezone=CTT&useSSL=false&useUnicode=true&characterEncoding=utf-8
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver # jdbc驱动,版本5的是com.mysql.jdbc.Driver 版本8是com.mysql.cj.jdbc.Driver
redis: # 配置redis
host: 192.168.16.141
port: 6379
mybatis:
mapper-locations: classpath:mybatis/mapper/*.xml
type-aliases-package: com.bilysen.pojo # 写这个就可以通过别名来识别
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
编写相关层
pojo层
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User implements Serializable { //开启缓存需要用到序列化,使用redis存储对象也需要序列化
private Integer id;
private String name;
private String password;
private String email;
}
mapper层
/**
* @Mapper 一定要有,否则 Mybatis 找不到 mapper。
* @Repository 可有可无,可以消去依赖注入的报错信息。告诉容器bean
* @MapperScan 可以替代 @Mapper。
*/
@Mapper
@Repository
public interface UserMapper {
List<User> getUserAll();
}
UserMapper.xml
<?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.bilysen.mapper.UserMapper">
<cache/>
<select id="getUserAll" resultType="User">
select * from users
</select>
</mapper>
service层
public interface UserService {
List<User> getUserAll();
}
@Service
public class UserServiceImpl implements UserService{
@Autowired
private UserMapper userMapper;
@Override
public List<User> getUserAll() {
List<User> user = userMapper.getUserAll();
return user;
}
}
controller层
@RestController
@RequestMapping("/RedisCache")
public class UserController {
@Autowired
UserService userService;
@RequestMapping("/showUser")
public List showUser(){
List<User> userAll = userService.getUserAll();
return userAll;
}
}
对应着上述的层次结构编写测试类
@SpringBootTest
public class UserServiceTest {
@Autowired
private UserService userService;
@Test
public void findUser(){
List<User> users = userService.getUserAll();
System.out.println("======================="+users.size());
List<User> user = userService.getUserAll();
}
}
其他包
这些包看项目情况决定是否添加