springMVC,@Requestmapper(value=)这个value如何才能达到从配置文件中读取:报错
1.我试过写在配置文件中读取,但是发现这个value值只规定要final才可以。
2.也试过先读取到再赋值给一个fianl常量但是也不行
3.不管我怎么赋值到这个value这都会提示必须要用常量,有没有遇到同样问题的大神解决了的帮帮我
http://docs.spring.io/spring/docs/3.2.17.RELEASE/spring-framework-reference/htmlsingle/#mvc-ann-requestmapping-placeholders
从Spring3.2支持,在RequestMapping的value中以${}的方式引用配置文件中的值,也就是说,你可以使用 @RequestMapping("${url.user.edit}.html") 这样配置。
配置文件通过PropertyPlaceholderConfigurer或<context:property-placeholder>加载
######您这边可以写个简单的案例吗。我试了下不行...我想可能我做法错了######楼主,你所说的那个我以前也想过,但是貌似从原理上来说就不行啊。
因为java里面的注解有些是在编译期有效,然后运行期就没有效果了,但是语法检查那些没有仔细检查哪些是编译有效哪些是运行有效的,所以注解里面的值要求在编译的时候是确定的值,那你说的那个就没有办法咯。
但是有一个折中的办法实现————使用static的的常量。建一个类,准备各种配置的static常量,这样貌似可以在一定程度达到你说的目的。
######恩,本来就是用的你说的,我只是想进一步######可以看下这个文章,不知道是不是你想要的效果
http://blog.csdn.net/white__cat/article/details/42103155
######回复 @GYW : 我不是要这种哦,这是使用value注解加载配置文件中的值,我必须要有一个常量,但是用fianl修饰的变量就必须要赋值,或则就在构造方法中赋值,但是value注解又不能写在构造方法中。。。######回复 @GYW : 的确是没有办法的,我想可以用静态常量来将就下######回复 @阿信sxq : 直接配置文件的话好像没有办法吧,能想到的只有这个了######回复 @GYW : 不行的,那篇文章的方法是用来把配置文件的内容注入到实例里面。而楼主说的是用配置文件的内容来配置注解######回复 @阿信sxq : 可以通过这种方式把配置实例化为对象,有对象就可以随便用到任何对象了,这样就可以通过这个对象给@Requestmapper中的value赋值了啊版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。