在开始之前,先回顾一下 jsp 和 servlet,jsp 和 servlet 本质是一样的,因为 jsp 最终必须编译成 servlet 才能运行。

因为 jsp 的那些标签 jvm 是无法直接运行的,必须经过编译成 java,才能够发挥它的作用。

创建步骤:

1. 在任意目录新建一个名为 "jsp" 的项目, 这个目录会是最终的应用文件夹

2. 在上一步新建的文件夹内新建一个 WEB-INF 文件夹(区分大小写)

3. 进入 tomcat 的 webapp 目录, 进入里面任意一个应用, 复制里面的 web.xml 到上一步新建的 WEB-INF 中

4. 修改复制后的 web.xml, 将文件修改成只有一个根元素的 XML 文件. 修改后的 web.xml 如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0"
metadata-complete="true">
</web-app>

5. 在第二步新建的 WEB-INF 路径下, 新建两个文件夹 classes 和 lib, 这两个文件夹的作用完全相同, 都是用于保存 Web 应用所需要的 java 文件, 区别是 classes 保存单个 *.class 文件, 而 lib 保存打包后的 jar 文件.

6. 经过以上步骤, 已经建立了一个空的 Web 应用. 将该应用文件夹复制到 tomcat 的 webapps 路径下, 就可以通过浏览器来访问这些页面了. 不难发现 Web 应用应该有如下文件结构:

<jsp> -- 这是 web 应用的名称, 可以改变
|-WEB-INF
| |-classes
| |-lib
| |-web.xml
|-<a.jsp> -- 此处可放任意多个 jsp 页面

7. 我们在应用根目录下新建一个 a.jsp 文件, 页面内容如下:

<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<html>
<head>
<title>徒手创建一个 jsp 项目</title>
</head>
<body>
<h1>徒手创建一个 jsp 项目</h1>
</body>
</html>

8. 我们访问 http://localhost:8080/jsp/a.jsp, 就可以看到上面的内容了

点击查看最终效果:http://jsp.baiguiren.com:8080/jsp/a.jsp

所有源码:https://github.com/eleven26/jsp/tree/master/jsp

下面看到有点不一样,因为我写的内容不一样:

最新文章

  1. Java中的构造代码块
  2. 【C++实现python字符串函数库】二:字符串匹配函数startswith与endswith
  3. bzoj 3223 splay模板题3
  4. You Can Do Research Too
  5. (转) vector的reserve和resize
  6. [学习笔记] 七步从AngularJS菜鸟到专家(7):Routing [转]
  7. 【HDU3371】Connect the Cities(MST基础题)
  8. 关于arm-linux-gcc的安装与配置
  9. Android之场景桌面(一)
  10. WPF中对三维模型的控制
  11. Flask -- 会话
  12. SELECT TOP 1 * FROM是什么意思
  13. java中JFrame类中函数addWindowListener(new WindowAdapter)
  14. Hibernate之综合问题
  15. HttpServlet
  16. Big Endian&#160; 和 Little Endian 模式的区别
  17. A1105. Spiral Matrix
  18. 转换简体中文和繁体中文 cconv-0.6.2 for win32 static
  19. PostgreSQL LIKE 查询效率提升实验&lt;转&gt;
  20. javascript常用功能收藏

热门文章

  1. 高可用Kubernetes集群-1. 集群环境
  2. eBay推Winit海外仓 鼓励卖家拓展北美市场
  3. MVC与ajax【转】
  4. 如何理解IPD+CMMI+Scrum一体化研发管理解决方案之Scrum篇
  5. FPGA的软核与硬核
  6. sql主表分页查询关联子表取任意一条高效方案
  7. WebSphere应用服务器内存泄漏探测与诊断工具选择最佳实践
  8. HDU4472_Count
  9. CF464C-Substitutes in Number
  10. 51nod 1674 区间的价值V2(思维+拆位+尺取法)