
一个软工课的编程,老师上课讲了讲,但我不太明白,无从下手,老哥们能帮我看看吗,指导一下该怎么做(谢谢老哥们了)

一个软工课的编程,老师上课讲了讲,但我不太明白,无从下手,老哥们能帮我看看吗,指导一下该怎么做(谢谢老哥们了)
上午好☀️☀️☀️️
本答案参考ChatGPT-3.5
这个编程任务是要求设计和开发一个地图数据质检系统,包括用户管理和操作记录。具体的要求有:
具体的解决方案如下:
@Controller
@RequestMapping("/map")
public class MapController {
@Autowired
private MapService mapService;
@RequestMapping(value = "/upload", method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> upload(@RequestBody Map<String, Object> body) {
// 获取上传的数据
String data = (String) body.get("data");
int userId = (int) body.get("userId");
// 处理数据
boolean success = mapService.upload(data, userId);
// 返回结果
Map<String, Object> result = new HashMap<>();
result.put("success", success);
return result;
}
@RequestMapping(value = "/show", method = RequestMethod.GET)
@ResponseBody
public Map<String, Object> show() {
// 获取地图数据
String data = mapService.show();
// 返回结果
Map<String, Object> result = new HashMap<>();
result.put("data", data);
return result;
}
@RequestMapping(value = "/error", method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> error(@RequestBody Map<String, Object> body) {
// 获取提交的错误点
String point = (String) body.get("point");
int userId = (int) body.get("userId");
// 处理错误点
boolean success = mapService.error(point, userId);
// 返回结果
Map<String, Object> result = new HashMap<>();
result.put("success", success);
return result;
}
}
其中@Autowired注释标志着Spring应该注入一个MapService实例。下面是MapService的示例代码:
@Service
public class MapService {
@Autowired
private MapDao mapDao;
public boolean upload(String data, int userId) {
// 将数据插入到数据库中
return mapDao.insert(data, userId);
}
public String show() {
// 从数据库中获取地图数据
return mapDao.select();
}
public boolean error(String point, int userId) {
// 将错误点插入到数据库中
return mapDao.insert(point, userId);
}
}
其中@Service注释标志着Spring应该注入一个MapDao实例,实现地图数据的上传、显示和错误点的提交。下面是MapDao的示例代码:
@Repository
public class MapDao {
@Autowired
private JdbcTemplate jdbcTemplate;
public boolean insert(String data, int userId) {
String sql = "INSERT INTO map_data (data, user_id) VALUES (?, ?)";
int rows = jdbcTemplate.update(sql, data, userId);
return rows > 0;
}
public String select() {
String sql = "SELECT data FROM map_data ORDER BY id DESC LIMIT 1";
return jdbcTemplate.queryForObject(sql, String.class);
}
public boolean insert(String point, int userId) {
String sql = "INSERT INTO error_point (point, user_id) VALUES (?, ?)";
int rows = jdbcTemplate.update(sql, point, userId);
return rows > 0;
}
}
其中@Repository注释标志着Spring应该注入一个JdbcTemplate实例,实现数据库的交互。