jstl
jstl
1.2
org.apache.tomcat.embed
tomcat-embed-jasper
# 配置jsp视图解析器
spring:
mvc:
view:
prefix: /
suffix: .jsp
在main创建webapp,然后创建index.jsp进行测试,在访问之前需要进行一个设置,否则springboot是找不到jsp页面的
修改jsp无需重启应用
server:
port: 8989
servlet:
context-path: /springboot02
jsp:
init-parameters:
development: true # 开启jsp页面开发模式 作用:无需重启应用,直接刷新网页
数据库访问框架:hibernate、jpa、mybatis【主流】
SpringBoot(微框架) = Spring(工厂) + SpringMVC(控制器)
SpringBoot整合MyBatis的思路基本上是和Spring整合MyBatis是一致的
com.alibaba
druid
1.1.19
mysql
mysql-connector-java
org.mybatis.spring.boot
mybatis-spring-boot-starter
3.0.0
作用:用在类上,扫描dao接口所在包,同时将所有dao接口交给工厂创建对象
用法:
@SpringBootApplication
**@MapperScan({"com.baizhi.dao"})**
public class Springboot03Application {
public static void main(String[] args) {
SpringApplication.run(Springboot03Application.class, args);
}
}
server:
port: 8989
servlet:
context-path: /springboot03 #指定应用名称
**#整合mybatis相关配置**
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource #指定数据源
driver-class-name: com.mysql.cj.jdbc.Driver # mysql8以上选择带cj的Driver
url: jdbc:mysql://localhost:3306/ssm?characterEncoding=UTF-8
username: root
password: 123456
mybatis:
mapper-locations: classpath:com.baizhi.mapper/*.xml **#指定mapper配置文件位置**
type-aliases-package: com.baizhi.entity **#指定实体类的别名** 默认别名:类名(首字母小写)
实体类
public class Emp {
private Integer id;
private String name;
@JsonFormat(pattern = "yyyy-MM-dd")
private Date birthday;
private Double salary;
}
Service实现类
@Service
@Transactional
public class EmpServiceImpl implements EmpService {
@Autowired
private EmpDAO empDAO;
public EmpServiceImpl(EmpDAO empDAO) {
this.empDAO = empDAO;
}
@Override
public List findAll() {
return empDAO.findAll();
}
@Override
public void save(Emp emp) {
empDAO.save(emp);
int i = 1/0; // 测试是否回滚
}
}
控制器
@RestController
public class EmpController {
@Autowired
private EmpService empService;
public EmpController(EmpService empService) {
this.empService = empService;
}
@RequestMapping("findAll")
public List findAll() {
return empService.findAll();
}
@RequestMapping("save")
public void save(Emp emp) {
empService.save(emp);
}
Mapper文件
insert into emp values(#{id},#{name},#{birthday},#{salary})
测试结果
http://127.0.0.1:8989/springboot03/save?name=mike&birthday=2021/1/4&salary=23.01
可以正常添加
也可以正常查询
@MapperScan是加在入口类,自动扫描包下面的dao接口一劳永逸【推荐】
@Mapper是直接加在dao接口,每个dao都要添加
作者:扬眉剑出鞘
出处: https://www.cnblogs.com/eyewink/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
参与评论
手机查看
返回顶部