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

河南建网站高端品牌鞋子

河南建网站,高端品牌鞋子,国内营销推广渠道,怎样给企业做网站目录 1 设置请求映射路径1.1 环境准备 1.2 问题分析1.3 设置映射路径 2 请求参数2.1 环境准备2.2 参数传递2.2.1 GET发送单个参数2.2.2 GET发送多个参数2.2.3 GET请求中文乱码2.2.4 POST发送参数2.2.5 POST请求中文乱码 欢迎大家回到《Java教程之Spring30天快速入门》#xff… 目录 1 设置请求映射路径1.1 环境准备 1.2 问题分析1.3 设置映射路径 2 请求参数2.1 环境准备2.2 参数传递2.2.1 GET发送单个参数2.2.2 GET发送多个参数2.2.3 GET请求中文乱码2.2.4 POST发送参数2.2.5 POST请求中文乱码 欢迎大家回到《Java教程之Spring30天快速入门》本教程所有示例均基于Maven实现如果您对Maven还很陌生请移步本人的博文《如何在windows11下安装Maven并配置以及 IDEA配置Maven环境》本文的上一篇为《PostMan工具的安装与使用技巧》 前面我们已经完成了入门案例相关的知识学习接来了我们就需要针对SpringMVC相关的知识点进行系统的学习之前我们提到过SpringMVC是web层的框架主要的作用是接收请求、接收数据、响应结果所以这一章节是学习SpringMVC的重点内容我们主要会讲解四部分内容: 请求映射路径请求参数日期类型参数传递响应json数据 1 设置请求映射路径 1.1 环境准备 创建一个Web的Maven项目pom.xml添加Spring依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.itheima/groupIdartifactIdspringmvc_03_request_mapping/artifactIdversion1.0-SNAPSHOT/versionpackagingwar/packagingdependenciesdependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion3.1.0/versionscopeprovided/scope/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.2.10.RELEASE/version/dependency /dependenciesbuildpluginsplugingroupIdorg.apache.tomcat.maven/groupIdartifactIdtomcat7-maven-plugin/artifactIdversion2.1/versionconfigurationport80/portpath//path/configuration/plugin/plugins /build /project创建对应的配置类 public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer {protected Class?[] getServletConfigClasses() {return new Class[]{SpringMvcConfig.class};}protected String[] getServletMappings() {return new String[]{/};}protected Class?[] getRootConfigClasses() {return new Class[0];} }Configuration ComponentScan(com.itheima.controller) public class SpringMvcConfig { }编写BookController和UserController Controller public class UserController {RequestMapping(/save)ResponseBodypublic String save(){System.out.println(user save ...);return {module:user save};}RequestMapping(/delete)ResponseBodypublic String save(){System.out.println(user delete ...);return {module:user delete};} }Controller public class BookController {RequestMapping(/save)ResponseBodypublic String save(){System.out.println(book save ...);return {module:book save};} }最终创建好的项目结构如下: 把环境准备好后启动Tomcat服务器后台会报错: 从错误信息可以看出: UserController有一个save方法访问路径为http://localhost/saveBookController也有一个save方法访问路径为http://localhost/save当访问http://localhost/saved的时候到底是访问UserController还是BookController? 1.2 问题分析 团队多人开发每人设置不同的请求路径冲突问题该如何解决? 解决思路:为不同模块设置模块名作为请求路径前置 对于Book模块的save,将其访问路径设置http://localhost/book/save 对于User模块的save,将其访问路径设置http://localhost/user/save 这样在同一个模块中出现命名冲突的情况就比较少了。 1.3 设置映射路径 步骤1:修改Controller Controller public class UserController {RequestMapping(/user/save)ResponseBodypublic String save(){System.out.println(user save ...);return {module:user save};}RequestMapping(/user/delete)ResponseBodypublic String save(){System.out.println(user delete ...);return {module:user delete};} } Controller public class BookController {RequestMapping(/book/save)ResponseBodypublic String save(){System.out.println(book save ...);return {module:book save};} } 问题是解决了但是每个方法前面都需要进行修改写起来比较麻烦而且还有很多重复代码如果/user后期发生变化所有的方法都需要改耦合度太高 步骤2:优化路径配置 优化方案: Controller RequestMapping(/user) public class UserController {RequestMapping(/save)ResponseBodypublic String save(){System.out.println(user save ...);return {module:user save};}RequestMapping(/delete)ResponseBodypublic String save(){System.out.println(user delete ...);return {module:user delete};} } Controller RequestMapping(/book) public class BookController {RequestMapping(/save)ResponseBodypublic String save(){System.out.println(book save ...);return {module:book save};} }注意: 当类上和方法上都添加了RequestMapping注解前端发送请求的时候要和两个注解的value值相加匹配才能访问到。RequestMapping注解value属性前面加不加/都可以 扩展小知识: 对于PostMan如何觉得字小不好看可以使用ctrl调大ctrl±调小。 2 请求参数 请求路径设置好后只要确保页面发送请求地址和后台Controller类中配置的路径一致就可以接收到前端的请求接收到请求后如何接收页面传递的参数? 关于请求参数的传递与接收是和请求方式有关系的目前比较常见的两种请求方式为 GETPOST 针对于不同的请求前端如何发送后端如何接收 2.1 环境准备 创建一个Web的Maven项目pom.xml添加Spring依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.itheima/groupIdartifactIdspringmvc_03_request_mapping/artifactIdversion1.0-SNAPSHOT/versionpackagingwar/packagingdependenciesdependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion3.1.0/versionscopeprovided/scope/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.2.10.RELEASE/version/dependency/dependenciesbuildpluginsplugingroupIdorg.apache.tomcat.maven/groupIdartifactIdtomcat7-maven-plugin/artifactIdversion2.1/versionconfigurationport80/portpath//path/configuration/plugin/plugins/build /project创建对应的配置类 public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer {protected Class?[] getServletConfigClasses() {return new Class[]{SpringMvcConfig.class};}protected String[] getServletMappings() {return new String[]{/};}protected Class?[] getRootConfigClasses() {return new Class[0];} }Configuration ComponentScan(com.itheima.controller) public class SpringMvcConfig { }编写UserController Controller public class UserController {RequestMapping(/commonParam)ResponseBodypublic String commonParam(){return {module:commonParam};} }编写模型类User和Address public class Address {private String province;private String city;//setter...getter...略 } public class User {private String name;private int age;//setter...getter...略 }最终创建好的项目结构如下: 2.2 参数传递 2.2.1 GET发送单个参数 发送请求与参数: http://localhost/commonParam?nameitcast接收参数 Controller public class UserController {RequestMapping(/commonParam)ResponseBodypublic String commonParam(String name){System.out.println(普通参数传递 name name);return {module:commonParam};} }2.2.2 GET发送多个参数 发送请求与参数: http://localhost/commonParam?nameitcastage15接收参数 Controller public class UserController {RequestMapping(/commonParam)ResponseBodypublic String commonParam(String name,int age){System.out.println(普通参数传递 name name);System.out.println(普通参数传递 age age);return {module:commonParam};} }2.2.3 GET请求中文乱码 如果我们传递的参数中有中文你会发现接收到的参数会出现中文乱码问题。 发送请求: http://localhost/commonParam?name张三age18 控制台: 出现乱码的原因相信大家都清楚Tomcat8.5以后的版本已经处理了中文乱码的问题但是IDEA中的Tomcat插件目前只到Tomcat7所以需要修改pom.xml来解决GET请求中文乱码问题 buildpluginsplugingroupIdorg.apache.tomcat.maven/groupIdartifactIdtomcat7-maven-plugin/artifactIdversion2.1/versionconfigurationport80/port!--tomcat端口号--path//path !--虚拟目录--uriEncodingUTF-8/uriEncoding!--访问路径编解码字符集--/configuration/plugin/plugins /build2.2.4 POST发送参数 发送请求与参数 接收参数 和GET一致不用做任何修改 Controller public class UserController {RequestMapping(/commonParam)ResponseBodypublic String commonParam(String name,int age){System.out.println(普通参数传递 name name);System.out.println(普通参数传递 age age);return {module:commonParam};} }2.2.5 POST请求中文乱码 发送请求与参数: 接收参数: 控制台打印会发现有中文乱码问题。 解决方案:配置过滤器 public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer {protected Class?[] getRootConfigClasses() {return new Class[0];}protected Class?[] getServletConfigClasses() {return new Class[]{SpringMvcConfig.class};}protected String[] getServletMappings() {return new String[]{/};}//乱码处理Overrideprotected Filter[] getServletFilters() {CharacterEncodingFilter filter new CharacterEncodingFilter();filter.setEncoding(UTF-8);return new Filter[]{filter};} }CharacterEncodingFilter是在spring-web包中所以用之前需要导入对应的jar包。
http://www.pierceye.com/news/171736/

