先从下载apache-tomcat-9.0.17开始

在下边这个网站下载,下边一步步来

下面删除的这些是暂时用不上的,先吧它删除了,因为会拖慢启动速度

下边把ROOT里边除WEB-INF外的全不删除了,这些都是下载时自带的,与我们要做的无关的

找到下边这个文件,右键,然后打开方式然后选记是本打开,把里边的东西都删了,然后

  把下边的代码复制进去

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
id="WebApp_ID" version="3.0">

</web-app>

然后保存

然后在刚才的这里创建下边两个文件夹

然后把下边这个,按下边步骤做(为了测试方便)

win+R打开命令,然后把这个servlet-api.jar拖到命令框里就会有这个文件的打开路径,把这个路径复制

放到变量里,下边有步骤

把   D:\software\apache-tomcat-9.0.17\lib\servlet-api.jar

添加到环境变量CLASSPATH

  

检查3个环境变量

JAVA_HOME

PATH

CLASSPATH

下边横线的只是参考

2个请求:

  1. jsp登录页面,在D:\software\apache-tomcat-9.0.17\webapps\ROOT 下新建index.jsp,然后进行各种html的编码。
    例如:

    <%@page pageEncoding="UTF-8"%>
    <html>
    <head>
    <title>登录页面</title>
    </head>
    <body>
    <form action="login">
    <div style="color:red;font-size:28px">欢迎登录</div><br>
    账号:<input type="text" name="account"><br>
    密码:<input type="password" name="password"><br>
    <input type="submit" value="登录">

    </form>
    </body>
    </html>

  1. 编写后端Servlet

在别的地方(例如:D:\myweb01\src)

  1. 新建包名的目录D:\myweb01\src\com\nf\action ,跟Login.java的package报名保持一致。
  2. 在此目录下,新建一个类Login.java (注意类的第一个字母大写,文件名要跟类名一致)下边的是我写的,可供参考
    后辍名记得改.java

    package com.nf.action;

    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.annotation.WebServlet;

    @WebServlet("/login")
    public class Login extends HttpServlet{

    public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
    request.setCharacterEncoding("UTF-8");
    response.setCharacterEncoding("UTF-8");
    String account=request.getParameter("account");
    String password=request.getParameter("password");
    System.out.println("someone in,hi account="+account);
    System.out.println("password="+password);
    }

    public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
    request.setCharacterEncoding("UTF-8");
    response.setCharacterEncoding("UTF-8");
    String account=request.getParameter("account");
    String password=request.getParameter("password");
    System.out.println("someone in,hi account="+account);
    System.out.println("password="+password);
    }

    }

  3. 编译

先进入D:\myweb01\src(从源码的根目录进行编译)

tomcat需要重启

然后把http://127.0.0.1:8080/index.jsp在浏览器的网址栏打开这地址

就可以打开你写的静态站了

