服务器在启动的时候会自动加载 web.xml 文件的内容,web.xml文件是Spring架构的配置文件,是应用相应的 Spring类来加载配置信息,由三部分构成,第一部分为根文件夹信息,log4j配置,字体信息的过滤,上下文信息加载和一些监听启动。第二部分为Spring Web MVC servlet 分发器的注册,每一个 Servlet名字的注册都有一个与之相对应的应用程序上下文,默认名字为{name}-servlet.xml 。第三部分为servlet的url映射<servlet-mapping>,当前台页面出现相对应的字符串时,就会由相应的控制器进行参数的处理及传递后转到相应的</url-pattern>下,由控制器的ModelAndView类方法将下一个页面显示出来。
在{name}-servlet 中设置.jsp页面的映射和控制器方法url和字符串的映射,控制文件中不同的方法转向不同的.jsp页面。app.xml由web.xml控制在服务器启动的时候加载进来,其中有数据库配置字段的引入和beanFactory的引用,程序在运行的时候由Spring自动判断生成类的实例,在bean的定义中,还可以指定成员方法的值。
在对数据库的封装方面,配置文件调用相映的类利用连接池自动完成数据库的驱动加载、连接、关闭连接、异常处理等操作。用户只要发送sql语句,和编写相应的结果集类,所查询的结果就会以OO的方式进入相应的方法类,这样就完成了创建一个数据访问对象(DAO-Database Access Object)的过程。其中,org.springframework.jdbc.core.support 包中的JdbcDaoSupport 类是常用到的类,它所提供的getJdbcTemplate() 方法及org.springframework.jdbc.core包提供的 query(String sql, ResultSetExtractor rse)方法可以利用连接池,将查询到的字段放到指定的变量中。
本程序流程:用户输入 http://localhost 后,服务器自动在root目录下寻找 index.jsp页面,index.jsp页面将手机的号码传至 /view/index.jsp页面,这一过程是首先 web.xml 在分发器中注册了名字为auth URL为 /auth 的servlet,由auth-servlet.xml里的 /login参数转向控制器AuthorizationCtrl的login方法,auth-servlet.xml里还声明了转相页面的路径和扩展名,再由login方法的result参数判断,声明类ModelAndView("index"),转相/view/index.jsp页面,完成一次跳转。依次类推。。。