基于springboot+vue+uniapp的宿舍管理系统小程序
由于这个问题涉及的内容较多,并且是一个完整的项目,我将提供一个简化的解决方案,主要是关于如何使用Spring Boot创建一个REST API,用于宿舍管理系统小程序的数据交互。
- 使用Spring Boot创建REST API:
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api/dorm")
public class DormController {
// 假设有一个服务层用于处理业务逻辑
@Autowired
private DormService dormService;
// 查询所有宿舍信息
@GetMapping("/list")
public List<Dorm> getAllDorms() {
return dormService.findAllDorms();
}
// 根据ID查询宿舍信息
@GetMapping("/{id}")
public Dorm getDormById(@PathVariable("id") Long id) {
return dormService.findDormById(id);
}
// 新增宿舍信息
@PostMapping("/")
public Dorm addDorm(@RequestBody Dorm dorm) {
return dormService.saveDorm(dorm);
}
// 更新宿舍信息
@PutMapping("/{id}")
public Dorm updateDorm(@PathVariable("id") Long id, @RequestBody Dorm dorm) {
dorm.setId(id);
return dormService.updateDorm(dorm);
}
// 删除宿舍信息
@DeleteMapping("/{id}")
public void deleteDorm(@PathVariable("id") Long id) {
dormService.deleteDormById(id);
}
}
- 在Vue前端,使用axios进行API调用:
<template>
<div>
<ul>
<li v-for="dorm in dorms" :key="dorm.id">{{ dorm.name }}</li>
</ul>
</div>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
dorms: []
};
},
created() {
this.fetchDorms();
},
methods: {
async fetchDorms() {
try {
const response = await axios.get('http://localhost:8080/api/dorm/list');
this.dorms = response.data;
} catch (error) {
console.error(error);
}
}
}
};
</script>
- 在uni-app小程序中,使用uni.request进行API调用:
<template>
<view>
<view v-for="(dorm, index) in dorms" :key="index">{{ dorm.name }}</view>
</view>
</template>
<script>
export default {
data() {
return {
dorms: []
};
},
onLoad() {
this.fetchDorms();
},
methods: {
fetchDorms() {
评论已关闭