发表于: 2016-08-28 09:00:37

1 2219


今天完成的事情:

重构task4的代码

补java基础



明天计划的事情:

看spring RMI

撸艾燕窝项目,写艾燕窝接口


遇到的问题:

暂无



收获:

项目和成功访问和webapps文件夹名字、位置无关。

只要你在web deployment assembly(tomcat发布文件的目录)里设置发布目录webapps就行。


${pageContext.request.contextPath}的作用

${pageContext.request.contextPath}等价于<%=request.getContextPath()%>或者可以说

<%=request.getContextPath()%>的EL版,意思就是取出部署的应用程序名或者是当前的项目名称。

比如我的项目名称是ajax01 在浏览器中输入为

http://localhost:8080/ajax01/login.jsp ${pageContext.request.contextPath}

<%=request.getContextPath()%>

取出来的就是/ajax01,而"/"代表的含义就是http://localhost:8080

所以我们项目中应该这样写${pageContext.request.contextPath}/login.jsp


了解了下Spring中的事务管理

事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。

例如:多条sql语句的一次性提交。

JDBC事务控制管理  http://blog.csdn.net/caomiao2006/article/details/22412755


Web.xml,Dispatcher-Servlet及ApplicationContext


Web.xml 主要用于配置DispatcherServlet拦截器(主要为了是获取Dispatcher-Servlet.xml)、

ContextLoaderListener监听器(主要是为了获取ApplicationContext.xml)

Web.xml一般配置如下

    <context-param>

        <param-name>contextConfigLocation</param-name>

        <param-value>/WEB-INF/applicationContext.xml</param-value>

    </context-param>

                                     

    <listener>

        <listener-class>

            org.springframework.web.context.ContextLoaderListener

        </listener-class>

    </listener>

            

    <servlet>

        <servlet-name>mvc-dispatcher</servlet-name>

        <servlet-class>

            org.springframework.web.servlet.DispatcherServlet

        </servlet-class>

        <load-on-startup>1</load-on-startup>

    </servlet>

          

    <servlet-mapping>

        <servlet-name>mvc-dispatcher</servlet-name>

        <url-pattern>/</url-pattern>

    </servlet-mapping>


ApplicationContext

在web容器启动时,会触发容器初始化事件,由contextLoaderListener监听器监听。

初始化会使用根上下文(ApplicationContext)。路径由web.xml中的context-param标签指定。

初始化完毕后,spring以WebApplicationContext.ROOT WEB APPLICATION CONTEXT ATTRIBUTE为

属性Key,将其存储到ServletContext中,便于获取。(生成用于整个web程序的组件即生成一些

全局bean)


Dispatcher-Servlet

监听器初始化结束后,开始初始化servlet的配置,servlet可以配置多个。DispatcherServlet是一个

标准的前端控制器,DispatcherServlet上下文在初始化的时候会建立自己的IoC上下文,用以持有

spring mvc相关的bean。在建立DispatcherServlet自己的IoC上下文时会利用ApplicationContext

为自己上下文的parent上下文(即先继承ApplicationContext上下文,然后在初始化自己独有的上

下文)。也存于ServletContext中。


ContextLoaderListener中创建ApplicationContext主要用于整个Web应用程序需要共享的一些组件,

比如DAO,数据库的ConnectionFactory等。

DispatcherServlet创建的ApplicationContext主要用于和该Servlet相关的一些组件,

比如Controller、ViewResovler等。


在DispatcherServlet中可以引用由ContextLoaderListener所创建的ApplicationContext。


java多个servlet配置

<web-app>

    <listener>

        <listener-class>com.insenz.video.MyListener</listener-class>   

    </listener>

<servlet>

    <servlet-name>search</servlet-name>

    <servlet-class>com.insenz.video.InsenzSearch</servlet-class>

</servlet>

<servlet>

    <servlet-name>hongfu</servlet-name>

    <servlet-class>HelloWorld</servlet-class>

</servlet>

<servlet-mapping>

    <servlet-name>search</servlet-name>

    <url-pattern>/search</url-pattern>

</servlet-mapping>

<servlet-mapping>

    <servlet-name>hongfu</servlet-name>

    <url-pattern>/rao</url-pattern>

</servlet-mapping>

</web-app>




返回列表 返回列表
评论

    分享到