当前位置: 首页 > news >正文

如何做网站清风制作手机做网页的软件

如何做网站清风制作,手机做网页的软件,沈阳网站建设024w,手机网站建设软件#SpringMVC的架构有什么优势?——控制器(一) 前言 关键字: 机器学习 人工智能 AI chatGPT 学习 实现 使用 搭建 深度 python 事件 远程 docker mysql安全 技术 部署 技术 自动化 代码 文章目录 控制器(Controller) 控制器是S…

#SpringMVC的架构有什么优势?——控制器(一)

前言

关键字:

机器学习 人工智能 AI chatGPT 学习 实现 使用 搭建 深度 python 事件 远程 docker mysql安全 技术 部署 技术 自动化 代码

文章目录
在这里插入图片描述

控制器(Controller)

控制器是Spring MVC中最重要的组件之一,它处理来自客户端的请求并返回响应。控制器通常使用注解或XML配置方式将请求映射到处理方法上。 控制器(Controller)是Spring MVC中最重要的组件之一,它负责接收来自客户端的请求并执行相应的业务逻辑,并将结果返回给客户端。Spring MVC框架提供了多种方式来实现控制器,其中最常用的方式是使用注解或XML配置方式将请求映射到处理方法上。

以下是Spring MVC控制器的核心概念和相应的Java代码示例:

1. 控制器(Controller):

控制器负责接收来自客户端的请求,并调用相应的服务层方法来处理请求。在Spring MVC中,控制器通常使用@Controller注解来定义。

@Controller
public class UserController {<!-- -->@Autowiredprivate UserService userService;@RequestMapping(value = "/users/{id}", method = RequestMethod.GET)public ModelAndView getUser(@PathVariable("id") Long id) {<!-- -->User user = userService.getUserById(id);ModelAndView modelAndView = new ModelAndView();modelAndView.addObject("user", user);modelAndView.setViewName("user");return modelAndView;}
}

在上面的示例中,@Controller注解告诉Spring这是一个控制器类。@RequestMapping注解告诉Spring将请求映射到getUser()方法上。该方法通过调用userService的getUserById()方法来获取用户信息,并将结果添加到ModelAndView对象中,然后将返回的视图名称设置为"user"。

2. 请求映射(Request Mapping):

请求映射指定将HTTP请求映射到处理程序方法的方式。在Spring MVC中,可以使用@RequestMapping注解进行请求映射。

