文档章节

idea快速创建一个基于maven+git+servlet3.0的项目

harveyno1
 harveyno1
发布于 2017/07/20 23:34
字数 1122
阅读 12
收藏 0

一.idea创建一个maven项目

IDEA自身集成了maven,所以不需要单独的去下载和设置

1.点击File->NEW->project,选择maven,然后输入GroupId, ArtifactId ,Version,点击next,最后输入project name,点击完成,groupId建议以域名的形式命名,相当于包名

2.为pom.xml加一些基本的配置

统一编码为utf-8

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

统一源代码和编译输出的jdk版本,这里设置为1.7

<build>
    <plugins>
        <!-- Compile -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
        </plugin>
    </plugins>
</build>

maven所有的plugin都需要添加到bulid/plugin标签下面,所有依赖的plugin都可以到Maven中央仓库下面找到,可以通过以下链接访问:

http://search.maven.org/

如果在使用maven打包时想跳过单元测试,可以添加下面的插件

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.18.1</version>
    <configuration>
        <skipTests>true</skipTests>
    </configuration>
</plugin>

至此一个简单的Maven项目就搭建完毕了

二.转为Java Web项目

可以简单的将Maven依赖理解为jar包,不过Maven依赖具有传递性,只需要配置某个依赖,就能获取某个依赖的相关依赖。

转为一个Java Web项目通过以下几个步骤:

1.在main目录下,添加webapp目录

2.在webapp目录下,添加WEB-INF目录

3.在WEB-INF目录下,添加web.xml文件

这时候idea会有一个Configure的提示,单击后有个提示框,点击ok,将当前项目变为Web项目,在web.xml中添加servlet3.0的引用

<?xml version="1.0" encoding="UTF-8"?>
<web-app 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_3_0.xsd"
         version="3.0">
</web-app>

添加Java Web的依赖

因为web项目是需要打包的,所以必须要在pom.xml文件里设置packing为war

<packaging>war</packaging>

接下来就需要添加Java Web Servlet JSP JSTL的引用

<dependencies>
    <!-- Servlet -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
        <scope>provided</scope>
    </dependency>
    <!-- JSP -->
    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.2</version>
        <scope>provided</scope>
    </dependency>
    <!-- JSTL -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
        <scope>runtime</scope>
    </dependency>
</dependencies>

需要说明的是

1.如果某些依赖只参与编译,而无需参与打包,例如tomcat自带了servlet和jsp对应的jar包,可将scope设置为provided

2.如果某些依赖只是运行时需要,但无需参与编译,可讲scope设为runtime

至此Maven的Java Web项目搭建完毕,下面进入开发阶段,模拟一个简单的场景,写一个HelloServlet,接收GET类型的hello请求,转发到/WEB-INF/jsp/hello.jsp页面,在hello.jsp页面上显示经典的hello world

java文件如下

@WebServlet("/hello")
public class HelloServlet extends HttpServlet{

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String say = "Hello World!";
        req.setAttribute("say", say);
        req.getRequestDispatcher("/WEB-INF/jsp/hello.jsp").forward(req, resp);
    }
}

JSP如下

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title></title>
</head>
<body>
${say}
</body>
</html>

然后配置tomcat,这个网上教程很多,这里不做过多解释,启动tomcat通过配置的url可以访问到hello.jsp

三.交给git托管

首先在项目根目录新建一个.gitignore的文件,可以过滤到一些不需要交给git托管的内容,如maven的target目录,idea或者eclipse的工程文件

# Maven #
target/

# IDEA #
.idea/
*.iml

# Eclipse #
.settings/
.metadata/
.classpath
.project
Servers/

然后在idea里点击VCS->Import into Version Control->Create Git Repository,弹出的对话框选择当前项目的根目录,点击ok,idea就为我们创建了一个git本地仓库

然后可以在VCS->GIT->add将忽略的所有文件添加到本地仓库,然后VCS->GIT->Commit File,提交代码到本地仓库

然后就要将本地的仓库推到远程,我们需要新建一个远程仓库,我选择的是使用oschina,也可以选择用github,我们在oschina中新建一个项目,然后在本地执行

git remote add origin git仓库地址

然后推送本地内容

git push -u origin master

如果你新建工程的时候,有readme文件,这里可能不能直接推送成功,需要git pull origin master,拉取之后再执行

至此整个基于maven+git+servlet3.0的Java Web工程就搭建完毕了

完整的代码可以去oschina上pull,地址为

https://git.oschina.net/clysheng/servlet3.0.git

© 著作权归作者所有

共有 人打赏支持
harveyno1
粉丝 0
博文 3
码字总数 2074
作品 0
信阳
IDEA入门级教程(文末常用快捷键)

最智能的IDE IDEA相对于eclipse来说最大的优点就是它比eclipse聪明。聪明到什么程度呢?我们先来看几个简单的例子。 智能提示重构代码 如果你写的代码过于复杂,或者有更好的方式来替代你写的...

技术小能手
07/24
0
0
IntelliJ IDEA 2018.2 EAP 发布,支持 Touch Bar

IntelliJ IDEA 2018.2 EAP 已发布:包含对 MacBook Touch Bar 的支持,对 Gradle 支持的改进,新图标,Spring Boot 及一些更新。 支持 Touch Bar 即将推出的 IntelliJ IDEA 2018.2 引入了 To...

达尔文
05/18
0
0
使用 IDEA + Maven + Git 快速开发 Java Web 应用

引言 今天想跟大家分享一下我主要的 Java 开发工具,我一般是这样工作的:用 IDEA 写代码,用 Maven 管理 jar 包依赖与项目打包,用 Git 进行代码版本控制。 关于这三款工具的安装与配置的过...

黄勇
2013/11/11
0
17
Maven 与 IntelliJ IDEA 的完美结合

你是否正在学习Maven?是否因为Maven难用而又不得不用而苦恼?是否对Eclipse于Maven的冲突而困惑? 那么我告诉你一个更直接更简单的解决方案: IntelliJ IDEA! 1. 什么是 Maven,为什么要使用...

Java编程思想
2014/01/02
0
0
IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane
06/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

redis 系列一 -- 简介及安装

1.简介 redis -- remote dictionary server 远程字典服务 使用 C 语言编写; 高性能的 key-value数据库; 内存数据库,支持数据持久化。 Redis 是一个开源(BSD许可)的,内存中的数据结构存...

imbiao
35分钟前
1
0
nginx log记录请求响应时间

有时为了方便分析接口性能等,需要记录请求的时长,通过修改nginx的日志格式可以做到,如 添加一个新的log_format log_format timed_combined '$remote_addr - $remote_user [$time_local] "...

swingcoder
58分钟前
2
0
Spring MVC之RequestMappingHandlerMapping匹配

对于RequestMappingHandlerMapping,使用Spring的同学基本都不会陌生,该类的作用有两个: 通过request查找对应的HandlerMethod,即当前request具体是由Controller中的哪个方法进行处理; 查...

爱宝贝丶
今天
2
0
Java Web--增删改查之二界面后台java代码(转载参考)

/** *  *//** * @author Administrator * */package dao; import java.sql.*;public class DBConn {/** * 链接数据库 * @return */  ...

小橙子的曼曼
今天
4
0
Redis源码阅读笔记-对象及其类型和编码

总结之《Redis设计与实现》 对象 Redis中是使用对象来便是数据库中的键和值。 结构 // server.h...#define LRU_BITS 24...typedef struct redisObject { unsigned type:4; ...

Jian_Ming
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部