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

福州市建设工程材料价格管理系统网站西安网站挂标

福州市建设工程材料价格管理系统网站,西安网站挂标,嘉兴城乡建设厅网站,三好街网站建设与维护1、题外话 前后端分离时代 后端部署后端#xff0c;提供接口#xff0c;提供数据 json 前端独立部署#xff0c;负责渲染后端的数据 2、什么是JSON JSON(JavaScript Object Notation, JS对象标记)是一种轻量级的数据交换格式#xff0c;目前使用特别广泛。 ●采用完全独立…1、题外话 前后端分离时代 后端部署后端提供接口提供数据 json 前端独立部署负责渲染后端的数据 2、什么是JSON JSON(JavaScript Object Notation, JS对象标记)是一种轻量级的数据交换格式目前使用特别广泛。 ●采用完全独立于编程语言的文本格式来存储和表示数据。 ●简洁和清晰的层次结构使得JSON成为理想的数据交换语言。 ●易于人阅读和编写同时也易于机器解析和生成并有效地提升网络传输效率。 在JavaScript语言中一切都是对象。因此任何JavaScript 支持的类型都可以通过JSON来表示例如字符串、数字、对象、数组等。看看他的要求和语法格式: ●对象表示为键值对数据由逗号分隔 ●花括号保存对象 ●方括号保存数组 JSON键值对是用来保存JavaScript对象的一种方式和JavaScript对象的写法也大同小异键/值对组合中的键名写在前面并用双引号包裏使用冒号:分隔然后紧接着值: {“name”: “QinJiang”} {“age”: “3” } {“sex”: “男”} ●JSON是JavaScript对象的字符串表示法它使用文本表示一个JS对象的信息本质是一个字符串。 var obj {a: ‘Hello’, b: ‘World’}; //这是一个对象注意键名也是可以使用引号包裹的 var json ‘{“a”: “Hello, “b”: “World”}’; //这是一个JSON 字符串本质是:一个字符串 JSON和JavaScript对象互转 ●要实现从JSON字符串转换为JavaScript对象使用JSON.parse()方法: var obj JSON.parse(’{“a”: “He1lo”,“b”: “World”}’); //结果是{a: ‘Hello’,b: ‘World’} ●要实现从JavaScript对象转换为JSON字符串使用JSON.stringify() 方法: var json JSON.stringify({a: ‘Hello’, b: ‘World’}); //结果是’{“a”: “Hello”, b”: “World”} 3、Controller返回JSON数据 3.1 jackson的使用 ●Jackson应该是目前比较好的json解析工具了 ●当然工具不止这一个比如还有阿里巴巴的fastjson等等。 ●使用Jackson需要导入它的jar包; 1在pom.xml中导入它的依赖 dependenciesdependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.11.4/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.16.10/version/dependency/dependencies2配置web.xml ?xml version1.0 encodingUTF-8? web-app xmlnshttps://jakarta.ee/xml/ns/jakartaeexmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttps://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsdversion5.0!--1 配置DispatcherServlet这个是SpringMVC的核心请求分发器前端控制器--servletservlet-namespringmvc/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class!--关联一个spring的配置文件: [servlet-name]-servlet.xmL--init-paramparam-namecontextConfigLocation/param-nameparam-valueclasspath:springmvc-servlet.xml/param-value/init-paramload-on-startup1/load-on-startup/servlet!--/匹配所有的请求: (不包括.jsp) --!--/*匹配所有的请求; (包括.jsp) --servlet-mappingservlet-namespringmvc/servlet-nameurl-pattern//url-pattern/servlet-mapping!--2.配置SpringMVC的乱码过滤--filterfilter-nameencoding/filter-namefilter-classorg.springframework.web.filter.CharacterEncodingFilter/filter-classinit-paramparam-nameencoding/param-nameparam-valueutf-8/param-value/init-param/filterfilter-mappingfilter-nameencoding/filter-nameurl-pattern/*/url-pattern/filter-mapping/web-app(3)新建并配置关联的springmvc-servlet.xml文件 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlns:contexthttp://www.springframework.org/schema/contextxmlns:mvchttp://www.springframework.org/schema/mvcxsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttps://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/mvchttps://www.springframework.org/schema/mvc/spring-mvc.xsd!--自动扫描指定的包下面所有注解类交给IOC容器管理--context:component-scan base-packagecom.kuang.controller/mvc:default-servlet-handler/mvc:annotation-driven /!-- 视图解析器--bean classorg.springframework.web.servlet.view.InternalResourceViewResolveridinternalResourceViewResolver property nameprefix value/WEB-INF/jsp/ /property namesuffix value.jsp //bean /beans4我们随便编写一个User的实体类然后我们去编写我们的测试Controller package com.kuang.pojo;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;Data //等同于getter and Setter AllArgsConstructor //生成带参构造器 NoArgsConstructor //生成无参构造器 public class User {private int id;private String name;private int age; }5测试Controller类 下述代码返回的是一个user对象的字符串格式。User( id3, name??1?,age 19) package com.kuang.controller;import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.kuang.pojo.User; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody;Controller public class UserController {RequestMapping(/j1)ResponseBody //他就不会走视图解析器会直接返回一个字符串public String json1() {//创建一个对象User user new User(3,秦疆1号,19);return user.toString();} }下述代码返回的则是一个Json格式{“id”:3,“name”:??1?,“age”:19} package com.kuang.controller;import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.kuang.pojo.User; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; Controller public class UserController {RequestMapping(/j1)ResponseBody //他就不会走视图解析器会直接返回一个字符串public String json1() throws JsonProcessingException {//jackson,ObjectMapperObjectMapper mapper new ObjectMapper();//创建一个对象User user new User(3,秦疆1号,19);String str mapper.writeValueAsString(user);return str;//return user.toString();} }6HTTP Status 500 - Servlet.init() for servlet springmvc threw exception type Exception report message Servlet.init() for servlet springmvc threw exception description The server encountered an internal error that prevented it from fulfilling this request. root causeorg.springframework.beans.factory.BeanCreationException: Error creating bean with name userController: Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.kuang.controller.UserController] from ClassLoader [WebappClassLoaderjava.lang.IllegalStateException: Failed to introspect Class [com.kuang.controller.UserController] from ClassLoader [WebappClassLoaderjava.lang.NoClassDefFoundError: com/fasterxml/jackson/core/JsonProcessingException试试关于java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/JsonProcessingException解决方法 以及记 Idea lib导包 500 错误_波拿巴的博客-CSDN博客 我是根据第二篇博文解决的我修改了pom.xml中的依赖为 dependenciesdependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.11.4/version/dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-core/artifactIdversion2.11.4/version/dependencydependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-annotations/artifactIdversion2.11.4/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.16.10/version/dependency/dependencies然后重新在 lib下加入好了之后再启动的tomcat就可以了 (7)发现出现了乱码问题 乱码是因为它只是将字符串输出到当前页面没有通过向前端发送请求也没有过视图解析器自然也就没有走srpingmvc配置文件中的乱码过滤步骤。 我们需要设置一下他的编码格式为utf-8, 以及它返回的类型; 通过** RequestMaping的produces属性**来实现修改下代码 Controller public class UserController {RequestMapping(value /j1,produces application/json;charsetutf-8)ResponseBody //他就不会走视图解析器会直接返回一个字符串public String json1() throws JsonProcessingException {//jackson,ObjectMapperObjectMapper mapper new ObjectMapper();//创建一个对象User user new User(3,秦疆1号,19);String str mapper.writeValueAsString(user);return str;//return user.toString();} }结果 上一种方法比较麻烦如果项目中有许多请求则每一个都要添加 可以通过Spring配置统一指定这样就不用每次都去处理了! 在springmvc的配置文件上添加一段消息StringHttpMessageConverter转换配置! !--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 name failOnEmptyBeans value false//bean/property/bean/mvc:message-converters/mvc:annotation-driven重启一下再看效果就对了 8返回集合 //返回一个集合RequestMapping(/j2)public String json2() throws JsonProcessingException {ObjectMapper mapper new ObjectMapper();ArrayListObject list new ArrayList();User user1 new User(3,秦疆1号,19);User user2 new User(3,秦疆1号,19);User user3 new User(3,秦疆1号,19);User user4 new User(3,秦疆1号,19);list.add(user1);list.add(user2);list.add(user3);list.add(user4);String str mapper.writeValueAsString(list);return str;}效果 9返回时间戳 RequestMapping(/j3)public String json3() throws JsonProcessingException {ObjectMapper mapper new ObjectMapper();// objectMapper, 时间解析后的默认格式为: Timestamp(时间戳)Date date new Date();return mapper.writeValueAsString(date);}RequestMapping(/j3)public String json3() throws JsonProcessingException {ObjectMapper mapper new ObjectMapper();// objectMapper, 时间解析后的默认格式为: Timestamp(时间戳)Date date new Date();//自定义日期格式SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss ) ;return mapper.writeValueAsString(sdf.format(date));}RequestMapping(/j3)public String json3() throws JsonProcessingException {ObjectMapper mapper new ObjectMapper();// objectMapper, 时间解析后的默认格式为: Timestamp(时间戳)//不使用时间戳的方式mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,false);//自定义日期格式SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss ) ;mapper.setDateFormat(sdf);Date date new Date();return mapper.writeValueAsString(date);}抽取为JSON工具类 public class JsonUtils {public static String getJson(Object object){return getJson(object,yyyy-MM-dd HH:mm:ss);}public static String getJson(Object object, String dateFormat){ObjectMapper mapper new ObjectMapper();//不使用时间戳的方式mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,false);//自定义日期格式SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss ) ;mapper.setDateFormat(sdf);try {return mapper.writeValueAsString(object);} catch (JsonProcessingException e) {e.printStackTrace();}return null;}
http://www.sadfv.cn/news/278688/