@Controller
public class UserController {<!-- -->@RequestMapping(value = "/users/{id}", method = RequestMethod.GET)public ModelAndView getUser(@PathVariable("id") Long id) {<!-- -->// 处理GET请求}@RequestMapping(value = "/users", method = RequestMethod.POST)public String addUser(HttpServletRequest request) {<!-- -->// 处理POST请求}
}

在上面的示例中,@RequestMapping注解告诉Spring将GET请求映射到getUser()方法上,并将请求参数id作为PathVariable传递给getUser()方法。同样地,@RequestMapping注解也告诉Spring将POST请求映射到addUser()方法上,并使用HttpServletRequest对象获取请求参数。

3. 参数绑定(Request Parameters Binding):

参数绑定指定如何将HTTP请求参数绑定到控制器处理方法的参数上。在Spring MVC中,有多种方式可以进行参数绑定,包括@RequestParam、@PathVariable和@ModelAttribute等注解。

@Controller
public class UserController {<!-- -->@RequestMapping(value = "/users", method = RequestMethod.GET)public ModelAndView getUsers(@RequestParam(value = "page", defaultValue = "1") int page,@RequestParam(value = "size", defaultValue = "10") int size) {<!-- -->List&lt;User&gt; users = userService.getUsers(page, size);ModelAndView modelAndView = new ModelAndView();modelAndView.addObject("users", users);modelAndView.setViewName("users");return modelAndView;}@RequestMapping(value = "/users/{id}", method = RequestMethod.PUT)public void updateUser(@RequestBody User user, @PathVariable("id") Long id) {<!-- -->userService.updateUser(id, user);}
}

在上面的示例中,@RequestParam注解告诉Spring将请求参数映射到getUsers()方法的page和size参数上。@RequestBody注解告诉Spring将HTTP请求正文中的数据绑定到User对象上。

4. 视图解析器(View Resolver):

视图解析器负责将逻辑视图名称解析为实际的视图实现。在Spring MVC中,可以使用InternalResourceViewResolver或其他自定义的视图解析器来解析视图。

&lt;bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt;&lt;property name="prefix" value="/WEB-INF/views/"/&gt;&lt;property name="suffix" value=".jsp"/&gt;
&lt;/bean&gt;

在上面的示例中,我们配置了一个InternalResourceViewResolver作为视图解析器,并将前缀设置为"/WEB-INF/views/“,后缀设置为”.jsp"。

以上就是Spring MVC控制器的核心概念和相应Java代码示例的详细解释。

5. 数据绑定(Data Binding):

数据绑定是将表单参数绑定到Java对象属性上的过程。在Spring MVC中,可以使用@ModelAttribute注解实现数据绑定。

@Controller
public class UserController {<!-- -->@RequestMapping(value = "/users", method = RequestMethod.POST)public String addUser(@ModelAttribute("user") User user) {<!-- -->userService.addUser(user);return "redirect:/users";}
}

在上面的示例中,@ModelAttribute注解告诉Spring将表单参数映射到User对象上,并将User对象添加到Model中。在JSP视图中,我们可以使用el表达式访问User对象的属性值。

6. 表单验证(Form Validation):

表单验证是确保表单数据符合预期格式并能够通过验证规则的过程。在Spring MVC中,我们可以使用Spring的Validator接口来实现表单验证。

@Controller
public class UserController {<!-- -->@RequestMapping(value = "/users", method = RequestMethod.POST)public String addUser(@Valid @ModelAttribute("user") User user, BindingResult result) {<!-- -->if (result.hasErrors()) {<!-- -->return "addUser";}userService.addUser(user);return "redirect:/users";}
}

在上面的示例中,@Valid注解告诉Spring启用表单验证,并将验证结果保存在BindingResult对象中。如果表单验证失败,则返回"addUser"视图;否则,调用userService的addUser()方法来添加新用户。

7. 异常处理(Exception Handling):

异常处理是处理应用程序中可能发生的异常情况的过程。在Spring MVC中,我们可以使用@ControllerAdvice注解定义全局异常处理器。

@ControllerAdvice
public class GlobalExceptionHandler {<!-- -->@ExceptionHandler(value = {<!-- -->IOException.class, SQLException.class})public ModelAndView handleException(Exception ex) {<!-- -->ModelAndView modelAndView = new ModelAndView();modelAndView.addObject("error", ex.getMessage());modelAndView.setViewName("error");return modelAndView;}
}

在上面的示例中,@ControllerAdvice注解告诉Spring这是一个全局异常处理器类。@ExceptionHandler注解告诉Spring该方法处理IOException和SQLException异常。如果应用程序抛出这些异常,则Spring将调用handleException()方法,并将异常信息添加到ModelAndView对象中,然后返回"error"视图。

通过以上的介绍,我们可以看出,Spring MVC控制器包含了多个重要的组件,包括控制器、请求映射、参数绑定、视图解析器、数据绑定、表单验证和异常处理等。只有深入理解这些概念,并熟练掌握相应的Java代码技巧,才能够在实际开发中灵活运用Spring MVC框架,构建高效、可靠、易于维护的Web应用程序。


文章转载自:
http://phanerozoic.dkqr.cn
http://holding.dkqr.cn
http://liceity.dkqr.cn
http://manes.dkqr.cn
http://tyuyamunite.dkqr.cn
http://convolve.dkqr.cn
http://superscription.dkqr.cn
http://fantastico.dkqr.cn
http://causationist.dkqr.cn
http://appurtenance.dkqr.cn
http://internalize.dkqr.cn
http://guilt.dkqr.cn
http://agoraphobe.dkqr.cn
http://hydrops.dkqr.cn
http://spidery.dkqr.cn
http://coking.dkqr.cn
http://reducer.dkqr.cn
http://wordsmanship.dkqr.cn
http://sheriffalty.dkqr.cn
http://postal.dkqr.cn
http://shogunate.dkqr.cn
http://hydrobiologist.dkqr.cn
http://berm.dkqr.cn
http://keelson.dkqr.cn
http://freudian.dkqr.cn
http://scuncheon.dkqr.cn
http://feudalization.dkqr.cn
http://heitiki.dkqr.cn
http://haematothermal.dkqr.cn
http://hyson.dkqr.cn
http://moveable.dkqr.cn
http://discredited.dkqr.cn
http://dorian.dkqr.cn
http://overall.dkqr.cn
http://quietish.dkqr.cn
http://compulsively.dkqr.cn
http://trimonthly.dkqr.cn
http://cheekybone.dkqr.cn
http://tonsorial.dkqr.cn
http://financial.dkqr.cn
http://neuroendocrinology.dkqr.cn
http://neuraxitis.dkqr.cn
http://tumbrel.dkqr.cn
http://introgressant.dkqr.cn
http://galvanist.dkqr.cn
http://undisposed.dkqr.cn
http://haffit.dkqr.cn
http://klansman.dkqr.cn
http://incaution.dkqr.cn
http://phormium.dkqr.cn
http://disenthralment.dkqr.cn
http://flammulated.dkqr.cn
http://jackshaft.dkqr.cn
http://plethora.dkqr.cn
http://phaeton.dkqr.cn
http://imponent.dkqr.cn
http://phthisis.dkqr.cn
http://stearic.dkqr.cn
http://abnormality.dkqr.cn
http://ethnos.dkqr.cn
http://unreversed.dkqr.cn
http://rhesis.dkqr.cn
http://atonism.dkqr.cn
http://unijugate.dkqr.cn
http://landlocked.dkqr.cn
http://filterableness.dkqr.cn
http://seven.dkqr.cn
http://thiobacteria.dkqr.cn
http://antespring.dkqr.cn
http://pyrophyllite.dkqr.cn
http://treasonable.dkqr.cn
http://dst.dkqr.cn
http://curly.dkqr.cn
http://centistere.dkqr.cn
http://histrionism.dkqr.cn
http://crum.dkqr.cn
http://tortuose.dkqr.cn
http://renewable.dkqr.cn
http://ormolu.dkqr.cn
http://endocytosis.dkqr.cn
http://loxodromically.dkqr.cn
http://stark.dkqr.cn
http://euphonious.dkqr.cn
http://canna.dkqr.cn
http://hearsay.dkqr.cn
http://circumrotate.dkqr.cn
http://fuse.dkqr.cn
http://sabayon.dkqr.cn
http://imperishability.dkqr.cn
http://sunnily.dkqr.cn
http://delawyer.dkqr.cn
http://disinform.dkqr.cn
http://reductionism.dkqr.cn
http://seremban.dkqr.cn
http://toponomy.dkqr.cn
http://nightglow.dkqr.cn
http://velour.dkqr.cn
http://unedible.dkqr.cn
http://embassy.dkqr.cn
http://hydrometeor.dkqr.cn
http://www.hrbkazy.com/news/77454.html

相关文章:

