springMVC02-SSM整合(Result统一响应数据格式、异常页面修改、SSM整合vue-elementUI小案例、SpringMVC的拦截器Interceptor)
// 使用@ResponseBody注解,将返回的对象转换为JSON格式的数据
@ResponseBody
@RequestMapping("/getUser")
public Result<User> getUser(Integer id) {
User user = userService.getUserById(id);
return new Result<>(200, "success", user);
}
// 使用@ControllerAdvice注解定义全局异常处理类
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(value = Exception.class)
@ResponseBody
public Result<String> defaultErrorHandler(HttpServletRequest req, Exception e) {
return new Result<>(500, "服务器异常,请稍后重试", null);
}
}
// 在web.xml中配置Vue.js和Element UI的前端资源
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/static/*</url-pattern>
</servlet-mapping>
// 在Spring MVC的配置文件中配置Vue.js和Element UI的资源处理
<mvc:resources mapping="/static/**" location="/static/"/>
// 在Spring配置文件中配置MyBatis和数据库连接信息
<bean id="dataSource" class="org.apache.ibatis.datasource.pooled.PooledDataSource">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</bean>
// 使用MyBatis的Mapper接口进行数据库操作
public interface UserMapper {
User getUserById(Integer id);
}
// 在Service层调用Mapper接口方法
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User getUserById(Integer id) {
return userMapper.getUserById(id);
}
}
以上代码提供了一个使用Spring MVC和SSM(Spring、SpringMVC、MyBatis)进行Web开发的基本框架,并展示了如何使用Result类来统一返回格式,以及如何使用@ControllerAdvice注解来处理全局异常并返回友好的错误信息。同时,展示了如何在web.xml中配置静态资源的访问,以及如何在Spring配置文件中配置数据库连接信息和MyBatis的Mapper接口。这些是开发者在使用SSM整合Vue.js和Element UI时需要考虑的关键点。
评论已关闭