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

软装设计网站推荐物联网方案设计与实现

软装设计网站推荐,物联网方案设计与实现,做网站采集,个人开公司需要什么条件1.Restful 风格 概念#xff1a; 实现方式#xff1a; 使用PathVariable 在url相同的情况下#xff0c;会根据请求方式的不同来执行不同的方法。 使用RestFull风格的好处#xff1a;简洁、高效、安全 2、接受请求参数及数据回显 2.1、请求参数 方式一#xff1a;这里…1.Restful 风格 概念 实现方式 使用PathVariable 在url相同的情况下会根据请求方式的不同来执行不同的方法。 使用RestFull风格的好处简洁、高效、安全 2、接受请求参数及数据回显 2.1、请求参数 方式一这里的RequestParam(username)意思是将前端用usernamexxx的值传到name变量里。 方式二当接受的对象是一个对象时那我们在前端传入的变量名应与实体类中的名字保持一致否则就为null 2.2、数据回显 也有三种方式分别是Model,ModelMap,ModelAandView 这个是第三种的。 tips 3、乱码问题 我以为我的配置是最优的结果... 果然人就是不能乱飘。 先建个包再建个类专门用于存放过滤器的代码用以解决乱码的问题。代码如下 package com.zhang.Filter; import javax.servlet.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequestWrapper; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.Map;public class GenericEncodingFilter implements Filter {Overridepublic void destroy() {}Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException, IOException {//处理response的字符编码HttpServletResponse myResponse(HttpServletResponse) response;myResponse.setContentType(text/html;charsetUTF-8);// 转型为与协议相关对象HttpServletRequest httpServletRequest (HttpServletRequest) request;// 对request包装增强HttpServletRequest myrequest new MyRequest(httpServletRequest);chain.doFilter(myrequest, response);}Overridepublic void init(FilterConfig filterConfig) throws ServletException {}}//自定义request对象HttpServletRequest的包装类 class MyRequest extends HttpServletRequestWrapper {private HttpServletRequest request;//是否编码的标记private boolean hasEncode;//定义一个可以传入HttpServletRequest对象的构造函数以便对其进行装饰public MyRequest(HttpServletRequest request) {super(request);// super必须写this.request request;}// 对需要增强方法 进行覆盖Overridepublic Map getParameterMap() {// 先获得请求方式String method request.getMethod();if (method.equalsIgnoreCase(post)) {// post请求try {// 处理post乱码request.setCharacterEncoding(utf-8);return request.getParameterMap();} catch (UnsupportedEncodingException e) {e.printStackTrace();}} else if (method.equalsIgnoreCase(get)) {// get请求MapString, String[] parameterMap request.getParameterMap();if (!hasEncode) { // 确保get手动编码逻辑只运行一次for (String parameterName : parameterMap.keySet()) {String[] values parameterMap.get(parameterName);if (values ! null) {for (int i 0; i values.length; i) {try {// 处理get乱码values[i] new String(values[i].getBytes(ISO-8859-1), utf-8);} catch (UnsupportedEncodingException e) {e.printStackTrace();}}}}hasEncode true;}return parameterMap;}return super.getParameterMap();}//取一个值Overridepublic String getParameter(String name) {MapString, String[] parameterMap getParameterMap();String[] values parameterMap.get(name);if (values null) {return null;}return values[0]; // 取回参数的第一个值}//取所有值Overridepublic String[] getParameterValues(String name) {MapString, String[] parameterMap getParameterMap();String[] values parameterMap.get(name);return values;} }然后再在web.xml中进行相关配置 filterfilter-nameencoding/filter-namefilter-classcom.zhang.Filter.GenericEncodingFilter/filter-class/filterfilter-mappingfilter-nameencoding/filter-nameurl-pattern/*/url-pattern/filter-mapping 4、JSON 4.1、概念 在前端页面json和js对象的相互转换 4、JSON 这里需要注意的是RestController 注解会自动将返回值转换为JSON或XML格式的响应。 4.1、注解RestController和Controller的区别如下 注意RestControllerControllerResponseBody,二者可以组合起来搭配使用。用RestController注解返回的就只是一个JSON风格的字符串。 4.2、一个小案例 我的jdk版本是1.8。 1.建立一个实体类User。 package com.zhang.pojo;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;Data //需要导入lomb的相关依赖 AllArgsConstructor //有参构造 NoArgsConstructor //无参构造 public class User {private String name;private int age;private String sex; }2.导入pom.xml的相关依赖。 !--依赖--dependenciesdependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/versionscopetest/scope/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.3.4/version/dependencydependencygroupIdjavax.servlet/groupIdartifactIdservlet-api/artifactIdversion2.5/version/dependencydependencygroupIdjavax.servlet/groupIdartifactIdjstl/artifactIdversion1.2/version/dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.9.8/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.18.26/versionscopecompile/scope/dependency/dependencies!--资源过滤--buildresourcesresourcedirectorysrc/main/java/directoryincludesinclude**/*.properties/includeinclude**/*.xml/include/includesfilteringfalse/filtering/resourceresourcedirectorysrc/main/resources/directoryincludesinclude**/*.properties/includeinclude**/*.xml/include/includesfilteringfalse/filtering/resource/resources/build 3.在springmvc-servlet.xml中导入相关的解决json乱码的问题。 !-- 自动扫描包让指定包下的注解生效,由IOC容器统一管理 --context:component-scan base-packagecom.zhang.controller/!-- 让Spring MVC不处理静态资源 例如.html .js .css等让他们不用走视图解析器了影响效率--mvc:default-servlet-handler /!--支持mvc注解驱动在spring中一般采用RequestMapping注解来完成映射关系要想使RequestMapping注解生效必须向上下文中注册DefaultAnnotationHandlerMapping和一个AnnotationMethodHandlerAdapter实例这两个实例分别在类级别和方法级别处理。而annotation-driven配置帮助我们自动完成上述两个实例的注入。--mvc:annotation-driven /!-- 视图解析器 --bean classorg.springframework.web.servlet.view.InternalResourceViewResolveridinternalResourceViewResolver!-- 前缀 --property nameprefix value/WEB-INF/jsp/ /!-- 后缀 --property namesuffix value.jsp //bean!--解决json乱码的问题--mvc:annotation-drivenmvc:message-converters register-defaultstruebean classorg.springframework.http.converter.StringHttpMessageConverterconstructor-arg valueUTF-8//beanbean classorg.springframework.http.converter.json.MappingJackson2HttpMessageConverterproperty nameobjectMapperbean classorg.springframework.http.converter.json.Jackson2ObjectMapperFactoryBeanproperty namefailOnEmptyBeans valuefalse//bean/property/bean/mvc:message-converters/mvc:annotation-driven 4.在web.xml中导入相关依赖。 ?xml version1.0 encodingUTF-8? web-app xmlnshttp://xmlns.jcp.org/xml/ns/javaeexmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsdversion4.0!--1.注册servlet--servletservlet-nameSpringMVC/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class!--通过初始化参数指定SpringMVC配置文件的位置进行关联--init-paramparam-namecontextConfigLocation/param-nameparam-valueclasspath:springmvc-servlet.xml/param-value/init-param!-- 启动顺序数字越小启动越早 --load-on-startup1/load-on-startup/servlet!--所有请求都会被springmvc拦截 --servlet-mappingservlet-nameSpringMVC/servlet-nameurl-pattern//url-pattern/servlet-mappingfilterfilter-nameencoding/filter-namefilter-classcom.zhang.Filter.GenericEncodingFilter/filter-class/filterfilter-mappingfilter-nameencoding/filter-nameurl-pattern/*/url-pattern/filter-mapping/web-app5.建立一个controller类进行测试就可以了 import com.zhang.pojo.User; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController public class UserController {RequestMapping(/json1)public String json1() throws JsonProcessingException {ObjectMapper mappernew ObjectMapper();User usernew User(章鱼卷,1,女);String strmapper.writeValueAsString(user);return str;} } 6.EEROR 记得lib下要导入相关的jar包呀不然会报500的错的 5、ssm整合Mybatis层 学习就是苦中作乐加油呀我还有4天就开学了呜呜呜好快
http://www.hkea.cn/news/14277995/

