User 實體類TestUtil 繼承 AbstractControllerapplicationContext.xml 定義 Bean 並自動裝配public class User {
private String username, password;
// getter/setter 省略
}
public class TestUtil extends AbstractController {
private User user;
public void setUser(User user) { this.user = user; }
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest req, HttpServletResponse resp) {
String username = req.getParameter("username");
String password = req.getParameter("password");
if (username.equals(user.getUsername()) && password.equals(user.getPassword())) {
return new ModelAndView("yes");
}
return new ModelAndView("Error");
}
}
<beans>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
<bean id="user" class="com.importnew.User">
<property name="username" value="admin"/>
<property name="password" value="123"/>
</bean>
<bean id="testUtil" class="com.importnew.TestUtil" autowire="byName">
<property name="user" ref="user"/>
</bean>
</beans>
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/applicationContext.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
user 並注入 testUtil/login.do?username=admin&password=123DispatcherServlet 分發到 TestUtil,驗證通過轉向 yes.jsp,失敗轉向 Error.jsp需引入 spring-webmvc JAR 以支持 AbstractController。