Spring
mvc流程:前端控制器DispatcherServle->HandlerMapping映射->HandlerAdapter控制器的适配器->ModelAndView的逻辑视图名->view
@Controller
@RequestMapping(value = "/personal") 控制前和url
@RequestMapping("/query_untreated_express_list.html")
@ResponseBody
public ResponseData<List<UntreatedExpressInfo>> queryUntreatedExpress(@RequestParam(value = "account", required = false) String account) 直接在ie上输入网址拼接的地址后跟参数就能实现
@autowired 在xml文件里面配置beanid、class那么在程序中使用@autowired的时候自动给对应的class赋值
@Qualifier 和@autowired一起使用 当xml中有多个一个class的bean时候根据 beanid 来取得相应的bean
@Service 就不用在xml中配置bean了直接在程序里写。 主要是在业务逻辑层 @Controller主要是在控制层 @Repository主要是Dao等持久层
如果 Bean 不是自己编写的类(如JdbcTemplate
、SessionFactoryBean
等),注释配置将无法实施,此时 XML 配置是唯一可用的方式。
切面简单的理解就是把那些不是核心业务应该处理的代码提取出来,进行封装成模块化.来处理那些附加的功能代码.本着不违背了面向对象的一条原则,自己对自己负责。
为何会访问对应的jsp:
为什么会反问这个文件而不是别的文件呢,因为你在前面设置下面这个:
1
2
|
< beans:property name = "prefix" value = "/WEB-INF/views/" /> < beans:property name = "suffix" value = ".jsp" /> |
这个的意思是一旦你的拦截器返回的ModelAndView(String str)中的类容(我的ModelAndView("test"))会告诉web容器要访问的页面是
<beans:property name="prefix" value="prefixvlaue" /> +str+<beans:property name="suffix" value="suffixvalue" />而我上面配置prefixvlaue=“/WEB-INF/views/” str="test" suffixvalue=“.jsp”所以加在一起就是访问/WEB-INF/views/test.jsp
spring security的form-login提供了default-target-url作为登录成功后的跳转地址
@Service 相当于在xml文件中加入了一个bean<bean id = "" class = "">注册在了spring中,而@Resource就相当于注入也就是生成一个对象实例