@Controller用于类;@RequestMapping("/login")用于方法,即涉及到login路径的用注解的以下方法,还可以用来接收表单数据,就一个参数时,可以省略value。
内部资源视图解析器InternalResourceViewResolver最常用,配置如下
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<!--前缀 -->
<property name="prefix" value="/WEB-INF/jsp/" />
<!--后缀 -->
<property name="suffix" value=".jsp" />
</bean>
重定向:客户端行为,两次请求,url地址会变,之前获得得参数已失效。
请求转发:服务器行为,一次请求,url地址不变,之前获得得参数可以继续使用。
post请求:更安全,url地址中不出现填写的数据。
get请求:表单中填写的参数在跳转时会带到url地址中,重定向默认使用的是get请求。
model.addAttribute(key, value);在后端中将key封装进model 在前端可以通过EL表达式${key}来获取value,
key为对象时,可以获取对象的各个属性,如model.addAttribute("user", user);${user.name},${user.age}
@Service 注解会将标注类自动注册到 Spring 容器中。对Service类注解
@Autowired 注解可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。对 private XXService xxService;注解,
会使XXService 的一个实例(对象)被注入到 XXController 实例中。本质是spring的DI和IOC,不再new对象,即可实例化对象。
拦截器:1.自定义拦截器类实现接口HandlerInterceptor中的三个方法preHandle postHandle afterCompletion
对于登录前的拦截preHandle( )来说,可以分为已登录(通过session来记录登录,予以放行)和未登录(未在登录页