1.
<a href="emp/find.action?id=1"> 转发 可以 传递 参数
@Controller
@RequestMapping(value="/emp")
public class EmpAction {
@RequestMapping(value="/find")
public String findEmpById(int id,Model model) throws Exception{
System.out.println("查询"+id+"号员工信息");
//转发到EmpAction的另一个方法中去,即再次发送请求
return "forward:/emp/update.action";
//重定向到EmpAction的另一个方法中去,即再次发送请求
//return "redirect:/emp/update.action?id=" + id;
}
@RequestMapping(value="/update")
public String updateEmpById(int id,Model model) throws Exception{
System.out.println("更新" + id +"号员工信息");
model.addAttribute("message","更新员工信息成功");
return "/jsp/ok.jsp";
}
}
》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》
2. ajax 使用 常见的传值的 几种方式
emp List<emp> Map<String ,Object>
**********对比 struts2的ajax
springMVC.xml的配置就是:
2.1 /**
* @ResponseBody Emp 表示让springmvc将Emp对象转成json文本
*/
@RequestMapping(value="/bean2json")
public @ResponseBody Emp bean2json(int id) throws Exception{
//创建Emp对象
Emp emp = serviceImpl.findById(id);
return emp;
}
2.2
Jsp页面的 js+ajax 就是:
<input type="button" value="Emp转JSON"/><p>
<!-- emp转JSON -->
<script type="text/javascript">
$(":button:first").click(function(){
var url = "/emp/map2json.action";地址
var sendData = null; 发送的数据
$.post(url,sendData,function(backData,textStaut,ajax){
alert(ajax.responseText);
var name=backdata.empname;
如果 有日期
var empdate=backdata.empdate;
var date=new Date( empdate );
alert(">>>>>"+date.getFullYear()+">>>"+(date.getMonth()+1) +"<<<<")
});
});
</script>
<input type="button" value="Map<String,Object>转JSON"/><p>
@RequestMapping(value="/map2json")
public @ResponseBody Map<String,Object> map2json() throws Exception{
//创建List对象
List<Emp> empList = new ArrayList<Emp>();
//向List对象中添加三个Emp对象
empList.add(new Emp(1,"哈哈",7000D,new Date()));
empList.add(new Emp(2,"呵呵",8000D,new Date()));
empList.add(new Emp(3,"嘻嘻",9000D,new Date()));
//创建Map对象
Map<String,Object> map = new LinkedHashMap<String,Object>();
//向Map对象中绑定二个变量
map.put("total",empList.size());
map.put("rows",empList);
//返回需要转JSON文本的对象
return map;
}