zoukankan      html  css  js  c++  java
  • 又一本springmvc学习指南 之---第22篇 springmvc 加载.xml文件的bean标签的过程

    writedby 张艳涛,今天看spring mvc 学习指南的第2章,特意提下这个作者是how tomcat works 俩个作者之一,

    喜欢上一本书的风格,使用案例来讲述原理,

    在做第一个案例的时候发现了一些问题在此记录一下,

    问题1,el表达式失效

    解决方法1,在jsp页面加上<%@page isELIgnored="false"%>,因为在jsp2.0之前的规范不支持el表达式

    <%@page isELIgnored="false"%>
    <!DOCTYPE html>
    <html>
    <head>
    <title>Save Product</title>
    <style type="text/css">@import url(css/main.css);</style>
    </head>
    <body>
    <div id="global">
        <h4>The product has been saved.</h4>
        <p>
            <h5>Details:</h5>
            Product Name: ${product.name}<br/>
            Description: ${product.description}<br/>
            Price: $${product.price}
        </p>
    </div>
    </body>
    </html>

    方法2, 在web.xml的<web-app>标签内加入版本信息

    <?xml version="1.0" encoding="ISO-8859-1"?>
    
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">
    
     <web-app version="2.5"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" >
      <servlet>
        <servlet-name>ControllerServlet</servlet-name>
        <servlet-class>appdesign1.controller.ControllerServlet</servlet-class>
      </servlet>
    
      <servlet-mapping>
        <servlet-name>ControllerServlet</servlet-name>
        <url-pattern>/appdesign1/*</url-pattern>
      </servlet-mapping>
    </web-app>

    我做这个例子的时候是将他的webapp文件方法里tomcat的webapps目录下面的.作为tomcat的一个工程

    这里遇到几个问题

    1. 每次tomcat编译新的class文件,org.apache.tomcat.xxx.xxx目录下的.properties文件都消失了?怎么回事
    2. 如果调试webpp,在idea中,如何添加web应用的源码
    3. 为什么eclipse不用添加web.xml来配置接入的ControllerServlet.class,
    4. 如果eclipse打包,生成的webapp.war中会有web.xml文件吗?

    解答

    问题1, idea的有针对这个的选项

    问题2:将源码文件比如说原书中对应的源码在src/目录下面那么将src下面的文件拷贝到ida src/main/java/目录下就行了

    问题3.这个不是eclipse的原因是serlvet3.0的特性支持,你在tomcat4中还不支持

    @WebServlet(name = "ControllerServlet", urlPatterns = {
            "/input-product", "/save-product" })

    这个注解就是对应了servlet标签

      <servlet>
        <servlet-name>ControllerServlet</servlet-name>
        <servlet-class>appdesign1.controller.ControllerServlet</servlet-class>
      </servlet>
    
      <servlet-mapping>
        <servlet-name>ControllerServlet</servlet-name>
        <url-pattern>/appdesign1/*</url-pattern>
      </servlet-mapping>

    颜色相同的定义是一样的

    比如你在tomcat4.0上这个注解是变红的

    问题4,和问题3是一回事,你自己有web.xml,打包就有,没有不会给你生成,

  • 相关阅读:
    构建高性能的读服务
    Redis基础入门
    基于TCP实现简单的聊天室
    递归

    Go标准库Cond
    排序(冒泡,选择,插入,快速)
    链表
    队列
    Golang实现RPC
  • 原文地址:https://www.cnblogs.com/zytcomeon/p/15055892.html
Copyright © 2011-2022 走看看