相关文章:

  • 零基础自己做网站药监局网站建设方案
  • 江西建设信息网站沈阳网站制作网页
  • 网站开发费用会计分录连云港网站建设报价
  • 网站优化免费软件品牌建设运营方案
  • php做网站需要啥技术中企动力中山分公司网站
  • 新手做网站用什么软件湖州seo排名
  • 免费网页模板网站模型网站大全免费
  • 如何做优惠券网站个人缴纳养老保险
  • 多网合一网站做网站需要多少钱平邑
  • 中小型企业网站选择什么配置的亚马逊服务器春哥seo博客
  • 意识形态 加强网站建设坂田的做网站公司
  • 免费视频网站制作唐山网站主页制作
  • 公司网站建设维护及使用管理办法网站后台页面设计
  • 微信公众好第三方网站怎么做做电商网站的设计思路有什么
  • 网站开发系统简介物流公司招聘
  • 网站建设大致步骤做渔具网站
  • 新浪云建设自己的网站做寻亲网站的理由
  • 做贷款的网站如何做和别人一样的网站
  • wordpress自己的网页帝国网站seo
  • 网站下载免费软件安装wordpress 小公举
  • 建设部网站官网办事大厅长沙设计网站排名
  • 建设网站的企业公司免费观看
  • 国外化工网站模板注册公司怎么注销
  • 拨号服务器做网站nat123app与网站的关系
  • 图片手机网站建设多合一网站源码
  • 建筑网站建设案例高手做网站
  • linux服务器怎么做网站织梦网站开发视频
  • 网站关键词的作用电子商务网站建设背景
  • 深圳网站营销公司门户网站开发平台
  • 南京公司网站建立手机版网站嵌入代码