相关文章:

  • 建设高端网站需要多少钱wordpress检测
  • 如何学习网站建设app嘉兴建站软件
  • 驻马店市建设工程网站平面设计培训班学费一般多少百度贴吧
  • 长沙网络建设的网站免费的个人简历模板word下载
  • 网站维护简单吗wordpress绿色两栏响应式主题
  • 二手站网站怎做福州网站建设的公司哪家好
  • dw如何做网站后台佛山行业网站建设
  • 如何做网站轮播大图简单网页制作成品代码
  • 网站怎么做uc整合查企业网站
  • 网站没被收录什么原因网站排名点击工具
  • 江西南昌建设厅网站商品展示软件
  • 眼镜企业网站建设方案2015做那些网站致富
  • 创建个人网站的流程建设网站聊天室
  • cms 学校网站上海模板网站
  • 网站建设投资风险分析公司做的网站费用如何做账
  • 网站建设费用核算科目DW做的网页用网站打不开
  • wordpress标签搜索引擎嘉兴市做网站优化
  • 网站更换关键词怎么做好wordpress post fonts
  • 厦门优化网站排名网站备案转服务器
  • 怎样做pdf电子书下载网站做旅行攻略的网站
  • 怎样做网站推广啊抖音网站的flash怎么做
  • 网站建设小说网站建设目标是什么意思
  • 如何做一个好的网站中英文网站好处
  • wordpress站点版权设置晋中建设集团网站
  • 怎么夸一个网站做的好看烟台百度网站推广
  • 佛山市网站建设分站多少钱企业门户账号是什么
  • 大中型网站开发价格铜山区建设局局网站周保春
  • 为什么有人做商城优惠券网站卖科技风格设计网站
  • 企业网站的需求分析是做网站编辑还是做平面设计
  • 超酷 flash 网站淮南网红餐厅