学JAVA的第二天,静态网站制作,脑阔一点疼的更多相关文章

  1. 零基础学Java(12)静态字段与静态方法

    静态字段与静态方法   之前我们都定义的main方法都被标记了static修饰符,那到底是什么意思?下面我们来看看 静态字段   如果将一个字段定义为static,每个类只有一个这样的字段.而对于非静 ...

  2. 你以为我在玩游戏?其实我在学 Java

    大家好,我是程序员cxuan!今天和大家一起Look一下这个有趣的国外编程网站! 寓教于乐 "今天我们来学习 Java " . "Java 是一门面向对象的编程语言&qu ...

  3. 大型网站制作前端使用PHP后台逻辑用 Java

    对于网站团队,大概可以按照职责分为前端.后端.架构三种角色. 前端:负责所有和用户有交互的产品,包括 WEB以及手机客户端 后端:负责各种业务 API 的开发,以及服务器端其他系统的开发 架构:负责设 ...

  4. 【URLOS应用开发基础】10分钟制作一个nginx静态网站环境应用

    URLOS开发者功能已上线有一段时间了,目前通过部分开发者的使用体验来看,不得不说URLOS在服务器软件开发效率方面确实有着得天独厚的优势,凭借docker容器技术与其良好的应用生态环境,URLOS必 ...

  5. 《Linux就该这么学》培训笔记_ch10_使用Apache服务部署静态网站

    <Linux就该这么学>培训笔记_ch10_使用Apache服务部署静态网站 文章最后会post上书本的笔记照片. 文章主要内容: 网站服务程序 配置服务文件参数 SELinux安全子系统 ...

  6. 使用 Java 和 Maven (JBake) 生成静态网站

    使用 JBake("mvn generate-resources")构建您的静态网站或博客.使用布局.宏和数据文件. 我们迁移了整个www.optaplanner.org网站(13 ...

  7. 零基础学Java第二节(运算符、输入、选择流程控制)

    本篇文章是<零基础学Java>专栏的第二篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 第一章 运算符 1.1 算术运算符的概述和用法 运算符 对常量和变 ...

  8. 学java得这样学,学习确实也得这样

    引言 软件开发之路是充满荆棘与挑战之路,也是充满希望之路.Java学习也是如此,没有捷径可走.梦想像<天龙八部>中虚竹一样被无崖子醍醐灌顶而轻松获得一甲子功力,是很不现实的.每天仰天大叫& ...

  9. 【aliyun】学java,看这里,不迷茫!1460道Java热门问题

    阿里极客公益活动: 或许你挑灯夜战只为一道难题 或许你百思不解只求一个答案 或许你绞尽脑汁只因一种未知 那么他们来了,阿里系技术专家来云栖问答为你解答技术难题了 他们用户自己手中的技术来帮助用户成长 ...

随机推荐

  1. Android Studio 去除上方标题

    选中代码再Ctrl+shift+'/' 可加/***/注释 https://blog.csdn.net/wuqingsen1/article/details/78554117 styles.xml & ...

  2. Hibernate4集成spring4报错----No Session found for current thread

    在编写一个Hibernate4集成spring4的小demo的时候出现了该错误: org.hibernate.HibernateException: No Session found for curr ...

  3. QEMU KVM Libvirt手册(7): 硬件虚拟化

    在openstack中,如果我们启动一个虚拟机,我们会看到非常复杂的参数 qemu-system-x86_64 -enable-kvm -name instance-00000024 -S -mach ...

  4. RabbitMQ 消息顺序、消息幂等、消息重复、消息事务、集群

    1. 消息顺序 场景:比如下单操作,下单成功之后,会发布创建订单和扣减库存消息,但扣减库存消息执行会先于创建订单消息,也就说前者执行成功之后,才能执行后者. 不保证完全按照顺序消费,在 MQ 层面支持 ...

  5. Spark入门PPT分享

    本篇PPT是我在公司内部进行Spark入门的分享,内容包含了Spark基本概念.原理.Streaming.SparkSQL等内容,现在分享出来. 下载请点击这里

  6. MySQL InnoDB 备份与恢复七种方式

    有几种方式: 1 mysqldump, 这种方式不仅适用于InnoDB,还适用于其它类型的存储引擎,如MyISAM.备份的时候将数据库备份成SQL(包含drop,create,insert等语句),恢 ...

  7. [Swift]LeetCode160. 相交链表 | Intersection of Two Linked Lists

    Write a program to find the node at which the intersection of two singly linked lists begins. For ex ...

  8. [Swift]LeetCode190. 颠倒二进制位 | Reverse Bits

    Reverse bits of a given 32 bits unsigned integer. Example 1: Input: 00000010100101000001111010011100 ...

  9. [Swift]LeetCode199. 二叉树的右视图 | Binary Tree Right Side View

    Given a binary tree, imagine yourself standing on the right side of it, return the values of the nod ...

  10. [Swift]LeetCode746. 使用最小花费爬楼梯 | Min Cost Climbing Stairs

    On a staircase, the i-th step has some non-negative cost cost[i] assigned (0 indexed). Once you pay ...