基於註解的spring MVC程式
阿新 • • 發佈:2019-01-01
在上一篇博文的基礎上進行修改
修改配置檔案
<?xml version="1.0" encoding="UTF-8"?> <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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd "> <!-- 自動裝配bean --> <!-- 自動檢測bean --> <context:component-scan base-package="com.hellospringmvc" ></context:component-scan> <!-- 配置處理器對映器 --> <!-- 使用RequestMappingHandlerMapping需要在Handler 中使用@controller標識此類是一個控制器,使用@requestMapping指定Handler方法所對應的url --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"> </bean> <!-- 配置處理器介面卡 --> <!-- RequestMappingHandlerAdapter,不要求Handler實現任何介面,它需要和RequestMappingHandlerMapping註解對映器配對使用,主要解析Handler方法中的形參 --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/> <!-- 配置檢視解析器 要求將jstl的包加到classpath --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/" /> <property name="suffix" value=".jsp" /> </bean> </beans>
修改類
package com.hellospringmvc; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; @Controller public class HelloController { @RequestMapping("/queryItems") public ModelAndView queryItems(){ //商品列表 List<Item> itemsList = new ArrayList<Item>(); Item items_1 = new Item(); items_1.setName("聯想筆記本"); items_1.setPrice(6000f); items_1.setDetail("ThinkPad T430 聯想膝上型電腦!"); Item items_2 = new Item(); items_2.setName("蘋果手機"); items_2.setPrice(5000f); items_2.setDetail("iphone6蘋果手機!"); itemsList.add(items_1); itemsList.add(items_2); //建立modelAndView準備填充資料、設定檢視 ModelAndView modelAndView = new ModelAndView(); //填充資料 modelAndView.addObject("itemsList", itemsList); //檢視 modelAndView.setViewName("helloController"); return modelAndView; } }