这是后台代码:
@Controller
@RequestMapping(“${admin}/main")
public class MainController extends BaseController {
@Value("${admin}")
private String admin;
@RequestMapping("${user.list}")
public void test(){
logger.info("进入了我的方法");
System.out.println("进入了我的方法");
}
@RequestMapping("${toMain}")
public String toMain(){
logger.info("进入了toMain方法");
System.out.println("进入了toMain方法"+admin);
return "main";
}
}
这个是web.properties文件
user.list=/user/list
toMain=/toMain
admin=/a
在浏览器输入http:localhost:8080/a/main/user/list 就会进入第一个方法,输入http:localhost:8080/a/main/toMain 就会进入第二个方法
springMVC支持用el表达式的方式在@RequestMapping中取properties文件的属性的值
还可以通过@Value注解将properties中的属性注入到对象的属性中
这样我们就可以动态的做一些事情了!!!
开启这个配置的条件是spring-mvc.xml 也就是springMVC的核心配置文件:(下面这些配置一个都不能少)
<?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"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"
default-lazy-init="true">
<!—-开启mvc注解映射支持—->
<mvc:annotation-driven />
<!—-自动注册bean,只扫描controller—->
<context:component-scan base-package="com.wu.web.controller" />
<!-- 加载配置属性文件 -->
<context:property-placeholder ignore-unresolvable="true" location="classpath:web.properties" />
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>