0. 项目结构:
1.application.properties 中配置整合 mybatis 的配置文件 mybatis 扫描别名的基本包与数据源
- server.port=80
- logging.level.org.springframework=DEBUG
- #springboot mybatis
- #jiazai mybatis peizhiwenjian
- mybatis.mapper-locations = classpath:mapper/*Mapper.xml
- mybatis.config-location = classpath:mapper/config/sqlMapConfig.xml
- mybatis.type-aliases-package = cn.qlq.bean
- #shujuyuan
- spring.datasource.driver-class-name= com.mysql.jdbc.Driver
- spring.datasource.url = jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=utf-8
- spring.datasource.username = root
- spring.datasource.password = 123456
- 2.pom.xml 加入 springboot 整合 mybatis 的 jar 包与数据库驱动包
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>cn.qlq</groupId>
- <artifactId>springboot-ssm</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <packaging>war</packaging>
- <parent>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-parent</artifactId>
- <version>1.5.2.RELEASE</version>
- </parent>
- <dependencies>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-test</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-devtools</artifactId>
- </dependency>
- <!-- spring-boot 整合 mybatis -->
- <dependency>
- <groupId>org.mybatis.spring.boot</groupId>
- <artifactId>mybatis-spring-boot-starter</artifactId>
- <version>1.1.1</version>
- </dependency>
- <!-- mysql 驱动 -->
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.6</version>
- </dependency>
- <!-- 基本配置 -->
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.9</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- <version>2.5</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>jsp-api</artifactId>
- <version>2.0</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- <build>
- <!-- 配置了很多插件 -->
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.5.1</version>
- <configuration>
- <source>1.7</source>
- <target>1.7</target>
- <encoding>UTF-8</encoding>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- </plugin>
- </plugins>
- </build>
- </project>
- 3.mybatis 全局配置文件:
- sqlMapConfig.xml
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE configuration
- PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-config.dtd">
- <configuration>
- </configuration>
- 4. 编写代码:
- (1)User.java
- package cn.qlq.bean;
- import java.io.Serializable;
- import java.util.Date;
- public class User implements Serializable{
- /**
- *
- */
- private static final long serialVersionUID = 1L;
- private Integer id;
- private String username;
- private Date birthday;
- private String sex;
- private String address;
- public Integer getId() {
- return id;
- }
- public void setId(Integer id) {
- this.id = id;
- }
- public Date getBirthday() {
- return birthday;
- }
- public void setBirthday(Date birthday) {
- this.birthday = birthday;
- }
- public String getSex() {
- return sex;
- }
- public void setSex(String sex) {
- this.sex = sex;
- }
- public String getUsername() {
- return username;
- }
- public void setUsername(String username) {
- this.username = username;
- }
- public String getAddress() {
- return address;
- }
- public void setAddress(String address) {
- this.address = address;
- }
- }
(2)UserMapper.java(注意接口上的注解是 @mapper, 代替之前扫描接口的操作)
- package cn.qlq.mapper;
- import java.util.List;
- import org.apache.ibatis.annotations.Mapper;
- import cn.qlq.bean.User;
- @Mapper
- public interface UserMapper {
- public List<User> findAll();
- }
- 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="cn.qlq.mapper.UserMapper">
- <select id="findAll" resultType="user">
- select * from user
- </select>
- </mapper>
- (3)
- UserService.java
- package cn.qlq.service;
- import java.util.List;
- import cn.qlq.bean.User;
- public interface UserService {
- /**
- * 根据接口查询所用的用户
- */
- public List<User> findAllUser();
- }
- UserServiceImpl.java
- package cn.qlq.service.impl;
- import java.util.List;
- import java.util.Map;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import cn.qlq.bean.User;
- import cn.qlq.mapper.UserMapper;
- import cn.qlq.service.UserService;
- @Service
- public class UserServiceImpl implements UserService {
- @Autowired
- private UserMapper userMapper;
- public List<User> findAllUser() {
- List<User> list = userMapper.findAll();
- return list;
- }
- }
- (4)UserController.java
- package cn.qlq.action;
- import java.util.List;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import cn.qlq.bean.User;
- import cn.qlq.service.UserService;
- @RestController/** 自动返回的是 json 格式数据 ***/
- public class UserController {
- @Autowired
- private UserService userService;
- @RequestMapping("list")
- public List<User> list(){
- List<User> list = userService.findAllUser();
- return list;
- }
- }
注意:@RestController 注解 (自动返回的是 json 格式数据)
(5) 测试类
- MySpringBootApplication.java
- package cn.qlq;
- import org.springframework.boot.SpringApplication;
- import org.springframework.boot.autoconfigure.SpringBootApplication;
- import org.springframework.cache.annotation.EnableCaching;
- @SpringBootApplication
- public class MySpringBootApplication {
- public static void main(String[] args) {
- // 入口运行类
- SpringApplication.run(MySpringBootApplication.class, args);
- }
- }
4. 启动测试
git 源码地址: https://github.com/qiao-zhi/springboot-ssm
来源: http://www.bubuko.com/infodetail-2504915.html