版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cuicanxingchen123456/article/details/82756413
创建一个新Maven项目
- new 一个project
- 不选择任何Maven模板
- 起个GroupId、ArifactId
- 起个项目名。注意:Idea_Project是存放此项目的工作区间,mavenDemo_idea15为存放此项目的子目录。
- 建好项目后,打开,点击Auto-Import
- 下面为此项目的结构
项目部署
- 点击
Project: 无需设置 (当然可点击Project complier output自定义编译目录)
Modules:可看到此项目无任何适配服务组件(因为是手工创建Maven,没有选择任何Maven模板)--因此需要我们进行添加。
- 选择Web(为此项目添加Web服务组件,这便是一个Web项目了)
- 现在为Web设置资源目录。双击Web Resource Directory
- 选择scr/main目录
- 在后面加上webapp。好了,点OK,Web的资源目录便设置好了。
- 现在设置Web的描述文件的目录
- 设置在webapp目录下,在WEB-INF后面加上\web.xml文件。
Facts: 表示当前项目的适配服务组件。可看到此项目已是一个Web项目了。
Aftifacts: 这个Aftifacts描述了当前项目发布的信息。现在进行添加,从Modeles中选择。
说明:A: 现在Artifacts已有了发布的项目了(idea中准确的说应是Modele) B:output root目录描述了当前项目的编译目录及适配服务。
确定之后当前项目的结构:
- 如有需要,添加lib包
部署服务器
- 添加服务器
- 部署
注:很多童鞋在这里找不到Arifact,请参考部署项目中的Modules的配置。如果没有为项目配置Web服务组件,那么就没有Artifact。(当前项目连Web项目都不是,哪儿来的Artifact,又部署什么呢?)
(记得把新建的tomcat改个名儿)
- 注意下面的选择:
编写代码测试
- 创建一个java类。可看到继承HttpServlet出问题了--这是因为没有把Tomcat的依赖加入Module
- 在Modules加入Tomcat依赖
登录maven的依赖库网站:http://mvnrepository.com/ 搜索tomcat的依赖包
点击进去,点击对应的版本,找到maven的链接:
粘贴到pom.xml文件中:
记得要粘贴到<dependencies></dependencies>内。
右击项目名-->maven-->reimport将导入项目
(因为自带的mavne的镜像源是国外网站,下载会慢,如果换成国内的镜像网站需要看此贴:
https://blog.csdn.net/liangyihuai/article/details/57406870)
添加完毕
- 现在按快捷键就可以了
- 代码编辑
Java
package com.wql;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
* Created by Lenovo on 2016/2/25.
*/
@WebServlet("/myController")
public class Controller extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// System.err.println("---");
//解决乱码
req.setCharacterEncoding("UTF-8");
String name=req.getParameter("name");
req.setAttribute("name",name);
System.out.println(name);
req.getRequestDispatcher("index.jsp").forward(req, resp);
}
}
Html
<%--
Created by IntelliJ IDEA.
User: Lenovo
Date: 2016/2/25
Time: 0:26
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form action="myController" method="post">
<input name="name">
return:${name}
<input value="提交" type="submit">
</form>
</body>
</html>
web.xml
<servlet>
<!-- servlet的内部名称,自定义。尽量有意义 -->
<servlet-name>main</servlet-name>
<!-- servlet的类全名: 包名+简单类名 -->
<servlet-class>com.example.main</servlet-class>
</servlet>
<!-- servlet的映射配置 -->
<servlet-mapping>
<!-- servlet的内部名称,一定要和上面的内部名称保持一致!! -->
<servlet-name>main</servlet-name>
<!-- servlet的映射路径(访问servlet的名称) -->
<url-pattern>/com/example/main</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
- 配置tomcat到idea:
如下图所以
Run-->Edit configurations-->选中tomcat 在Application server中把本地的tomcat添加进去
On 'Updata' action 和On frame deactivation设置成以下形式
- 记得设置默认启动浏览器
- 启动项目
Run 选中tomcat运行
代码:https://download.csdn.net/download/cuicanxingchen123456/10673804