相关文章:

  • 常州市网站制作河北网站备案查询系统
  • 公司网站内容相近电子商城网站开发的背景
  • 成都营销型网站建设及推广那家好网站高端网站建设
  • 网站空间域名购买手机建设网站自适应的好处
  • 做企业网站需要多少钱wordpress评论表情不显示
  • 建设一个网站需要什么技术扬中炒地皮
  • 我的网站首页打不开邢台网站建设哪家好
  • 宁波建设行业招聘信息网站搭建网站的企业
  • 网站用户 分析wordpress成功的网站
  • 淘宝代做网站html动态页面
  • 三合一网站建设公司不用登录的游戏
  • 我注册过的网站招商信息发布网站大全
  • 唐山模板建站定制网站进入深圳市住房和建设局网站
  • 网站建设去哪里wordpress制作app
  • 网站系统模版如何网站点击率
  • 站长检测工具php中英文网站
  • 免费flash网站模板带后台重庆门户网站有哪些
  • 网站开发 手机 电脑莆田有交做外贸网站的没
  • 专业定制网站开发公司临安城市建设公司网站
  • 海淀公司网站搭建百度推广优化是什么?
  • 合肥百度网站排名优化广州品牌设计公司50强
  • python3 网站建设厦门网站建设方案报价
  • 电视台网站开发软件培训学校
  • 米特号类似网站品牌建设实施方案
  • 祥云县网站个旧网络推广
  • 网页新建站点免费的会员卡管理软件
  • 网站地图添加网络综合设计实验报告
  • 网站目录怎么做301跳转用asp制作一个简单的网站
  • 做个视频网站建设网站的目的和功能定位
  • 汕头建设网站关于做ppt的网站有哪些