以下是关于SpringBoot+MybatisPlus+Mysql+JSP实战的完整攻略,内容包括环境搭建、数据库操作、页面渲染等:
环境搭建
- 安装JDK、Maven等开发环境。
- 创建一个SpringBoot项目,可以使用Spring Initializr或者IDEA等工具快速创建。
- 在项目的pom.xml文件中添加mybatis-plus和mysql依赖,如下所示:
<!-- mybatis-plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.4.3.1</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
- 配置MybatisPlus的配置文件,创建MybatisPlusConfig类并添加@Configuration注解,指定MybatisPlus的Mapper扫描路径,如下所示:
@Configuration
@MapperScan("com.example.demo.mapper")
public class MybatisPlusConfig {
}
- 配置Mysql的配置文件,创建application.yml(或application.properties)文件,并添加Mysql的连接信息,如下所示:
spring:
datasource:
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: root
数据库操作
在这里提供两个MybatisPlus的示例,分别介绍如何生成代码和如何进行增删改查操作。
示例1:生成代码
MybatisPlus提供了代码生成器功能,可以快速生成Mapper、Service、Controller等层级的代码。具体步骤如下:
1. 创建自己的代码生成器类,如下所示:
public class CodeGenerator {
public static void main(String[] args) {
AutoGenerator generator = new AutoGenerator();
generator.setGlobalConfig(new GlobalConfig().setOutputDir(System.getProperty("user.dir") + "/src/main/java")
.setFileOverride(true)
.setOpen(false)
.setSwagger2(true)
.setBaseResultMap(true)
.setBaseColumnList(true)
.setActiveRecord(false)
.setAuthor("your name"));
generator.setDataSource(new DataSourceConfig().setUrl("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai")
.setDriverName("com.mysql.cj.jdbc.Driver")
.setUsername("root")
.setPassword("root"));
generator.setStrategy(new StrategyConfig().setNaming(NamingStrategy.underline_to_camel)
.setColumnNaming(NamingStrategy.underline_to_camel)
.setTablePrefix("t_")
.setInclude("user"));
generator.setPackageInfo(new PackageConfig().setParent("com.example.demo")
.setEntity("entity")
.setMapper("mapper")
.setService("service")
.setServiceImpl("service.impl")
.setController("controller"));
generator.execute();
}
}
- 运行生成器,即可在项目中自动创建对应的Mapper、Service、Controller等层级的代码。
示例2:增删改查操作
- 创建User实体类,如下所示:
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("t_user")
public class User {
@TableId(type = IdType.AUTO)
private Long id;
private String name;
private Integer age;
}
- 创建UserMapper类,继承BaseMapper
类,如下所示:
public interface UserMapper extends BaseMapper<User> {
}
- 在服务层创建UserService类,注入UserMapper类实例,并实现增删改查操作,如下所示:
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
}
- 在控制器层创建UserController类,注入UserService类实例,并实现Restful接口,如下所示:
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserService userService;
@GetMapping
public List<User> getAllUsers() {
return userService.list();
}
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
return userService.getById(id);
}
@PostMapping
public User createUser(@RequestBody User user) {
userService.save(user);
return user;
}
@PutMapping("/{id}")
public User updateUser(@PathVariable Long id, @RequestBody User user) {
user.setId(id);
userService.updateById(user);
return user;
}
@DeleteMapping("/{id}")
public void deleteUser(@PathVariable Long id) {
userService.removeById(id);
}
}
至此,我们已经完成了一个基于SpringBoot、MybatisPlus、Mysql的增删改查操作,可以通过Postman等工具测试接口是否正常。
页面渲染
除了上面的Restful接口以外,我们还可以结合JSP等前端技术来进行页面渲染。具体步骤如下:
- 在pom.xml文件中添加SpringBoot的Web相关依赖,如下所示:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
- 在配置文件中添加JSP的路径,如下所示:
spring:
mvc:
view:
prefix: /WEB-INF/views/
suffix: .jsp
- 在Controller类中增加一个jsp接口,如下所示:
@Controller
public class JspController {
@RequestMapping("/hello")
public String hello(Model model) {
model.addAttribute("name", "李四");
return "hello";
}
}
- 创建JSP页面,在src/main/webapp/WEB-INF/views目录下创建hello.jsp文件,如下所示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hello</title>
</head>
<body>
<h1>Hello, ${name}!</h1>
</body>
</html>
- 启动应用程序,并在浏览器中访问http://localhost:8080/hello,即可在页面上看到Hello, 李四!的字样。
至此,我们已经学习了SpringBoot+MybatisPlus+Mysql+JSP实战的完整攻略,包括环境搭建、数据库操作、页面渲染等相关内容。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot+MybatisPlus+Mysql+JSP实战 - Python技术站