Maven(3)-利用intellij idea创建maven web项目
本文通过一个例子来介绍利用maven来构建一个web项目。开发工具:intellij idea。
一、新建maven项目

此处选择:Create from archetype。表示从已有的maven模版中创建项目,本次选择maven-archetype-webapp模版,选择该模版后,生成的项目会自带webapp所需要的文件。比较方便。当然也可以不选择这个选项,直接创建maven空白项目,后续手动添加web需要的文件。

填写本项目的maven坐标

二、配置maven项目结构
最终生成maven项目

上面的项目只包含了web-app所需要的目录结构和基本的maven项目元素:pom。标准的maven项目结构如下:

完善后的项目目录:

三、添加一个Servlet
这个Servlet功能非常简单:输出一句话。
package com.cnblogs.kmpp; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter; public class WebAppServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println( "WebAppServlet Executed" );
out.flush();
out.close();
}
}
上面的Servlet有对J2EE的依赖,需要在pom中增加对j2ee的依赖。
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_3.0_spec</artifactId>
<version>1.0</version>
</dependency>
配置servlet
<!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> <servlet>
<servlet-name>WebApp</servlet-name>
<servlet-class>com.cnblogs.kmpp.WebAppServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>WebApp</servlet-name>
<url-pattern>/simple-servlet</url-pattern>
</servlet-mapping> </web-app>
四、运行web app
web项目的运行可以通过tomcat来实现,但是既然已经使用了maven可以通过一个maven插件来实现这个功能:jetty(Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境)。
运行jetty:将命令行定位到当前项目的目录下面,输入如下命令:

得如下结果:

这个时候jetty已经启动。
在浏览器中输入:http://localhost:8080/web-app/。

这个界面就是web-app默认的index.jsp页面。

上面显示的是默认输出,上面已经定义了一个简单的servlet且配置到了web.xml中。这个时候也可以运行。在浏览器中输入:http://localhost:8080/web-app/simple-servlet

上面页面的输出就是之前在WebAppServlet中所实现的功能。
至此,一个maven web项目已经建立完毕,且运行成功。
Maven(3)-利用intellij idea创建maven web项目的更多相关文章
- Maven(4)-利用intellij idea创建maven 多模块项目
本文通过一个例子来介绍利用maven来构建一个多模块的jave项目.开发工具:intellij idea. 一.项目结构 multi-module-project是主工程,里面包含两个模块(Modul ...
- Intellij IDEA创建的Web项目配置Tomcat并启动Maven项目
本篇博客讲解IDEA如何配置Tomcat. 大部分是直接上图哦. 点击如图所示的地方,进行添加Tomcat配置页面 弹出页面后,按照如图顺序找到,点击+号 tomcat Service -> L ...
- Intellij Idea 创建一个Web项目
今天想用IDEA创建一个web项目: 准备工具 1.jdk1.7 2.tomcat6.0,由于下载的8.5没有lib目录不能配置改6.0 3.idea2019.1.2 Intellij Idea的安装 ...
- 【IDEA】Intellij IDEA创建的Web项目配置Tomcat并启动Maven项目
转载请注明出处:http://blog.csdn.net/qq_26525215本文源自[大学之旅_谙忆的博客] 本篇博客讲解IDEA如何配置Tomcat. 大部分是直接上图哦. 点击如图所示的地方, ...
- Intellij IDEA创建的Web项目配置Tomcat并启动Maven项目(转)
大部分是直接上图哦. 点击如图所示的地方,进行添加Tomcat配置页面 弹出页面后,按照如图顺序找到,点击+号 tomcat Service -> Local 注意,这里不要选错了哦,还有一个T ...
- maven学习3,如何创建一个web项目
Maven学习 (三) 使用m2eclipse创建web项目 1.首先确认你的eclipse已经安装好m2eclipse的环境,可以参照上两篇Maven学习内容 2.新建一个maven的项目 ...
- IntelliJ IDEA 创建Java Web项目
1. 创建Web项目 可以先阅读 IntelliJ IDEA 的安装和使用教程 注意:IntelliJ IDEA 中 Project 和 Module 的概念及区别 创建完成后点击Import Cha ...
- 利用IntelliJ IDEA 创建第一个项目
1.创建项目 打开后点击第一个按钮
- IntelliJ IDEA14 和 Maven 系列:使用IntelliJ IDEA 14和Maven 7 创建java web项目(一)
Intellij IDEA作为最好的Java IDE,创建Maven项目还是比较简单的,但是创建一个Maven Web项目还是要修改一些配置的,下面进行总结整理. 1前言 在创建项目中,IDEA提供了 ...
随机推荐
- windowsphone8.1学习笔记之Toast通知
熟悉或者了解wp系统的人都知道wp的Toast,Toast(吐司)通知是在屏幕最顶上弹出来的提示框,它专为与锁屏提醒.磁贴通知和应用中UI结合使用而设计,但它不是MessageDialog.说简单点它 ...
- OWASP-A5-安全配置错误
1.安全配置错误 安全配置错误可以发生在一个应用程序堆栈的任何层面,包括平台.Web服务器.应用服务器.数据库.框架和自定义代码. 开发人员和系统管理员需共同努力,以确保整个堆栈的正确配置.自动扫描器 ...
- POJ 2187 Beauty Contest【凸包周长】
题目: http://poj.org/problem?id=1113 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=22013#probl ...
- Java和js的区别,以及Java和c的区别
刚开始的时候我们也搞不清这些概念,不过后来就慢慢清晰了,首先和大家谈谈Java和js的区别,最简单的区别就是一个是后端,一个是前端. java是纯面向对象语言,javascrip其实和Java是完 ...
- 如何禁止eclipse对js文件的校验(building validate)
在项目(project)上点击右键,依次选择1.Select Properties -> JavaScript -> Include Path2.Select Source tab. ( ...
- QT设置textEdit光标到末尾
//移动光标到末尾 QTextCursor cursor = ui->receiveTextEdit->textCursor(); cursor.movePosition(QTextCur ...
- Linux下自动清除MySQL日志文件
MySQL运行过程中会生成大量的日志文件,占用不少空间,修改my.cnf文件配置bin-log过期时间,在Linux下自动清除MySQL日志文件 [mysqld] expire-logs-days= ...
- GUI菜单——菜单条、菜单、子条目之间关系
菜单:注意区分三个概念:菜单条.菜单.菜单项 将菜单条添加到窗体,菜单条下面包括菜单,菜单下面可以使菜单或者菜单项 菜单项是最后一个.菜单后面有三角标示. 菜单条[文件] 子菜单--子条目 子条目 示 ...
- 前端绘图方式Canvas和SVG的区别
Canvas和SVG是html5中支持2种可视化技术,都是可以在画布上绘制图形和放入图片.下面来介绍和分析一下他们. 一.Canvas 和 SVG 简介 1.什么是Canvas? Canvas 是H5 ...
- QT下的QProcess调用外部程序
头文件widget.h #ifndef WIDGET_H #define WIDGET_H #include <QWidget> namespace Ui { class Widget; ...