论坛首页 Java企业应用论坛

基于spring3.0.5 mvc 简单用户管理实例

浏览 107052 次
该帖已经被评为精华帖
作者 正文
   发表时间:2011-06-08  
zhangyou1010 写道
spriing ----->spring

谢谢提醒,已改正
0 请登录后投票
   发表时间:2011-06-08  
long502147 写道
RequestMapping注解里的这个属性method=RequestMethod.POST,一定要配置么?请问一下Lz不配置有什么不一样不?

不配置表示任何请求方式都可以,不过一般遵寻 REST 约定,还是根据具体动作配置一下比较好。
0 请登录后投票
   发表时间:2011-06-08  
rekoe.net 写道
引用

<!-- 配置静态资源,直接映射到对应的文件夹,不被DispatcherServlet处理,3.04新增功能,需要重新设置spring-mvc-3.0.xsd -->
	<mvc:resources mapping="/img/**" location="/img/"/>
	<mvc:resources mapping="/js/**" location="/js/"/>
	<mvc:resources mapping="/css/**" location="/css/"/>


请问 这个怎么设置

需要重新设置spring-mvc-3.0.xsd

这个是因为mvc:resources是spring3.0.4新增的,所以如果使用之前的版本的spring-mvc-3.0.xsd就没有mvc:resources,所以Myeclipse会报错。
可以设置Mycelipse的XML Catalog,增加一个新的spring-mvc-3.0.xsd本地的映射。
还可以直接用新的spring-mvc-3.0.xsd替换Myeclipse中旧的spring-mvc-3.0.xsd。我的Myeclipse是8.6版自带的是spring3.0.1,如果Myeclipse不支持spring3.0,只能用第一种方法了。

1.引入相应JAR包
2.Myeclipse中window->preferences->XML->XML Catalog->add..
3.key type->URI
4.Location->file system->xxx/spring-mvc-3.0.xsd(注意一定要是spring3.0.4之后的版本的)
5.key type->Schema Location
6.key后面加上文件名/spring-mvc-3.0.xsd
7.OK
0 请登录后投票
   发表时间:2011-06-08  
引用


<!--   
    配置一个基于注解的定制的WebBindingInitializer,解决日期转换问题,方法级别的处理器映射,  
    有人说该bean要放在context:component-scan前面,要不然不起作用,但我试的放后面也可以啊。  
    -->  
    <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">  
        <property name="cacheSeconds" value="0" />  
        <property name="webBindingInitializer">  
            <bean class="com.fsj.spring.util.MyWebBinding" />  
        </property>  
    </bean> 



你这个是拦截所有的属性的吧?

对这个比较感兴趣,有空试一试

以前我是直接用注解的
@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date endTime,
			@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date startTime


1 请登录后投票
   发表时间:2011-06-08  
denger 写道
long502147 写道
RequestMapping注解里的这个属性method=RequestMethod.POST,一定要配置么?请问一下Lz不配置有什么不一样不?

不配置表示任何请求方式都可以,不过一般遵寻 REST 约定,还是根据具体动作配置一下比较好。

是的,最好还是配置一下,还可以把一个请求路径各配置一个get和post,这样根据不同的请求方法可以进行不同的处理,如我的:同样的请求路径 user/add 如果是get请求就转到增加页面去,如果是post请求就做add操作
0 请登录后投票
   发表时间:2011-06-08  
引用


<!-- 启用基于注解的处理器映射,添加拦截器,类级别的处理器映射 --> 
    <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"> 
        <property name="interceptors"> 
            <list> 
                <bean class="com.fsj.spring.util.MyHandlerInterceptor"/> 
            </list> 
        </property> 
    </bean>


这个配置可以用mvc的标签配置更方便点,个人感觉
<!-- 针对类、方法级别的权限拦截器 -->
	<mvc:interceptors>
	<!-- 管理员的权限拦截器 -->
		<mvc:interceptor>
			<mvc:mapping path="/adminhome/*" />
			<mvc:mapping path="/roles/*" />
			<mvc:mapping path="/sysuser/*" />
			<mvc:mapping path="/record/*" />
			<mvc:mapping path="/deliver/*" />
			<mvc:mapping path="/sysmonitor/*" />
			<mvc:mapping path="/moduleconf/*" />
			<mvc:mapping path="/business/*" />
			<mvc:mapping path="/userapp/*" />
			<mvc:mapping path="/payment/*" />
			<bean class="com..web.interceptor.LoginInterceptor"></bean>
		</mvc:interceptor>
	<!-- 普通用户的权限拦截器 -->
		<mvc:interceptor>
			<mvc:mapping path="/userhome/*" />
			<mvc:mapping path="/user/*" />
			<bean class="com..web.interceptor.PhoneUserLoginInterceptor"></bean>
		</mvc:interceptor>
	</mvc:interceptors>


