绝大多数情况下,springmvc多使用注解的的方式,配置的方式极少使用,但倘若在别的项目中遇到,也要看的明白。
1、前提约束
- 完成基于注解的springmvc的demo https://www.jianshu.com/p/d1a84f07c98f
2、操作步骤
- 删除spring-mvc.xml中注解相关的标签:<context:component-scan>、<mvc:annotation-driven>
- 删除相关java类上面的@Controller,@Service等注解。
2.1 BeanNameUrlHandlerMapping的使用
- 在spring-mvc.xml中加入以下内容:
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean>
<bean id="/userController" class="net.wanho.controller.UserController">
</bean>
- 在src文件夹下创建net.wanho.controller.UserController.java,内容如下:
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class UserController implements Controller {
@Override
public ModelAndView handleRequest(javax.servlet.http.HttpServletRequest httpServletRequest, javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("name","ali");
modelAndView.setViewName("success");
return modelAndView;
}
}
- 在WEB-INF/page/文件夹下创建success.jsp页面
- 启动,在浏览器中输入 http://localhost:8080/userController
2.2 SimpleUrlHandlerMapping的使用
- 删掉之前spring-mvc.xml中的内容,加入以下内容:
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/hello2">userController</prop>
<prop key="/hello3">userController</prop>
</props>
</property>
</bean>
<bean id="userController" class="net.wanho.controller.UserController">
</bean>
- net.wanho.controller.UserController.java的内容不改变
- 重启tomcat,在浏览器中输入 http://localhost:8080/hello1
2.3 ControllerClassNameHandlerMapping的使用
- 删掉之前spring-mvc.xml中的内容,加入以下内容:
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
<bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping">
</bean>
<bean id="studentController" class="net.wanho.controller.StudentController" scope="prototype">
</bean>
- 在src文件夹下创建net.wanho.controller.StudentController.java,内容如下:
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class StudentController extends MultiActionController {
public String insertUser(HttpServletRequest request,
HttpServletResponse response) {
return "success";
}
public String test(HttpServletRequest request,
HttpServletResponse response){
return "success";;
}
}
- 重启tomcat,在浏览器中输入
http://localhost:8080/student/insertUser 或者
http://127.0.0.1:8080/student/test
都能进入api并且返回到前端页面。
以上就是基于配置的springmvc的使用。