配置环境:idea   pom.xml  web.xml   spring-mvc.xml  

1.刚创建新项目点进去后记得自己按右下角有auto选项导进maven创建项目的目录(图片是基本已完成)

mvn 创建java项目_spring

resources专门放各种配置文件

WEB_INF放网页--先右键创建个文件夹叫html,在文件里再新建html.file

idea对于文件夹比较严格---特定的文件夹放特定的文件

2.还有个文件是专门放java代码,没有要自己补充,main右键新建名为java的文件夹

然后java文件夹右键 选择如图模式

mvn 创建java项目_intellij-idea_02

完成后如图,java的代码就在这里写

mvn 创建java项目_java_03

注意java文件里命名(以阿里巴巴命名为准)

mvn 创建java项目_xml_04

然而出现多个包出现同一级

mvn 创建java项目_xml_05

解决方法:点击小齿轮,取消compact Middle packages选项

mvn 创建java项目_mvn 创建java项目_06

3.在pom全粘贴这个,这是使用的HTML依赖

pom.xml(Maven项目的核心配置文件)配置springMVC依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
 
    <groupId>org.example</groupId>
    <artifactId>javaweb-exe02-springmvc</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>
 
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <spring.version>5.0.5.RELEASE</spring.version>
        <tomcat.embed.version>8.0.28</tomcat.embed.version>
    </properties>
 
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-servlet-api</artifactId>
            <version>${tomcat.embed.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-jsp-api</artifactId>
            <version>${tomcat.embed.version}</version>
        </dependency>
 
        <!-- 嵌入式tomcat依赖 -->
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-core</artifactId>
            <version>${tomcat.embed.version}</version>
        </dependency>
 
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <version>${tomcat.embed.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-logging-juli</artifactId>
            <version>${tomcat.embed.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.9</version>
        </dependency>
    </dependencies>
    <build>
        <finalName>mobileshop</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <url>http://localhost:8080/manager/text</url>
                    <username>admin</username>
                    <password>password</password>
                    <path>/mobileshop</path>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                    <!-- 指定编码格式,否则在DOS下运行mvn compile命令时会出现莫名的错误,因为系统默认使用GBK编码 -->
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <!-- 指定编码格式,否则在DOS下运行mvn命令时当发生文件资源copy时将使用系统默认使用GBK编码 -->
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

web.xml配置好(web项目的核心配置文件)---里面有1.配置DispatcherServlet(初始参数:spring-mvc.xml);2.允许访问以html、css、js为结尾的静态资源;3项目启动后进入默认页面列表;4编码过滤器

<?xml version="1.0" encoding="UTF-8"?>
<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">
    <display-name>MobileShop</display-name>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <!-- 指定Spring的配置文件 -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring-mvc.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    <!-- 允许访问以html、css、js为结尾的静态资源 -->
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.html</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.jpg</url-pattern>
    </servlet-mapping>
    <!-- 解决中文乱码问题 -->
    <filter>
        <filter-name>Set Character Encoding</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>Set Character Encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

springMVC的核心配置文件)——里面有配置:1.注解扫描器为HandlerMapping(映射处理器)服务;2视图解析器(视图的解析渲染方式)--放在专门放配置文件的resources文件里,新建一个file起这个名并配置好内容

<?xml version="1.0" encoding="UTF-8"?>
<beans
        xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:mvc="http://www.springframework.org/schema/mvc"
        xsi:schemaLocation="
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
		http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">
    <!--配置注解扫描-->
    <context:component-scan base-package="mobileshop.controller(记得改成在哪个目录,如com.sha.www.practice.controller)"/>
    <!-- SpringMVC注解支持 -->
    <mvc:annotation-driven/>
 
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/html/" />
        <property name="suffix" value=".html" />
    </bean>
</beans>

5.配置好内容后下一步就是使idea和Tomcat相关联

mvn 创建java项目_intellij-idea_07

然后点击左上角加号,选择后如图 

mvn 创建java项目_spring_08

然后点击这个配置好Tomcat所在的路径

mvn 创建java项目_java_09

mvn 创建java项目_java_10

ok后点击右下角红的fix后选择如图选项(打包成war包),然后点击OK 

 

mvn 创建java项目_spring_11

 6.运行出现如图网站

mvn 创建java项目_spring_12

 在网址后面加上html代码名,类似如图

mvn 创建java项目_intellij-idea_13

 结果:目录为如图

mvn 创建java项目_spring_14

要理解弄懂SpringMVC工作模式的逻辑,会用文字表达。


代码是分层de

再新建一个entity----封装用户对象 ,里面是数据的封装模型

问题:tomcat运行出这样

mvn 创建java项目_mvn 创建java项目_15

解决:输入了错误的路径

如图这里不用加/ 

mvn 创建java项目_intellij-idea_16


继续实验:增加单元测试test,同时也增加属于它的专门放配置文件的地方resources

mvn 创建java项目_xml_17

1.创建的Application类关于应用这样的类,用这个类创建应用,为后台请求服务

2.怎么运行---先点开maven项目里的Plugins里的war里的war:war进行打包,打包后就能直接执行里的main函数

mvn 创建java项目_spring_18

 3.可通过一下这个网址进入页面

mvn 创建java项目_spring_19

4.

 

mvn 创建java项目_intellij-idea_20

5

mvn 创建java项目_java_21