使用IntelliJ IDEA 配置Maven
—恢复内容开始—
(本示例使用的IntelliJ idea版本是16,其实各个版本大同小异~)
创建Maven Web项目
菜单File->New Project可进入如图界面,首先选择左边栏Maven,再配置JDK(如果之前添加了JDK的话会自动填充,如未添加点击旁边的New将JDK目录导入即可)。勾选”Create from archetype”,然后选中maven-archetype-webapp,点Next,进入如下界面:
这里需要填写GroupId和ArtifactId,Version默认即可,这三个属性可以唯一标识你的项目。
我自己的maven配置
填写项目名,选择项目保存路径,点击Finish:
maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定.
下图展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的Enable-Auto- Import,可以在每次修改pom.xml后,自动的下载并导入jar包。
我们可以看到,目录结构并不是严格的maven格式,因为少了java源码文件夹
首先在main文件夹下创建一个文件夹,名称为java
将java文件夹标识为Source Root
可以看到文件夹的颜色变了,设置完成~
Maven自动导入jar包
我们使用maven管理依赖~
Maven所做的工作就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的:
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.winner</groupId> <artifactId>winner-test</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>winner-test Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>winner-test</finalName> </build> </project>
我们可以看到这个文件包含了我们之前定义的本项目的groupId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看<dependencies>标签,翻译过来是”依赖”的意思,也就是说把对每个包的需求都称为一个依赖<depedency>,定义在<dependencies>中。在每个<depedency>中,你需要提供的是所需jar包的groupId、artifactId、version(g,a,v)这三个必要信息(坐标)。比如上面我们看到引入可一个junit包,格式如下:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies>
这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。要查看这些jar包的3个信息呢,需要查阅仓库。比如我们需要引入spring-webmvc包,打开Maven Repository,搜索spring-webmvc,进入如下界面:
选择最新版本4.2.5.RELEASE,可以看到其dependency写法如下红框所示:
我们将其复制到pom.xml中的<dependencies>中:
这样,Maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:
可以发现,虽然我们只写了一个依赖,但是会把与它密切相关的jar包同时导入进来。
自此演示一个简单的maven项目所需的jar包其实已经够了~
SpringMVC框架配置
现在进行项目的配置
1、web.xml配置,默认情况下生成的web.xml的配置如下:
<!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> <display-name>Archetype Created Web Application</display-name> </web-app>
这并是不我们需要的,暂未找到更改生成web.xml配置的方法,知道的麻烦告知一下,谢谢~
—>
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> </web-app>
在web.xml中创建Spring MVC的中央控制器
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:mvc-dispatcher.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
该servlet名为mvc-dispatcher(名称可修改),用于拦截请求(url-pattern为*.do),并交由Spring MVC的后台控制器来处理。这一项配置是必须的
为了能够处理中文的post请求,再配置一个encodingFilter,以避免post请求中文出现乱码情况:
<filter> <filter-name>encodingFilter</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> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
至此,web.xml配置完毕。
2、mvc-dispatcher.xml配置
在配置完web.xml后,在resources文件夹下创建spring配置文件mvc-dispatcher.xml:
mvc-dispatcher.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
代码如下:
@Controller public class MainController { @RequestMapping(value = "/test.do",method = RequestMethod.GET) public String index() { return "index"; } }
–@Controller注解:采用注解的方式,可以明确地定义该类为处理请求的Controller类;
–@RequestMapping()注解:用于定义一个请求映射,value为请求的url;
–return “index”:处理完该请求后返回的逻辑视图。
回到mvc-dispatcher.xml,进行相关配置。
<?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:p="http://www.springframework.org/schema/p" 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.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 配置包扫描器 --> <context:component-scan base-package="com.winner.controller"/> <!-- 配置注解驱动 --> <mvc:annotation-driven/> <!-- 视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/> </bean> </beans>
现在,需要配置Tomcat来运行该项目。
Run->Edit Configurations
点击左上角的”+”号,选择Tomcat Server,(如果没有请选择最下方的33 items more,找到Tomcat Server),再选择Local:
点击 Application server 右边的 Configure,导入Tomcat 目录:
切换到Deployment标签,再点击右边的”+”号,添加一个Artifact.
选择第二个:war exploded,点击OK,这样,该项目就已经部署到了tomcat中.
再点击OK,整个Tomcat配置结束.
运行tomcat
项目启动加载完毕后访问http://127.0.0.1:8080/test.do
—恢复内容结束—
(本示例使用的IntelliJ idea版本是16,其实各个版本大同小异~)
创建Maven Web项目
菜单File->New Project可进入如图界面,首先选择左边栏Maven,再配置JDK(如果之前添加了JDK的话会自动填充,如未添加点击旁边的New将JDK目录导入即可)。勾选”Create from archetype”,然后选中maven-archetype-webapp,点Next,进入如下界面:
这里需要填写GroupId和ArtifactId,Version默认即可,这三个属性可以唯一标识你的项目。
我自己的maven配置
填写项目名,选择项目保存路径,点击Finish:
maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定.
下图展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的Enable-Auto- Import,可以在每次修改pom.xml后,自动的下载并导入jar包。
我们可以看到,目录结构并不是严格的maven格式,因为少了java源码文件夹
首先在main文件夹下创建一个文件夹,名称为java
将java文件夹标识为Source Root
可以看到文件夹的颜色变了,设置完成~
Maven自动导入jar包
我们使用maven管理依赖~
Maven所做的工作就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的:
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.winner</groupId> <artifactId>winner-test</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>winner-test Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>winner-test</finalName> </build> </project>
我们可以看到这个文件包含了我们之前定义的本项目的groupId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看<dependencies>标签,翻译过来是”依赖”的意思,也就是说把对每个包的需求都称为一个依赖<depedency>,定义在<dependencies>中。在每个<depedency>中,你需要提供的是所需jar包的groupId、artifactId、version(g,a,v)这三个必要信息(坐标)。比如上面我们看到引入可一个junit包,格式如下:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies>
这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。要查看这些jar包的3个信息呢,需要查阅仓库。比如我们需要引入spring-webmvc包,打开Maven Repository,搜索spring-webmvc,进入如下界面:
选择最新版本4.2.5.RELEASE,可以看到其dependency写法如下红框所示:
我们将其复制到pom.xml中的<dependencies>中:
这样,Maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:
可以发现,虽然我们只写了一个依赖,但是会把与它密切相关的jar包同时导入进来。
自此演示一个简单的maven项目所需的jar包其实已经够了~
SpringMVC框架配置
现在进行项目的配置
1、web.xml配置,默认情况下生成的web.xml的配置如下:
<!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> <display-name>Archetype Created Web Application</display-name> </web-app>
这并是不我们需要的,暂未找到更改生成web.xml配置的方法,知道的麻烦告知一下,谢谢~
—>
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> </web-app>
在web.xml中创建Spring MVC的中央控制器
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:mvc-dispatcher.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
该servlet名为mvc-dispatcher(名称可修改),用于拦截请求(url-pattern为*.do),并交由Spring MVC的后台控制器来处理。这一项配置是必须的
为了能够处理中文的post请求,再配置一个encodingFilter,以避免post请求中文出现乱码情况:
<filter> <filter-name>encodingFilter</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> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
至此,web.xml配置完毕。
2、mvc-dispatcher.xml配置
在配置完web.xml后,在resources文件夹下创建spring配置文件mvc-dispatcher.xml:
mvc-dispatcher.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
代码如下:
@Controller public class MainController { @RequestMapping(value = "/test.do",method = RequestMethod.GET) public String index() { return "index"; } }
–@Controller注解:采用注解的方式,可以明确地定义该类为处理请求的Controller类;
–@RequestMapping()注解:用于定义一个请求映射,value为请求的url;
–return “index”:处理完该请求后返回的逻辑视图。
回到mvc-dispatcher.xml,进行相关配置。
<?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:p="http://www.springframework.org/schema/p" 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.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 配置包扫描器 --> <context:component-scan base-package="com.winner.controller"/> <!-- 配置注解驱动 --> <mvc:annotation-driven/> <!-- 视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/> </bean> </beans>
现在,需要配置Tomcat来运行该项目。
Run->Edit Configurations
点击左上角的”+”号,选择Tomcat Server,(如果没有请选择最下方的33 items more,找到Tomcat Server),再选择Local:
点击 Application server 右边的 Configure,导入Tomcat 目录:
切换到Deployment标签,再点击右边的”+”号,添加一个Artifact.
选择第二个:war exploded,点击OK,这样,该项目就已经部署到了tomcat中.
再点击OK,整个Tomcat配置结束.
运行tomcat
项目启动加载完毕后访问http://127.0.0.1:8080/test.do
一,maven配置
File > settings > Bulid..(快捷键 Ctrl + Alt + S) 显示maven默认的配置,可以修改,也可以用默认的
我修改为自己的:
修改后点击ok就可以了
二,创建maven项目步骤
File > new > project
填写Maven项目坐标值,填写完点击Next
添加一个属性,archetypeCatalog = internal,这是我百度到的一段关于为什么增加该属性的原因:
也可以不加该属性,看个人选择
添加后在点击下一步
选择项目路径。点击finish,创建完毕,可以看到下个页面:
build success说明构建成功
三,部署maven项目相关配置
File > Project Structrue (快捷键 Alt + Ctrl + Shift + S)或者点击上图所示项目配置的图标,配置Facts(特征)
配置artifacts
配置tomcat
部署项目:
成功页面:
介绍完毕
背景
用idea搭建spring mvc环境,网上有很多教程,但是普遍都不是很详细,容易有遗漏。也没有太多解释原因。我自己总结了一个。并会附上一定的解释。
具体步骤
新建项目
我使用的版本是IntelliJ 15.0.3
打开IntelliJ,新建项目
然后选择spring mvc
选择目录,这个可以自己随便选
新建好之后,可以看到自带的lib文件夹,idea会自动配置常用的,不过一般来说,我们都是用maven来做管理。
选中项目文件夹,呼出菜单,选择添加框架。
在弹出的菜单中选择maven
这个时候可以看到项目目录改变了,多了java主目录和测试目录
配置pom文件
先配置pom文件
<?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>groupId</groupId>
<artifactId>LearnSpringMvc</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 打包方法 -->
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
</dependencies>
</project>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
注意一定要使用war的打包方式
因为maven默认的打包方式不会放到/WEB-INF/lib里头,但是tomcat启动的时候找类会在WEB-INF/lib,如果不用war打包方式,会不停地抛
classNotFound异常的。
添加controller
添加controller类
@Controller
@RequestMapping(value = "/main")
public class MainController {
@RequestMapping(method = RequestMethod.GET)
@ResponseBody
public String welcome(){
return "test Web";
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
使用controller注解,表示该类为MVC模型中的Controller层。
使用RequestMapping注解,表明该Controller的主进入目录。
method表示请求的方法,@ResponseBody表明返回是一段数据。
添加spring配置文件
在resource目录中添加mvc-dispatcher-servlet.xml文件
<?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"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<context:component-scan base-package="Controller"/>
</beans>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
很多教程中会有配置项目<’mvc:annotation-driven’/>说这个是启动bean扫描的驱动,其实<’context:component-scan base-package=”Controller”/’>就已经开启扫描了,扫描选择添加Controller注解的包就好了。
配置web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<!-- 添加展示名称 -->
<display-name>SpringMvcLearn</display-name>
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:mvc-dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
servlet配置了spring的上下文,<’param-value’>指定spring配置文件。servlet-mapping 指定了spring mvc映射的目录。
目前的目录结构如下
配置project
在file菜单中呼出project structure选项
在弹出的框中选择jdk的版本,我这里用的是java6
然后配置module,也选择6.0。
点击Problems,看看有没有什么问题,然后按推荐的fix就好了。
配置tomcat
下载tomcat
先上Apache Tomcat官网,下载tomcat,推荐使用tomcat7,下载之后cd到tomcat目录下的bin文件夹。因为一般来说mac下默认从zip中解压的文件都是没有运行权限的。所以给这里的catalina.sh附上运行权限。不过我一般比较懒,为了方便我会给bin上所有的文件都附上运行权限,一般本地开发无所谓的,如果商业化运作,就另当别论了。
chmod 777 *
- 1
在idea中配置tomcat
在右上角打开运行配置
添加配置,选择tomcat local
选择配置tomcat配置
选择下载tomcat的目录
我推荐使用7.
配置deployment
选择exploded,注意一定要是exploded的
关于打包的说明
一般来说tomcat会在项目的主目录下搜索web.xml文件,如果启动失败,可以检查target中是否有web.xml文件。如果没有
这个时候,可以进入Project Structure
将web.xml引入到WEB-INF的目录下就好了
注意要在WEB-INF目录下,不要搞错了
运行
到此为止配置就算完成了,然后点击运行
这个时候浏览器打开以下链接
http://localhost:8080/main
- 1
就可以看到运行结果test Web了。
—恢复内容开始—
(本示例使用的IntelliJ idea版本是16,其实各个版本大同小异~)
创建Maven Web项目
菜单File->New Project可进入如图界面,首先选择左边栏Maven,再配置JDK(如果之前添加了JDK的话会自动填充,如未添加点击旁边的New将JDK目录导入即可)。勾选”Create from archetype”,然后选中maven-archetype-webapp,点Next,进入如下界面:
这里需要填写GroupId和ArtifactId,Version默认即可,这三个属性可以唯一标识你的项目。
我自己的maven配置
填写项目名,选择项目保存路径,点击Finish:
maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定.
下图展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的Enable-Auto- Import,可以在每次修改pom.xml后,自动的下载并导入jar包。
我们可以看到,目录结构并不是严格的maven格式,因为少了java源码文件夹
首先在main文件夹下创建一个文件夹,名称为java
将java文件夹标识为Source Root
可以看到文件夹的颜色变了,设置完成~
Maven自动导入jar包
我们使用maven管理依赖~
Maven所做的工作就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的:
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.winner</groupId> <artifactId>winner-test</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>winner-test Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>winner-test</finalName> </build> </project>
我们可以看到这个文件包含了我们之前定义的本项目的groupId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看<dependencies>标签,翻译过来是”依赖”的意思,也就是说把对每个包的需求都称为一个依赖<depedency>,定义在<dependencies>中。在每个<depedency>中,你需要提供的是所需jar包的groupId、artifactId、version(g,a,v)这三个必要信息(坐标)。比如上面我们看到引入可一个junit包,格式如下:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies>
这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。要查看这些jar包的3个信息呢,需要查阅仓库。比如我们需要引入spring-webmvc包,打开Maven Repository,搜索spring-webmvc,进入如下界面:
选择最新版本4.2.5.RELEASE,可以看到其dependency写法如下红框所示:
我们将其复制到pom.xml中的<dependencies>中:
这样,Maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:
可以发现,虽然我们只写了一个依赖,但是会把与它密切相关的jar包同时导入进来。
自此演示一个简单的maven项目所需的jar包其实已经够了~
SpringMVC框架配置
现在进行项目的配置
1、web.xml配置,默认情况下生成的web.xml的配置如下:
<!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> <display-name>Archetype Created Web Application</display-name> </web-app>
这并是不我们需要的,暂未找到更改生成web.xml配置的方法,知道的麻烦告知一下,谢谢~
—>
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> </web-app>
在web.xml中创建Spring MVC的中央控制器
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:mvc-dispatcher.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
该servlet名为mvc-dispatcher(名称可修改),用于拦截请求(url-pattern为*.do),并交由Spring MVC的后台控制器来处理。这一项配置是必须的
为了能够处理中文的post请求,再配置一个encodingFilter,以避免post请求中文出现乱码情况:
<filter> <filter-name>encodingFilter</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> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
至此,web.xml配置完毕。
2、mvc-dispatcher.xml配置
在配置完web.xml后,在resources文件夹下创建spring配置文件mvc-dispatcher.xml:
mvc-dispatcher.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
代码如下:
@Controller public class MainController { @RequestMapping(value = "/test.do",method = RequestMethod.GET) public String index() { return "index"; } }
–@Controller注解:采用注解的方式,可以明确地定义该类为处理请求的Controller类;
–@RequestMapping()注解:用于定义一个请求映射,value为请求的url;
–return “index”:处理完该请求后返回的逻辑视图。
回到mvc-dispatcher.xml,进行相关配置。
<?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:p="http://www.springframework.org/schema/p" 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.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 配置包扫描器 --> <context:component-scan base-package="com.winner.controller"/> <!-- 配置注解驱动 --> <mvc:annotation-driven/> <!-- 视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/> </bean> </beans>
现在,需要配置Tomcat来运行该项目。
Run->Edit Configurations
点击左上角的”+”号,选择Tomcat Server,(如果没有请选择最下方的33 items more,找到Tomcat Server),再选择Local:
点击 Application server 右边的 Configure,导入Tomcat 目录:
切换到Deployment标签,再点击右边的”+”号,添加一个Artifact.
选择第二个:war exploded,点击OK,这样,该项目就已经部署到了tomcat中.
再点击OK,整个Tomcat配置结束.
运行tomcat
项目启动加载完毕后访问http://127.0.0.1:8080/test.do
—恢复内容结束—
(本示例使用的IntelliJ idea版本是16,其实各个版本大同小异~)
创建Maven Web项目
菜单File->New Project可进入如图界面,首先选择左边栏Maven,再配置JDK(如果之前添加了JDK的话会自动填充,如未添加点击旁边的New将JDK目录导入即可)。勾选”Create from archetype”,然后选中maven-archetype-webapp,点Next,进入如下界面:
这里需要填写GroupId和ArtifactId,Version默认即可,这三个属性可以唯一标识你的项目。
我自己的maven配置
填写项目名,选择项目保存路径,点击Finish:
maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定.
下图展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的Enable-Auto- Import,可以在每次修改pom.xml后,自动的下载并导入jar包。
我们可以看到,目录结构并不是严格的maven格式,因为少了java源码文件夹
首先在main文件夹下创建一个文件夹,名称为java
将java文件夹标识为Source Root
可以看到文件夹的颜色变了,设置完成~
Maven自动导入jar包
我们使用maven管理依赖~
Maven所做的工作就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的:
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.winner</groupId> <artifactId>winner-test</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>winner-test Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>winner-test</finalName> </build> </project>
我们可以看到这个文件包含了我们之前定义的本项目的groupId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看<dependencies>标签,翻译过来是”依赖”的意思,也就是说把对每个包的需求都称为一个依赖<depedency>,定义在<dependencies>中。在每个<depedency>中,你需要提供的是所需jar包的groupId、artifactId、version(g,a,v)这三个必要信息(坐标)。比如上面我们看到引入可一个junit包,格式如下:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies>
这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。要查看这些jar包的3个信息呢,需要查阅仓库。比如我们需要引入spring-webmvc包,打开Maven Repository,搜索spring-webmvc,进入如下界面:
选择最新版本4.2.5.RELEASE,可以看到其dependency写法如下红框所示:
我们将其复制到pom.xml中的<dependencies>中:
这样,Maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:
可以发现,虽然我们只写了一个依赖,但是会把与它密切相关的jar包同时导入进来。
自此演示一个简单的maven项目所需的jar包其实已经够了~
SpringMVC框架配置
现在进行项目的配置
1、web.xml配置,默认情况下生成的web.xml的配置如下:
<!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> <display-name>Archetype Created Web Application</display-name> </web-app>
这并是不我们需要的,暂未找到更改生成web.xml配置的方法,知道的麻烦告知一下,谢谢~
—>
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> </web-app>
在web.xml中创建Spring MVC的中央控制器
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>winner-test Web Application</display-name> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:mvc-dispatcher.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
该servlet名为mvc-dispatcher(名称可修改),用于拦截请求(url-pattern为*.do),并交由Spring MVC的后台控制器来处理。这一项配置是必须的
为了能够处理中文的post请求,再配置一个encodingFilter,以避免post请求中文出现乱码情况:
<filter> <filter-name>encodingFilter</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> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
至此,web.xml配置完毕。
2、mvc-dispatcher.xml配置
在配置完web.xml后,在resources文件夹下创建spring配置文件mvc-dispatcher.xml:
mvc-dispatcher.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> </beans>
代码如下:
@Controller public class MainController { @RequestMapping(value = "/test.do",method = RequestMethod.GET) public String index() { return "index"; } }
–@Controller注解:采用注解的方式,可以明确地定义该类为处理请求的Controller类;
–@RequestMapping()注解:用于定义一个请求映射,value为请求的url;
–return “index”:处理完该请求后返回的逻辑视图。
回到mvc-dispatcher.xml,进行相关配置。
<?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:p="http://www.springframework.org/schema/p" 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.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 配置包扫描器 --> <context:component-scan base-package="com.winner.controller"/> <!-- 配置注解驱动 --> <mvc:annotation-driven/> <!-- 视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/> </bean> </beans>
现在,需要配置Tomcat来运行该项目。
Run->Edit Configurations
点击左上角的”+”号,选择Tomcat Server,(如果没有请选择最下方的33 items more,找到Tomcat Server),再选择Local:
点击 Application server 右边的 Configure,导入Tomcat 目录:
切换到Deployment标签,再点击右边的”+”号,添加一个Artifact.
选择第二个:war exploded,点击OK,这样,该项目就已经部署到了tomcat中.
再点击OK,整个Tomcat配置结束.
运行tomcat
项目启动加载完毕后访问http://127.0.0.1:8080/test.do
一,maven配置
File > settings > Bulid..(快捷键 Ctrl + Alt + S) 显示maven默认的配置,可以修改,也可以用默认的
我修改为自己的:
修改后点击ok就可以了
二,创建maven项目步骤
File > new > project
填写Maven项目坐标值,填写完点击Next
添加一个属性,archetypeCatalog = internal,这是我百度到的一段关于为什么增加该属性的原因:
也可以不加该属性,看个人选择
添加后在点击下一步
选择项目路径。点击finish,创建完毕,可以看到下个页面:
build success说明构建成功
三,部署maven项目相关配置
File > Project Structrue (快捷键 Alt + Ctrl + Shift + S)或者点击上图所示项目配置的图标,配置Facts(特征)
配置artifacts
配置tomcat
部署项目:
成功页面:
介绍完毕
背景
用idea搭建spring mvc环境,网上有很多教程,但是普遍都不是很详细,容易有遗漏。也没有太多解释原因。我自己总结了一个。并会附上一定的解释。
具体步骤
新建项目
我使用的版本是IntelliJ 15.0.3
打开IntelliJ,新建项目
然后选择spring mvc
选择目录,这个可以自己随便选
新建好之后,可以看到自带的lib文件夹,idea会自动配置常用的,不过一般来说,我们都是用maven来做管理。
选中项目文件夹,呼出菜单,选择添加框架。
在弹出的菜单中选择maven
这个时候可以看到项目目录改变了,多了java主目录和测试目录
配置pom文件
先配置pom文件
<?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>groupId</groupId>
<artifactId>LearnSpringMvc</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 打包方法 -->
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.6.RELEASE</version>
</dependency>
</dependencies>
</project>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
注意一定要使用war的打包方式
因为maven默认的打包方式不会放到/WEB-INF/lib里头,但是tomcat启动的时候找类会在WEB-INF/lib,如果不用war打包方式,会不停地抛
classNotFound异常的。
添加controller
添加controller类
@Controller
@RequestMapping(value = "/main")
public class MainController {
@RequestMapping(method = RequestMethod.GET)
@ResponseBody
public String welcome(){
return "test Web";
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
使用controller注解,表示该类为MVC模型中的Controller层。
使用RequestMapping注解,表明该Controller的主进入目录。
method表示请求的方法,@ResponseBody表明返回是一段数据。
添加spring配置文件
在resource目录中添加mvc-dispatcher-servlet.xml文件
<?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"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<context:component-scan base-package="Controller"/>
</beans>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
很多教程中会有配置项目<’mvc:annotation-driven’/>说这个是启动bean扫描的驱动,其实<’context:component-scan base-package=”Controller”/’>就已经开启扫描了,扫描选择添加Controller注解的包就好了。
配置web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<!-- 添加展示名称 -->
<display-name>SpringMvcLearn</display-name>
<servlet>
<servlet-name>mvc-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:mvc-dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
servlet配置了spring的上下文,<’param-value’>指定spring配置文件。servlet-mapping 指定了spring mvc映射的目录。
目前的目录结构如下
配置project
在file菜单中呼出project structure选项
在弹出的框中选择jdk的版本,我这里用的是java6
然后配置module,也选择6.0。
点击Problems,看看有没有什么问题,然后按推荐的fix就好了。
配置tomcat
下载tomcat
先上Apache Tomcat官网,下载tomcat,推荐使用tomcat7,下载之后cd到tomcat目录下的bin文件夹。因为一般来说mac下默认从zip中解压的文件都是没有运行权限的。所以给这里的catalina.sh附上运行权限。不过我一般比较懒,为了方便我会给bin上所有的文件都附上运行权限,一般本地开发无所谓的,如果商业化运作,就另当别论了。
chmod 777 *
- 1
在idea中配置tomcat
在右上角打开运行配置
添加配置,选择tomcat local
选择配置tomcat配置
选择下载tomcat的目录
我推荐使用7.
配置deployment
选择exploded,注意一定要是exploded的
关于打包的说明
一般来说tomcat会在项目的主目录下搜索web.xml文件,如果启动失败,可以检查target中是否有web.xml文件。如果没有
这个时候,可以进入Project Structure
将web.xml引入到WEB-INF的目录下就好了
注意要在WEB-INF目录下,不要搞错了
运行
到此为止配置就算完成了,然后点击运行
这个时候浏览器打开以下链接
http://localhost:8080/main
- 1
就可以看到运行结果test Web了。
eclipse环境下如何配置tomcat
- 打开Eclipse,单击“Window”菜单,选择下方的“Preferences”。
- 单击“Server”选项,选择下方的“Runtime Environments”。
- 点击“Add”添加Tomcat。
- 点击“Next”,选中自己安装的Tomcat路径。
- 点击“Finish”完成。
建立一个Web应用
-
File
→New
→Dynamic Web Project
- 创建一个
Dynamic Web Project
- 点击“Next”下一步
- 点击“Next”下一步
- 点击“Finish”完成
让Tomcat服务器显示在控制台上,将Web应用部署到Tomcat中
-
Window
→Show View
→Servers
- 点击链接
No servers are available. Click ths link to create a new server.
,在弹出的对话框中选择Tomcat版本 - 点击“Next”,添加我们的项目
选中项目并点击Add,或是双击都可以添加到右边 -
点击“Finish”完成
返回下方的“Servers”面板,右键单击该面板中的“Tomcat v8.0 Server at localhost”节点,在弹出的快捷菜单中单击“Start”,即可启动指定的Web服务器。如果此时直接启动访问
http://localhost:8080/TomcatTest
,会发现会报404的错误。这是因为我们没有添加主页,下面添加主页(index.jsp)的内容:<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>欢迎页面</title> </head> <body> 欢迎使用eclipse部署Tomcat。 </body> </html>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
注意:web资源一定要在WebRoot目录下添加。如图:
此时,再一次来访问该链接:http://localhost:8080/TomcatTest
,效果如下:
1. 下载Maven
官方地址:http://maven.apache.org/download.cgi
解压并新建一个本地仓库文件夹
2.配置本地仓库路径
3.配置maven环境变量
4.在IntelliJ IDEA中配置maven
打开-File-Settings
这里的的本地仓库路径就是maven架包下载后的存放的位置
5.新建maven WEB项目
打开-File-New-Project
点击NEXT
点击NEXT
添加的配置为 archetypeCatalog=internal
点击NEXT
点击NEXT
点击Finish后项目开始创建
点击右下角查看进去
6.maven web模板项目结构
同样在main下新建test测试文件夹,再在此文件夹下新建java测试源码文件夹和resource测试资源文件夹
也可以右键项目-选择Open Module Settings打开项目配置页面更改
7.配置依赖jar包
jar包配置搜索
官方地址:http://mvnrepository.com/