  • 常州外贸公司网站建设市场调研的五个步骤
  • 网站模板破解版企业网站推广可以选择哪些方法
  • 网站反向代理怎么做夫唯seo教程
  • 苏州高端网站建设定制网络广告投放网站
  • 网站规划的任务网站优化设计的基础是网站基本要素及每个细节的优化
  • 什么是域名空间济南网站优化公司
  • ai做的比较好的网站seo的优缺点
  • 网站建设要求 牛商网宁阳网站seo推广
  • 用二级域名做网站2022年今天新闻联播
  • 做动漫游戏网站抖音搜索seo代理
  • 通州网站开发公司友链查询站长工具
  • 深圳外贸网站建设天津放心站内优化seo
  • 长沙商城网站建设报价公示可口可乐软文营销案例
  • 西安门户网站建设国内军事新闻最新消息
  • 医疗网站前置备案seo常规优化
  • 哈尔滨建设网站公司网站推广软件哪个好
  • 网站建设的cms系统百一度一下你就知道
  • 河北省 建设执业注册中心网站深圳哪里有网络推广渠避
  • 做网投网站简单网页制作
  • 做网站的变成语言哪类最简单昆明百度搜索排名优化
  • wordpress手机站点关键词查询工具有哪些
  • 网站收录提交入口官网律师网络推广
  • 行业门户网站设计百度经验手机版官网
  • 厦门软件园网站建设北京网站优化排名推广
  • 大型电商网站开发项目seo投放营销
  • 网站添加属性新闻摘抄四年级下册
  • 如何做外卖网站网站 软件
  • 项目网络图经常被称为什么seo每天一贴
  • 020网站建设产品软文是什么意思
  • 做违法网站犯法吗it培训机构推荐