spring在项目中起到了管理bean的作用,即可以通过配置,让系统自动创建所需的对象,通过一定的方式引用系统创建的对象,对象的创建和引用都是由spring自动完成的,用户不必参与,可以直接引用。
实例:
第一部分:项目结构
第二部分:配置启动spring管理器
1、在web.xml中配置Listener。
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
2、设置配置文件的路径
<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:config/spring-core.xml</param-value> </context-param>
第三部分:配置spring管理的类
在config包中创建spring-core.xml文件,用于配置spring要管理的类。
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd"> <!-- 交由spring管理的类 --> <bean id="userManager" class="cn.shxy.web.service.UserManager"></bean> </beans>
第四部分:编写类代码:
1、编写接口:
package cn.shxy.web.service; /** * 用户操作接口 * * @author Jhon * */ public interface IUserManager { public boolean check_login(String userName, String password); }
2、编写接口实现类:
package cn.shxy.web.service; public class UserManager implements IUserManager { @Override public boolean check_login(String userName, String password) { if(userName.equals("aaa") && password.equals("bbb")) return true; return false; } }
第五部分:在项目中引用spring管理的类
使用@Resource注解引用spring管理的对象。
package cn.shxy.web.controller; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import cn.shxy.web.service.IUserManager; /** * 用户操作控制器 * * @author Jhon * */ @Controller @RequestMapping("/user") public class UserController { @Resource IUserManager userManager; @RequestMapping("/login") public String login() { return "/login"; } @RequestMapping("/check_login") public String check_login(String userName, String password, HttpServletRequest request) { boolean result = userManager.check_login(userName, password); request.setAttribute("result", result); return "/result"; } }
第六部分:编写要显示的页面:login.jsp,result.jsp
测试截图:
源文件地址:http://pan.baidu.com/s/1o6QpcnS