1.創建一個普通的maven項目,引入Spring MVC 的pom依賴
2.添加Spring的配置(xml方式applicationContext.xml)掃描除了controller包之外的包(掃描所有的包,除了controller)
3添加Spring mvc 的配置(xml方式 mcv-servlet)掃描controller包(不掃描所有的包,除了controller)
4添加web.xml加載這兩個配置
5在service中寫一個注解類(@service)
6.在controller中寫一個注解類(@RestController)用(@Autowried)將service注入進來。寫一個方法並加上請求的路徑(@GetMapping(“/hello”))
7.瀏覽器訪問/hello這個路徑
以上就是用xml方式對Spring 和Spring MVC整合。
下面我們用java對他整合,這個也是Spring boot中對ssm整合的方式
1.創建一個普通的maven項目,引入Spring MVC 的pom依賴
2.添加Spring的配置
//@Configuration表示他是一個配置類,類似於 applicationContext.xml @Configuration //掃描所有的包除了 Controller @ComponentScan(basePackages = "com.zl", useDefaultFilters = true, excludeFilters = {@ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Controller.class)}) public class SpringConfig { }
3添加Spring mvc 的配置
@Configuration //所有的包都不掃,除了Controller @ComponentScan(basePackages = "com.zl",useDefaultFilters = false,includeFilters = {@ComponentScan.Filter(type = FilterType.ANNOTATION,classes = Controller.class)}) public class SpringMVCConfig { }
4.用java代碼替代web.xml加載這兩個配置
//當容器啟動時,就會j加載這個類 public class Webxml implements WebApplicationInitializer { public void onStartup(ServletContext servletContext) throws ServletException { //首先來加載 SpringMVC 的配置文件 AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext(); // 注冊bean ctx.register(SpringMVCConfig.class); // 添加 DispatcherServlet ServletRegistration.Dynamic springmvc = servletContext.addServlet("springmvc", new DispatcherServlet(ctx)); // 給 DispatcherServlet 添加路徑映射 springmvc.addMapping("/"); // 給 DispatcherServlet 添加啟動時機 springmvc.setLoadOnStartup(1); } }
5.寫一個controller進行測試。