首先是控制器的配置:
1 package cn.cuibusi.ssm.controller; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 import org.springframework.stereotype.Controller; 6 import org.springframework.web.bind.annotation.RequestMapping; 7 import org.springframework.web.servlet.ModelAndView; 8 import cn.cuibusi.ssm.po.Items; 9 10 //他是一個控制器 11 @Controller 12 public class ItemsController2 { 13 //將方法和url進行映射,一個方法對應一個url 14 @RequestMapping("/queryItems3") 15 public ModelAndView queryItems3() throws Exception{ 16 //調用service查找 數據庫,查詢商品列表,這里使用靜態數據模擬 17 List<Items> itemsList = new ArrayList<Items>(); 18 //向list中填充靜態數據 19 Items items_1 = new Items(); 20 items_1.setName("聯想筆記本"); 21 items_1.setPrice(6000f); 22 items_1.setDetail("ThinkPad T430 聯想筆記本電腦!"); 23 Items items_2 = new Items(); 24 items_2.setName("蘋果手機"); 25 items_2.setPrice(5000f); 26 items_2.setDetail("iphone6蘋果手機!"); 27 itemsList.add(items_1); 28 itemsList.add(items_2); 29 //返回ModelAndView 30 ModelAndView modelAndView = new ModelAndView(); 31 //相當 於request的setAttribut,在jsp頁面中通過itemsList取數據 32 modelAndView.addObject("itemsList", itemsList); 33 //指定視圖 34 modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp"); 35 return modelAndView; 36 } 37 }
然后是注解的springmvc配置文件的配置 springmvc.xml:
1 <!-- 對於注解的Handler可以單個配置 2 實際開發中建議使用組件掃描 3 --> 4 <!-- <bean class="cn.cuibusi.ssm.controller.ItemsController2" /> --> 5 <!-- 可以掃描controller、service、... 6 這里讓掃描controller,指定controller的包 7 --> 8 <context:component-scan base-package="cn.cuibusi.ssm.controller"></context:component-scan>
這樣看起來沒有任何的問題,然而一執行

what?這是什么鬼錯誤?而我用上面一種直接指定類的方式的時候沒有任何的問題
。。。。。。百思不得解
普天同慶,解決辦法已找到:原因是我的springmvc配置版本過低或者理解為我的jdk版本過高
解決辦法就是把springmvc的的jar包替換為4.0版本以上的 或者 把jdk降到1.7。