0 请登录后投票
   发表时间:2011-06-08  
为什么几乎所有人都说spring mvc是0配置,或者“几乎0配置”?
难道注解不算是配置?

如果把path映射写在annotation中,就算是0配置,那目前所有的主流web框架都是0配置了。

所谓的0配置就是不需要写配置信息,一切都是按照约定来解析,不需要写xml或者annotation,spring mvc离这个目标还差很多呢,哪来的0配置?
0 请登录后投票
   发表时间:2011-06-08  
matychen 写道
引用


<!--   
    配置一个基于注解的定制的WebBindingInitializer,解决日期转换问题,方法级别的处理器映射,  
    有人说该bean要放在context:component-scan前面,要不然不起作用,但我试的放后面也可以啊。  
    -->  
    <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">  
        <property name="cacheSeconds" value="0" />  
        <property name="webBindingInitializer">  
            <bean class="com.fsj.spring.util.MyWebBinding" />  
        </property>  
    </bean> 



你这个是拦截所有的属性的吧?

对这个比较感兴趣,有空试一试

以前我是直接用注解的
@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date endTime,
			@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date startTime



不是所有所有属性,不过这样应该已经够用了,这个我现在也没有研究的很清楚,比如由Date转String的时候怎么灵活处理,目前是在页面上用的fmt标签,感觉有点不方便
0 请登录后投票
   发表时间:2011-06-08  
matychen 写道
引用


<!-- 启用基于注解的处理器映射,添加拦截器,类级别的处理器映射 --> 
    <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"> 
        <property name="interceptors"> 
            <list> 
                <bean class="com.fsj.spring.util.MyHandlerInterceptor"/> 
            </list> 
        </property> 
    </bean>


这个配置可以用mvc的标签配置更方便点,个人感觉
<!-- 针对类、方法级别的权限拦截器 -->
	<mvc:interceptors>
	<!-- 管理员的权限拦截器 -->
		<mvc:interceptor>
			<mvc:mapping path="/adminhome/*" />
			<mvc:mapping path="/roles/*" />
			<mvc:mapping path="/sysuser/*" />
			<mvc:mapping path="/record/*" />
			<mvc:mapping path="/deliver/*" />
			<mvc:mapping path="/sysmonitor/*" />
			<mvc:mapping path="/moduleconf/*" />
			<mvc:mapping path="/business/*" />
			<mvc:mapping path="/userapp/*" />
			<mvc:mapping path="/payment/*" />
			<bean class="com..web.interceptor.LoginInterceptor"></bean>
		</mvc:interceptor>
	<!-- 普通用户的权限拦截器 -->
		<mvc:interceptor>
			<mvc:mapping path="/userhome/*" />
			<mvc:mapping path="/user/*" />
			<bean class="com..web.interceptor.PhoneUserLoginInterceptor"></bean>
		</mvc:interceptor>
	</mvc:interceptors>



嗯,看着你用mvc标签的配置是方便些,还有什么好的见意,希望多讨论下。
0 请登录后投票
   发表时间:2011-06-08   最后修改:2011-06-08
george_space 写道
为什么几乎所有人都说spring mvc是0配置,或者“几乎0配置”?
难道注解不算是配置?

如果把path映射写在annotation中,就算是0配置,那目前所有的主流web框架都是0配置了。

所谓的0配置就是不需要写配置信息,一切都是按照约定来解析,不需要写xml或者annotation,spring mvc离这个目标还差很多呢,哪来的0配置?

呵呵,何必要这上面较真呢,不过是一种宣传罢了,管它什么0配置不0配置呢,好用不就行了 ,个人感觉annotation也有不方便的地方,不便于统一管理,不方便跟踪查找。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics