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

网站301重定向代码建设了网站要维护吗

网站301重定向代码,建设了网站要维护吗,公司注册资本,h5页面制作免费平台目录 一、创建项目,pom文件 二、web.xml 三、spring-mvc.xml 四、index.jsp 五、实体类 Address类 User类 六、UserController类 七、请求参数解决中文乱码 八、配置tomcat,然后启动tomcat 1. 2. 3. 4. 九、接收Map类型 1.直接接收Map类型 &#x…

目录

一、创建项目,pom文件

二、web.xml

三、spring-mvc.xml

四、index.jsp

五、实体类

Address类

User类

六、UserController类

七、请求参数解决中文乱码

八、配置tomcat,然后启动tomcat

1.

2.

3.

4.

九、接收Map类型

1.直接接收Map类型

(1)Get请求

第一种情况,什么注解也没有

第二种情况:传个值

第三种情况:声明是get请求

第四种情况:加@RequestParam

(2)post请求:

第一种情况:什么注解也没有

前端页面:加一个表单

第二种情况:声明是post请求

第三种情况:加上@RequestParam注解

表单和controller类中的方法改改(加个username)

第四种情况:加@RequestBody注解

2.用对象接收map

(1)User类里加一个map

(2)前端:

(3)运行:

十、在控制器中使用原生的ServletAPI对象 


一、创建项目,pom文件

​
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.qcby</groupId><artifactId>springMVC12</artifactId><version>1.0-SNAPSHOT</version><packaging>war</packaging><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spring.version>5.0.2.RELEASE</spring.version></properties><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.0</version><scope>provided</scope></dependency></dependencies></project>​

二、web.xml

​
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!--前端控制器--><servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring-mvc.xml</param-value></init-param><!--配置启动加载--><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>dispatcherServlet</servlet-name><url-pattern>*.do</url-pattern></servlet-mapping></web-app>​

三、spring-mvc.xml

​
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:context="http://www.springframework.org/schema/context"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd"><!-- 配置spring创建容器时要扫描的包 --><context:component-scan base-package="com.qcby.controller"></context:component-scan><!-- 配置视图解析器 --><bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/pages/"></property><property name="suffix" value=".jsp"></property></bean><!-- 配置spring开启注解mvc的支持--><!--    <mvc:annotation-driven></mvc:annotation-driven>--></beans>​

四、index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head><title>请求参数绑定</title></head><body><form action="user/save1.do" method="post">姓名:<input type="text" name="username" /><br/>年龄:<input type="text" name="age" /><br/><input type="submit" value="提交" /></form><h3>请求参数绑定(封装到实体类)</h3><form action="user/save2.do" method="post">姓名:<input type="text" name="username" /><br/>年龄:<input type="text" name="age" /><br/><input type="submit" value="提交" /></form><h3>请求参数绑定(封装到实体类)</h3><form action="user/save3.do" method="post">姓名:<input type="text" name="username" /><br/>年龄:<input type="text" name="age" /><br/>金额:<input type="text" name="address.money" /><br/><input type="submit" value="提交" /></form><h3>请求参数绑定(封装到实体类,存在list集合)</h3><form action="user/save4.do" method="post">姓名:<input type="text" name="username" /><br/>年龄:<input type="text" name="age" /><br/>金额:<input type="text" name="address.money" /><br/>集合:<input type="text" name="list[0].money" /><br/>集合:<input type="text" name="list[1].money" /><br/><input type="submit" value="提交" /></form></body></html>

五、实体类

Address类

import java.io.Serializable;public class Address implements Serializable {private Double money;public Double getMoney() {return money;}public void setMoney(Double money) {this.money = money;}@Overridepublic String toString() {return "Address{" +"money=" + money +'}';}}

User类

import java.io.Serializable;import java.util.List;public class User implements Serializable {private String username;private Integer age;// 引用对象private Address address;// list集合private List<Address> list;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public Address getAddress() {return address;}public void setAddress(Address address) {this.address = address;}public List<Address> getList() {return list;}public void setList(List<Address> list) {this.list = list;}@Overridepublic String toString() {return "User{" +"username='" + username + '\'' +", age=" + age +", address=" + address +", list=" + list +'}';}}

六、UserController类

import com.qcby.pojo.User;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controller@RequestMapping("/user")public class UserController {@RequestMapping("/save1.do")public String save(String username,Integer age){System.out.println("姓名:"+username);System.out.println("年龄:"+age);return "success";}@RequestMapping("/save2.do")public String save2(User user){System.out.println("user对象:"+user);return "success";}@RequestMapping("/save3.do")public String save3(User user){System.out.println("user对象:"+user);return "success";}@RequestMapping("/save4.do")public String save4(User user){System.out.println("user对象:"+user);return "success";}}

七、请求参数解决中文乱码

在web.xml中配置Spring提供的过滤器

​
<!-- 配置过滤器,解决中文乱码的问题 --><filter><filter-name>characterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><!-- 指定字符集 --><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param></filter><filter-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>现在的web.xml:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!-- 配置过滤器,解决中文乱码的问题 --><filter><filter-name>characterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><!-- 指定字符集 --><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param></filter><filter-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!--前端控制器--><servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring-mvc.xml</param-value></init-param><!--配置启动加载--><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>dispatcherServlet</servlet-name><url-pattern>*.do</url-pattern></servlet-mapping></web-app>​

八、配置tomcat,然后启动tomcat

1.

2.

3.

4.

九、接收Map类型

1.直接接收Map类型

如果想直接接收前端传过来的map参数,应该使用两个注解(RequestBody或RequestParam;RequestParam--get和post请求都可以,RequestBody只能post请求,底层封装都是LinkedHashMap)

(1)Get请求

第一种情况,什么注解也没有

UserController类里加一个方法

@RequestMapping("/mapSave1.do")public String mapSave1(Map<String, Objects> map){System.out.println("map:"+map);return "success";}

没有JSP页面,启动tomcat

控制台:什么输出也没有,没有值

第二种情况:传个值

控制台:还是什么都没有

第三种情况:声明是get请求

UserController类的mapSave1()方法:

@RequestMapping(value = "/mapSave1.do",method = RequestMethod.GET)public String mapSave1(Map<String, Objects> map){System.out.println("map:"+map);return "success";}

再启动:

控制台:还是没有值

所以跟请求是什么没关系,要想接收就要加注解

第四种情况:加@RequestParam
@RequestMapping(value = "/mapSave1.do")public String mapSave1(@RequestParam Map<String, Objects> map){System.out.println("map:"+map);return "success";}

再运行:

所以,我传递一个map在后端接收,用get请求必须加@RequestParam注解

(2)post请求:

第一种情况:什么注解也没有
@RequestMapping(value = "/mapSave2.do")public String mapSave1(Map<String, Objects> map){System.out.println("map:"+map);return "success";}
前端页面:加一个表单
<h3>请求参数的绑定--map集合</h3><form action="user/mapSave2.do" method="post">map集合key:<input type="text" name="map.key" /><br/>map集合value:<input type="text" name="map.value" /><br/><input type="submit" value="提交" /></form>

运行

点提交

控制台:什么也没有

第二种情况:声明是post请求
@RequestMapping(value = "/mapSave2.do",method = RequestMethod.POST)public String mapSave2(Map<String, Objects> map){System.out.println("map:"+map);return "success";}

再运行:

点提交

控制台:

说明跟get的一样,不加注解是没有办法接收到的

第三种情况:加上@RequestParam注解
@RequestMapping(value = "/mapSave2.do",method = RequestMethod.POST)public String mapSave2(@RequestParam Map<String, Objects> map){System.out.println("map:"+map);return "success";}

运行:

点提交

控制台:

可以看出,get请求和post请求都可以用@RequestParam注解

表单和controller类中的方法改改(加个username)

表单:

<h3>请求参数的绑定--map集合</h3><form action="user/mapSave2.do" method="post">username:<input type="text" name="username"><br/>map集合:<input type="text" name="test1"><br/><%-- test1就是map的key,输入框中的就是map的value --%><input type="submit" value="提交" /></form>

方法:

@RequestMapping(value = "/mapSave2.do")public String mapSave2(@RequestParam Map<String, Objects> map,String username){System.out.println("map:"+map);System.out.println("username:"+username);return "success";}

运行:

点提交:

控制台:

可以看到:表单中的数据都被封装到了map集合中

第四种情况:加@RequestBody注解

但是这样的话,它只能接收json数据

现在用表单接收就会报错:

@RequestMapping(value = "/mapSave2.do")public String mapSave2(@RequestBody Map<String, Objects> map, String username){System.out.println("map:"+map);System.out.println("username:"+username);return "success";}

运行:

点提交:(报错)

总结:无注解时,什么都接收不了;@RequestParam注解时,将参数包装成LinkedHashMap对象,参数的key是Map的key,参数的值是Map的value,get和

post请求都支持;@RequestBody注解接收json类型的数据(跟表单不一样,表单传不了),也会包装成LinkedHashMap对象,该注解不支持get请求,get请求没有请求体,不能传json

2.用对象接收map

(1)User类里加一个map

private Map<String,Address> userMap;

(2)前端:

<h3>请求参数绑定(封装到实体类,存在map集合)</h3><form action="user/save5.do" method="post">姓名:<input type="text" name="username" /><br/>年龄:<input type="text" name="age" /><br/>金额:<input type="text" name="address.money" /><br/>Map集合:<input type="text" name="userMap['one'].money" /><br/>Map集合:<input type="text" name="userMap['two'].money" /><br/><input type="submit" value="提交" /></form>

(3)运行:

点提交:

控制台:

十、在控制器中使用原生的ServletAPI对象 

只需要在控制器的方法参数定义HttpServletRequest和HttpServletResponse对象

UserController里加:

/*原生的API*/
@RequestMapping("/save6.do")
public String save6(HttpServletRequest request, HttpServletResponse response){System.out.println(request);// 获取到HttpSession对象HttpSession session = request.getSession();System.out.println(session);System.out.println(response);return "success";
}

运行:

控制台:

 

http://www.yayakq.cn/news/901680/

相关文章:

  • 唐山房产网站建设学校精品课网站怎么做
  • com域名查询官网北京网站优化推广收集
  • WordPress网站动漫你在展厅设计用什么软件
  • 网站支付怎么做虚拟币支付好的网站开发
  • wordpress首页文章全部显示上海百度搜索优化
  • 风向 网站让别人做网站的话术
  • 全栈网站开发流行框架北京做网站公司
  • 网站如何让百度抓取网站关键词排名优化软件
  • 昆明网站制作费用展板设计模板
  • 阿里巴巴做轮播网站网站设置手机版
  • 做网站那种语言好网站搜索
  • 好创意的设计网站蜘蛛从网站哪里抓取
  • wordpress怎么找到作者的分类标签四川自助seo建站
  • 四秒网站建设wordpress添加前台漂亮注册页面
  • 门户网站建设思维导图免费换ip软件
  • 安卓网站开发视频教程自己开发电商网站难吗
  • 赣州网上注册公司网站WordPress邮件回复stmp
  • 天元建设集团有限公司劳动合同模板关键词优化排名
  • 沈阳市建设公司网站宁波网站建设选择荣胜网络
  • 做网站分页泰安人才网最新招聘信息2022年
  • 佛山网站建设的首选个人网站可以做淘客
  • 大学生对校园网站建设的需求是什么wordpress 白色主题
  • 网站开发需要什么配置新中式装修效果图
  • 做网站算新媒体运营吗电商系统源码公司哪家好
  • 苏州吴江做网站公司兰州的网站建设
  • 域名注册没有网站html5做网站心得体会
  • 北京手机版网站制作网站建设的一般流程是
  • 淘宝网官方网站电脑版企业网站建设 会计分录
  • 个人 做自媒体 建网站响应式儿童网站源码
  • 字体设计网站有哪些免费wordpress array