zoukankan      html  css  js  c++  java
  • spring web部署遇到的小问题

    自学到spring web部署时,遇到两个看似很小,但折腾了我好几个小时的小问题。第一就是导入包的问题。刚开始我一口气导入了几十个包,写好配置文件后一发布,得,弹出个404.之后的几个小时又是检查配置,又是增加包的,还是没反应,额。在网上查资料后,决定换个战略,减包、删配置,从最基本的jsp初始状态一点点加包加配置。之后就有了重大发现,原来真有包是不能加的,一加进去就给你个404.这个就是 commons-attributes-compiler.jar。。好了弄好包后,额,发现不能跳转。。。再查,发现控制代码部分的Map没弄好,好,搞定完后,发布,成功!

    总结:完成一个spring web最基本的跳转和显示文字所需要的包只要3个,再加个日志包总共就4个:

    1.commons-logging.jar

    2.log4j-1.2.15.jar

    3.spring-webmvc.jar

    4.spring.jar

    顺便给出配置。

    1.web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" 
        xmlns="http://java.sun.com/xml/ns/j2ee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
    
     <servlet>
        <servlet-name>hello</servlet-name>
        <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <init-param>
           <param-name>contextConfigLocation</param-name>
           <param-value>/WEB-INF/dispatcherServlet-Servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
     </servlet>
     <servlet-mapping>
        <servlet-name>hello</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>
    
    </web-app>

    2.dispatcherServlet-Servlet.xml

    代码
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
    <beans>
       <!-- 定义映射 -->
       <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
           <property name="mappings">
              <props>
                 <prop key="helloWorld.do">helloWorldAction</prop>
              </props>
           </property>
       </bean>
       <!-- 定义视图 -->
       <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="viewClass">
               <value>org.springframework.web.servlet.view.InternalResourceView</value>
            </property>
       </bean>
       <!-- 定义控制器 -->
       <bean id="helloWorldAction" class="cn.Spring.MVC.HelloWorldAction">
            <property name="helloWorld">
               <value>Helloworld,您好spring</value>
            </property>
            <property name="viewPage">
               <value>/hello.jsp</value>
            </property>
       </bean>
    </beans>

    3.HelloWorldAction  java类

    java类
    package cn.Spring.MVC;
    import java.util.HashMap;
    import java.util.Map;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.springframework.web.servlet.ModelAndView;
    import org.springframework.web.servlet.mvc.Controller;
    public class HelloWorldAction implements Controller{
        private String helloWorld;
        private String viewPage;
    
        public String getHelloWorld() {
            return helloWorld;
        }
    
        public void setHelloWorld(String helloWorld) {
            this.helloWorld = helloWorld;
        }
    
        public String getViewPage() {
            return viewPage;
        }
    
        public void setViewPage(String viewPage) {
            this.viewPage = viewPage;
        }
        /**
         * 
         */
        public ModelAndView handleRequest(HttpServletRequest arg0,
                HttpServletResponse arg1) throws Exception {
            Map<String, String> model=new HashMap<String, String>();
            model.put("helloWorld", getHelloWorld());
            return new ModelAndView(getViewPage(),model);
        }
    
    }

    4.hello.jsp页面

    jsp页面
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <html>
    <%
      String str=(String)request.getAttribute("helloWorld");
     %>
      <head>
      </head>  
      <body>
        <h1><%=str %>,你好</h1>
      </body>
    </html>
  • 相关阅读:
    大数据学习之路(持续更新中...)
    数据挖掘之初级
    用户画像
    机器挖掘之经典算法
    算法时间复杂度
    01-IOS-越狱指南
    gradle 内容学习参考
    python 获取文件路径相关
    第一行代码阅读笔记
    使用同步锁防止多进程的并发操作
  • 原文地址:https://www.cnblogs.com/yaoxing92/p/2997695.html
Copyright © 2011-2022 走看看