idea创建servlet工程初体验
servlet工程创建
前提:创建项目之前需要配置java环境变量 和tomcat配置,配置完成后进入如下操作。
tomcat 安装和配置参考 https://www.cnblogs.com/xushengyong/p/13734688.html
1、idea创建servlet项目 File-->new-->java Enter prise--> 选择web Application,默认选中Create web.xml --->next

2 、命名当前项目 web-application-test

3、创建项目完成 目录如下

4、在web/WEB_INF 目录下创建两个文件夹:classes和lib
classes用来存放编译后输出的class文件,lib用于存放第三方jar包

5、配置文件夹路径
File -> Project Structure (ctrl + shift + Alt + s) 或者使用工具栏的快捷键 -> 选择Modules
-> 选择Paths -> 选择“Use module compile out path” -> 将Outputpath 和Test output path 都设置为刚刚创建的classes文件夹

选择当前窗口的Dependencies -> 将Module SDK选择为1.8 ->点击右边的 + 号 -> 选择 “1 JARS or directories ...” 弹出框选择刚刚创建的lib文件夹,点击apply --> ok

二、配置tomcat
打开菜单Run -> Edit Configurations...

点击 “+” ,选择 “Tomcat Server” -> 选择“Local”

在Name出输入新的服务器名,点击 "Application Server" 后面的 "Configure...",弹出Application Servers窗口,在Tomcat Home 选择本地安装的tomcat目录 -> OK

在"Run/Debug Configurations"窗口中Name一栏输入服务器的名字tomcat7,在“Server”面板中,勾选取消“After Launch”,设置“HTTP port”和“JMX port”(默认值即可),点击Apply -> OK,至此tomcat配置完毕(左边列表中tomcat图标上小红叉是未部署项目的提示,部署项目后就会消失)。

三、在tomcat上部署并运行项目
在创建好tomcat后,可以通过工具栏快速打开tomcat的配置页面

也可以通过菜单栏:Run -> Edit Configurations... ->选择刚创建的tomcat7 -> 选择Deployment ->点击右边的“ + ”号 -> 选择 Artifact

-> 选择web项目 -> Application Context可以填“/firstweb”(也可以不填 填了就是访问的时候在端口后面加上这个context) -> Apply

回到Server面板,将On 'update' action和On frame deactivation(这两个选项是tomcat配置了项目后才有的)改为update classes and resources -> Apply

开发web项目并运行tomcat查看效果

运行项目 点击run 即可

输入访问地址
http://localhost:8080/firstServlet 访问index.jsp

最后新建一个servlet类 ,并配置web.xml新建servlet package
新建servlet类
@WebServlet(name = "/HelloServlet")
public class HelloServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("this is a dopost method");
} @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("this is a doget method");
response.getWriter().print("this is helloServlet");
}
}
在web.xml内加入servlet配置
<servlet>
<servlet-name>/helloworld</servlet-name>
<servlet-class>com.xusy.servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>/helloworld</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
输入地址访问servlet
http://localhost:8080/firstServlet/hello

项目源代码地址 https://github.com/xusyPersonal/servlet/tree/dev
参考优秀博客 https://www.cnblogs.com/jiangyanblog/p/11668737.html
c
idea创建servlet工程初体验的更多相关文章
- 深入刨析tomcat 之---第7篇 这个是链接,如果使用idea 创建servlet工程
recoded by 张艳涛 使用IDEA创建Servlet项目 使用IDEA创建Servlet项目
- jsp&servlet初体验——用户登录功能实现
数据库准备-创建db_login数据库 t_user表 1.创建web工程 2.创建用户model user.java package com.gxy.model; public class U ...
- ios 初体验<窗口的创建>
1. 创建工程,这步很简单,百度下即可,在info.plist 里面 去掉 Main 的 ,便于新手练习ios,创建ios工程后,在AppDelegate.m,里面的方法application 加上几 ...
- Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...
- Spring之初体验
Spring之初体验 Spring是一个轻量级的Java Web开发框架,以IoC(Inverse of Control 控制反转)和 ...
- Xamarin.iOS开发初体验
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0
- 【腾讯Bugly干货分享】基于 Webpack & Vue & Vue-Router 的 SPA 初体验
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57d13a57132ff21c38110186 导语 最近这几年的前端圈子,由于 ...
- Microsoft IoT Starter Kit 开发初体验
1. 引子 今年6月底,在上海举办的中国国际物联网大会上,微软中国面向中国物联网社区推出了Microsoft IoT Starter Kit ,并且免费开放1000套的申请.申请地址为:http:// ...
- python窗体——pyqt初体验
连续两周留作业要写ftp的作业,从第一周就想实现一个窗体版本的,但是时间实在太短,qt零基础选手表示压力很大,幸好又延长了一周时间,所以也就有了今天这篇文章...只是为了介绍一些速成的方法,还有初学者 ...
随机推荐
- Linux:nginx基础
一..简单介绍 nginx时开源的www服务器,只能解析静态的网页(html,js,css等),具有静态小文件高并发特性. 可做web服务器.负载均衡.web cache(web缓存) 优点: 1.高 ...
- day09记录
今日内容大纲 毒鸡汤课 坚持.努力! 生成器 yield yeild return yeild from 生成器表达式 内置函数I 昨日内容回顾作业讲解 可迭代对象 可以更新得带的 实实在在的值. 内 ...
- hystrix(8) 插件
上一节讲到HystrixCommand的执行流程. Hystrix内部将一些模块实现成了插件,并且提供了用户提供自己的实现,通过配置来替换插件.Hystrix提供了5个插件,分别为并发相关插件(Hys ...
- Prometheus-Alertmanager告警对接到企业微信
之前写过将Prometheus的监控告警信息通过Alertmanager推送到钉钉群. 最近转移了阵地,需要将Prometheus监控告警信息推送到企业微信群,经过两天的摸索,以及查了网上的一些资料, ...
- 刷题[MRCTF2020]套娃
解题思路 查看源码,发现注释中存在代码 //1st $query = $_SERVER['QUERY_STRING']; if( substr_count($query, '_') !== 0 || ...
- 破晓行动----带你总结JVM的知识大全(一)
JVM线程 + JVM内存区域
- 记一次GDB调试
目标文件: ciscn_2019_ne_5. 来源 :https://buuoj.cn/challenges 保护情况:保护是没有保护的 主要伪代码: int __cdecl main(int arg ...
- Java基础——克隆
1.克隆 假设有一个对象object1,在某处又需要一个跟object1一样的实例object2,这两个对象是绝对独立的,不会因为某一个修改另一个随之改变,这样,我们不能直接将对象objec1t的引用 ...
- Python-为元组中每个元素命名
学生信息系统: (名字,年龄,性别,邮箱地址) 为了减少存储开支,每个学生的信息都以一个元组形式存放 如: ('tom', 18,'male','tom@qq.com' ) ('jom', 18,'m ...
- C1853 编译器错误:fatal error C1853: 'pjtname.pch' precompiled header file is from a previous
转载:https://www.cnblogs.com/emanlee/archive/2010/10/16/1852998.html 用VC++ 2008 编写C语言程序,编译出现错误: 预编译头文件 ...