正常我们使用ModelAndView是这样的:
mView.setViewName(url);
这个url是相对路径,它的路径是根据springmvc配置文件dispatcher-servlet.xml来配置来决定的:
id="jspViewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/page/" />
<property name="suffix" value=".jsp" />
<property name="order" value="0">property>
现在我们想直接跳转到指定url,不经过路径映射转换,如下
String url = "www.baidu.com";
ModelAndView mView = new ModelAndView(new RedirectView(url));
比如jsp里
<%
String name = "cy";
或者String name = (String)request.getSession().getAttribute("name");
%>
在js里取name值方法如下:
"<%=name%>"
首先,传递数据必需写在ModelMap里,比如有个modelAndView对象名是mView,则
mView.getModelMap().addAttribute("openId", openId);
jsp里用java取数据方式如下:
<%
String openId = (String)request.getAttribute("openId");
%>
如果用js取传递的数据,则数据添加如下:
mView.addObject("openId", openId)
jsp的js取数据方式如下:
${openId}
v-bind结合三目运算符
<a rel="#a" :class="index==0?'f-active':''">{{item.nmCn}}a>
1.若是ajax请求,必需指定数据类型是:“application/json”
2.数据数据是json类型的字符串,字符是字符串
3.必需是POST请求
4.在接收的方法里使用@RequestBody标识类,如下:
@RequestMapping(value = "/test", method = RequestMethod.POST)
@ResponseBody
public Object updateAddrInfo(@RequestBody TestRo testRo) {
}
ConversionSerivce的作用是把http的请求参数以什么形式进行类型转换,即传递的参数转换成我们想要的参数,当然这是一种额外的使用方法,平时可能不常使用。
比如delphi语言不直接日期里的空格,中间可能会加上“T”来代替空格,但java是不能识别的,故需要我们在传递参数时就把它转换成我们想要的格式。
定义一个TimestampConverter.java:
package yui.ui.web.convert;
import java.sql.Timestamp;
import java.util.Date;
import org.apache.commons.lang3.StringUtils;
import org.springframework.core.convert.converter.Converter;
import yui.comn.util.DateUtils;
public class TimestampConverter implements Converter {
@Override
public Timestamp convert(String timeStr) {
Timestamp t = null;
timeStr = timeStr.replace("T", " ");
if (StringUtils.isNotBlank(timeStr)) {
try {
t = DateUtils.covertStrToTimestamp(timeStr, "yyyy-MM-dd HH:mm:ss");
} catch (Exception e) {
t = new Timestamp(new Date().getTime());
e.printStackTrace();
}
}
return t;
}
}
dispatcherServlet.xml里配置如下:
<mvc:annotation-driven conversion-service="conversionService">
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8value>
<value>text/html;charset=UTF-8value>
list>
property>
bean>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="objectMapper">
<bean class="com.fasterxml.jackson.databind.ObjectMapper">
<property name="dateFormat">
<bean class="java.text.SimpleDateFormat">
<constructor-arg type="java.lang.String" value="yyyy-MM-dd HH:mm:ss" />
bean>
property>
bean>
property>
bean>
mvc:message-converters>
mvc:annotation-driven>
<bean id="conversionService"
class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<list>
<bean class="yui.ui.web.convert.TimestampConverter">bean>
list>
property>
bean>