contextConfigLocation
classpath:springmvc-servlet.xml
1
SpringMVC
/
<?xml version="1.0" encoding="UTF-8"?>2、配置springmvc-servlet.xml
<beans xmlns=“http://www.springframework.org/schema/beans”
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
xmlns:context=“http://www.springframework.org/schema/context”
xmlns:mvc=“http://www.springframework.org/schema/mvc”
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
https://www.springframework.org/schema/mvc/spring-mvc.xsd">
<context:component-scan base-package=“com.sqx.controller”/>
<mvc:default-servlet-handler />
<mvc:annotation-driven />
<bean class=“org.springframework.web.servlet.view.InternalResourceViewResolver”
id=“internalResourceViewResolver”>
<?xml version="1.0" encoding="UTF-8"?>3、配置pom.xml
<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”>
Json和Ajax笔记
org.example
1.0-SNAPSHOT
4.0.0
Json篇
org.springframework
spring-webmvc
5.2.0.RELEASE
com.fasterxml.jackson.core
jackson-databind
2.10.0
src/main/java
**/*.properties
**/*.xml
false
src/main/resources
**/*.properties
**/*.xml
false
Controller测试
@Controller
public class JsonController {
//一般情况下我们的请求会被视图解析器解析,返回结果,但是此处我们需要的时返回一个JSON格式的js对象
//市面上很多第三方jar包可以实现,jackson、FastJson(阿里巴巴)
//@ResponseBody 可以直接将服务器响应的对象转换为json格式返回!
@RequestMapping(“/json1”)
@ResponseBody
public String json1() throws JsonProcessingException {
System.out.println(“成功进入请求”);
//需要一个Json的对象映射器,使用它可以直接将java对象转换为json格式的字符串
ObjectMapper objectMapper = new ObjectMapper() ;
User user = new User(“松崎乡”, 20, “男”);
String str = objectMapper.writeValueAsString(user);
return str ;
}
}
@Controller + @ResponseBody == @RestController
**测试结果: **
1、JSON数据出现乱码问题
发现结果乱码了{“name”:“???”,“age”:20,“sex”:“?”},如何解决?
1、方法一
修改@RequestMapping即可
@RequestMapping(value=“/json2”,produces = “application/json;charset=utf-8”)
缺点:每次请求都需要设置,麻烦
2、方法二
乱码统一解决,在springmvc-servlet.xml中添加如下一段
mvc:annotation-driven
<mvc:message-converters register-defaults=“true”>
</mvc:message-converters>
</mvc:annotation-driven>
如果我们json是返回的数组或集合我们可以用https://www.sojson.com/解析JSON的格式
2、时间格式问题
默认我们的mapper会将时间Date解析为一个时间戳,我们需要为其设置时间格式
@RequestMapping(value=“/time4”)
@ResponseBody
public String json4() throws JsonProcessingException {
//需要一个Json的对象映射器,使用它可以直接将java对象转换为json格式的字符串
ObjectMapper objectMapper = new ObjectMapper() ;
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,false) ; //关闭时间戳
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(“yyyy-MM-dd HH-mm-SS”);
objectMapper.setDateFormat(simpleDateFormat); // 为解析器设置时间规则
Date date = new Date(); //默认返回的是时间戳
String str = objectMapper.writeValueAsString(date);
return str ;
}
结果
我们发现代码复用太多,封装一个工具类
public class JsonUtils {
//使用默认时间戳
public static String getJson(Object obj){
//需要一个Json的对象映射器,使用它可以直接将java对象转换为json格式的字符串
ObjectMapper objectMapper = new ObjectMapper() ;
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,false) ; //关闭时间戳
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(“yyyy-MM-dd HH-mm-SS”);
objectMapper.setDateFormat(simpleDateFormat); // 为解析器设置时间规则
String str = null;
try {
str = objectMapper.writeValueAsString(obj);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
return str ;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
最后
面试题文档来啦,内容很多,485页!
由于笔记的内容太多,没办法全部展示出来,下面只截取部分内容展示。
1111道Java工程师必问面试题
MyBatis 27题 + ZooKeeper 25题 + Dubbo 30题:
Elasticsearch 24 题 +Memcached + Redis 40题:
Spring 26 题+ 微服务 27题+ Linux 45题:
Java面试题合集:
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
部分内容展示。**
1111道Java工程师必问面试题
[外链图片转存中…(img-vArAYtLX-1713441585146)]
MyBatis 27题 + ZooKeeper 25题 + Dubbo 30题:
[外链图片转存中…(img-nQfENIFL-1713441585146)]
Elasticsearch 24 题 +Memcached + Redis 40题:
[外链图片转存中…(img-bBryakFy-1713441585147)]
Spring 26 题+ 微服务 27题+ Linux 45题:
[外链图片转存中…(img-DQ3EYIqs-1713441585147)]
Java面试题合集:
[外链图片转存中…(img-KIYMCvtI-1713441585147)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!