怎样实现spring MVC不用表单提交到控制器的页面跳转? 50
就是有一个“登录”的关键词,我想实现提交路径到后台实现跳转到登录界面,可是我不想用表单提交,因为不需要提交数据啊,所以有没有其他的方式呢?超链接不能用。...
就是有一个“登录”的关键词,我想实现提交路径到后台实现跳转到登录界面,可是我不想用表单提交,因为不需要提交数据啊,所以有没有其他的方式呢?超链接不能用。
展开
1个回答
2018-06-17 · 知道合伙人互联网行家
关注
展开全部
我也遇到相同的问题.我是这么解决的.
在Controller中添加@InitBinder方法:
/*
* 分配资源,权限放进Role的List<Permit>
*/
@InitBinder
public void initBinder(final WebDataBinder binder) {
binder.registerCustomEditor(Permit.class, new CustomEditor());
}
再实现CustomEditor
public class CustomEditor extends PropertyEditorSupport{
public void setAsText(String text) {
Permit permit = new Permit();
permit.setPermitId(Long.parseLong(text));
//you have to create a FieldValue object from the string text
//which is the one which comes from the form
//and then setting the value with setValue() method
setValue(permit);
}
}
注:registerCustomEditor方法第一个参数是集合中的类型.即你User中Set<Role>的Role.
不好的地方是,页面每次的请求都会执行@InitBinder方法.
在Controller中添加@InitBinder方法:
/*
* 分配资源,权限放进Role的List<Permit>
*/
@InitBinder
public void initBinder(final WebDataBinder binder) {
binder.registerCustomEditor(Permit.class, new CustomEditor());
}
再实现CustomEditor
public class CustomEditor extends PropertyEditorSupport{
public void setAsText(String text) {
Permit permit = new Permit();
permit.setPermitId(Long.parseLong(text));
//you have to create a FieldValue object from the string text
//which is the one which comes from the form
//and then setting the value with setValue() method
setValue(permit);
}
}
注:registerCustomEditor方法第一个参数是集合中的类型.即你User中Set<Role>的Role.
不好的地方是,页面每次的请求都会执行@InitBinder方法.
追问
不是!一般我做页面访问后端controller是用的表单提交!可是当我不用传输表单数据时!仅仅是访问后端controller实现跳转下一个页面!一般是不能用超链接!不用表单的action路径指定!那么怎么去实现访问后端并跳转下一个页面。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询