1)pom文件中添加相应的jar包:
<!--Mybatis启动器-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<!--mysql数据库驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!--druid数据库连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.10</version>
</dependency>
2)application.yml文件中配置数据库连接等信息:
每个":"对应的是".",如spring.datasource.url="......."
spring:
datasource:
url: jdbc:mysql://localhost:3306/likui?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
# 使用druid数据源
type: com.alibaba.druid.pool.DruidDataSource
mybatis:
type-aliases-package: com.likui.demo.pojo
mapper-locations: classpath:/mybatis-mappers/*.xml
3) 在pojo包下创建实体类
import java.io.Serializable;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Flower implements Serializable {
private Integer id;
private String name;
private Double price;
private String production;
}
4)在mapper下创建文件与mybatis中的mapper.xml相对应
package com.likui.demo.mapper;
import com.likui.demo.pojo.Flower;
public interface FlowerMapper {
void insertFlower(Flower flower);
}
5)在service下创建业务实现的接口
package com.likui.demo.service;
import com.likui.demo.pojo.Flower;
public interface FlowerService {
void addFlower(Flower flower);
}
6)在service下的impl包下创建接口的具体实现方法
package com.likui.demo.service.impl;
import com.likui.demo.mapper.FlowerMapper;
import com.likui.demo.pojo.Flower;
import com.likui.demo.service.FlowerService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Service
@Transactional
public class FlowerServiceImpl implements FlowerService {
@Resource
private FlowerMapper flowerMapper;
@Override
public void addFlower(Flower flower) {
flowerMapper.insertFlower(flower);
}
}
7)前端htlm中表单填写数据提交动作
<form action="/demo/test" method="post">
用户姓名:<input type="text" name="name"/>
价格:<input type="text" name="price"/>
<input type="submit" value="确定"/>
</form>
8)在controller下调用service接口中的方法,并传递参数进去
@RestController
@RequestMapping(value = "/demo")
public class DemoController {
@Resource
private FlowerService flowerService;
@RequestMapping("/test")
public FlowerJson showFlower(Model model,@RequestParam("name") String name,@RequestParam("price") double price){
List<Flower> list=new ArrayList<>();
Flower flower2=new Flower();
flower2.setId(1);
flower2.setName(name);
flower2.setPrice(price);
flowerService.addFlower(flower2);
list.add(flower2);
model.addAttribute("list",list);
FlowerJson flowerJson=new FlowerJson(0,"自定义json格式",list);
return flowerJson;
}
}