idea搭建可运行Servlet的Web项目[maven]

idea搭建可运行Servlet的Web项目[maven]

1. new Project

File > new > Project…

2. 填写 GroupID\ArtifactID

GroupID 是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构。

ArtifactID 是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。

接下来一路 Next 然后 Finish 完成创建。

创建完成后如下图所示:

3. 创建 java 目录

main 目录上右击,选择 New Folder

java 目录标记为 Source

同样的我们可以再来创建一个 resource 文件夹,标记为 resource 类型:

完成之后:

4. 创建 Servlet

首先引入 Servlet 需要的依赖:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    </dependency>

编写 MyServlet 继承 HttpServlet 实现 service 方法:

public class MyServlet extends HttpServlet {

    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //设置字符编码
        request.setCharacterEncoding("utf8");
        //从 request 对象中获取username,password
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        request.setAttribute("username",username);
        request.setAttribute("password",password);
        request.getRequestDispatcher( "/new.jsp").forward(request, response);;
    }
}

new.jsp

<html>
<body>
<h2>This is new Page</h2>
username: 
<%=request.getParameter("username") %>
<br>
password: 
<%=request.getParameter("password") %>
</body>
</html>

5. 配置 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>

<servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>club.sscai.demo.MyServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>MyServlet</servlet-name>
    <url-pattern>/MyServlet</url-pattern>
</servlet-mapping>

</web-app>

6. 配置 Tomcat

直接看图:

访问:http://localhost:8080/MyServlet?password=1111&username=222

servlet成功处理请求响应,至此,maven创建项目成功

如果文章有错的地方欢迎指正,大家互相留言交流。习惯在微信看技术文章,想要获取更多的Java资源的同学,可以关注微信公众号:niceyoo

posted @ 2019-03-28 21:40 niceyoo 阅读(...) 评论(...) 编辑 收藏

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/414502.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android 自定义年月日日期选择器、时分时间选择器

实现效果&#xff1a; 日期选择器 时间选择器 实现方法&#xff1a; 1、自定义选择器dialog public class DatePickDialog extends Dialog implements OnChangeLisener {private Tex…

main.js中封装全局登录函数

main.js中封装全局登录函数 1. 在 main.js 中封装全局登录函数 通过 vue 对象的原型扩展&#xff0c;可以扩展一个函数&#xff0c;这样这个函数就可以在每一个界面通过类似指向对象的方式&#xff0c;去访问这个函数。 如下是 main.js 扩展的函数&#xff1a; Vue.prototype.…

Android 人脸照片对比,人脸对比

1、首先在百度云平台&#xff0c;注册账号&#xff0c;并且进行企业验证 https://console.bce.baidu.com/#/index/overview 2、进入人脸识别主页&#xff0c;创建应用 3、创建SDK授权应用 SDK与完整demo链接&#xff1a; demoCSDN链接&#xff1a;https://download.csdn.net…

uni-app第三方登陆-微信

uni-app第三方登陆-微信 结合上文全局登陆校验&#xff0c;实现微信授权登录官方手册地址&#xff1a; https://uniapp.dcloud.io/api/plugins/login?idgetuserinfo 一、书写两个界面 login.vue 用于用户登陆my.vue 我的界面&#xff0c;存放校验登陆的函数1.1 my.vue <sc…

Android获取屏幕尺寸,屏幕适配

获取屏幕尺寸&#xff1a; DisplayMetrics dm new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); int w dm.widthPixels;//宽 int h dm.heightPixels;//高 Log.i("lgq","ww"w"....h"h); 输出&#xff1a;2019…

点击一百万次

在一个群里看到的题目&#xff0c;就找他要来玩儿了。http://120.24.86.145:9001/test/得点击一百万次图片才行。 可以看出&#xff0c;是通过jqeury发包操作点击量的&#xff0c;所以只需要发一个包控制点击量就ok了 转载于:https://www.cnblogs.com/nul1/p/8611341.html

基于token与基于服务器的身份认证

基于token与基于服务器的身份认证 1、基于服务器的身份认证 我们清楚 http 协议是无状态的&#xff0c;也就是说&#xff0c;如果我们已经认证了一个用户&#xff0c;那么他下一次请求的时候&#xff0c;服务器不知道我是谁&#xff0c;我们就必须要再次认证。 我们与浏览器交…

Android 视频通话

基于腾讯云视频SDK 实现效果 实现步骤&#xff1a; 1、登录腾讯云开发者平台 https://cloud.tencent.com/product/trtc 2、进入 实时音视频 主页。并创建应用 进入实时音视频方法&#xff1a;点击——控制台——>云产品 3、进入开发辅助主页&#xff0c;创建uid 第四…

c++的作业2

本题再次加深了我对于素数与非素数的认识&#xff0c;以及学会了控制每行素数的个数。 本题&#xff0c;让我再一次加深对于是switch的用法&#xff0c;case中只能是常量表达式&#xff0c; break&#xff0c;continue都适用于三种循环结构&#xff0c;即&#xff0c;for&#…

开箱一个docker

开箱一个docker 1、docker 的出现&#xff1f; 1.1、环境切换配置麻烦 通常我们在开发环境写好代码&#xff0c;打个war/jar包&#xff0c;扔到tomcat下&#xff0c;就算是跑起来了&#xff1b;但是扔到生产环境就挂了&#xff0c;what&#xff1f;各种错误。。。 1.2、应用之…

jedis jedispool Redistemplate

jedis jedispool Redistemplate 整理了之前学习 redis 的笔记&#xff0c;强烈建议看最后总结。 在大型系统数据读请求中&#xff0c;基本上90%都可以通过分布式缓存集群来抗下来&#xff0c;而 Redis 又是分布式缓存集群的主要践行者&#xff0c;因此了解 Redis 是必不可少的…

支付宝支付提示 4006 ISV权限不足,建议在开发者中心检查签约是否已经生效

解决方法非常简单&#xff1a; 1、首先登录支付宝商家中心&#xff1a;https://b.alipay.com/index.htm 查看产品中心&#xff0c;对应功能有木有开通&#xff0c;或者签约开通 2、登录支付宝开放平台&#xff1a;https://open.alipay.com/platform/home.htm 查看应用功能列…

android 自定义相机,Camera,相机遮罩层

实现效果&#xff1a; 实现方法&#xff1a;一个自定义view实现demo 一、自定义相机Camera&#xff0c;无API版本限制 &#xff08;1&#xff09;。实现接口 implements SurfaceHolder.Callback private SurfaceView mView;private Camera mCamera; private int cameraId 0;/…