servlet

tomcat支持php

拥有回忆 提交于 2020-04-07 13:24:39
最近做项目遇到了问题,服务器是用的tomcat,而有用到php,就想在tomcat下面可以运行php,步骤如下: 1.下载php压缩包解压或者用wamp/xampp 我下载的是wamp,用的里面的php,把php的地址配置到path中,执行 php -v看是否正确 除了php之外还需要安装java虚拟机和tomcat。这些工具的最低配置为php 5.x、java 6或以上、tomcat 6或以上。 还需要 Visual C++ Redistributable for Visual Studio 2012 Update 4 这个东西的支持。要不就会报错缺少dll或者无法运行php.exe的问题。 2.下载JavaBridge.jar、php-servlet.jar和php-script.jar并将它们复制到tomcat的lib目录下 3.修改tomcat安装目录下conf文件夹里的web.xml文件,在web-app标签里增加以下的代码; <listener> <listener-class>php.java.servlet.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>PhpJavaServlet</servlet-name> <servlet-class>php.java

Tomcat学习笔记----本地部署servlet动态资源

雨燕双飞 提交于 2020-04-07 13:14:38
前言: 链接:Tomcat学习笔记--简单了解和Web应用的目录结构以及常见的Web应用时出现404错误 有问题:什么是动态资源? 静态资源:当用户多次访问这个资源,资源的源代码永远不会改变的资源 动态资源:当用户多次访问这个资源,资源的源代码可能会发生改变。 Servlet : 用java语言来编写动态资源的开发技术。 Servlet特点: 1)普通的java类,继承HttpServlet类,覆盖doGet方法 2)Servlet类只能交给tomcat服务器运行(开发者自己不能运行) 所以要配置web.xml具体下面会讲 静态访问URL举例: http://localhost:8080/xx/zz.html 动态访问URL举例: http://localhost:8080/xx/One 区别看到没 动态结尾没有后缀名,这个下面会解释的。 进入正题: 第一步:创建一个servlet 为了 了解Tomcat部署的流程,我是照着例子手动敲了一个servlet例子。 编写一个servlet程序,继承HttpServlet 但是继承HttpServlet需要一个jar包: servlet-api.jar 具体可以在 apache-tomcat-9.0.8lib 中找到 添加到项目中然后build path即可 package first.one; import java.io

web.xml中<context-param>与<init-param>的区别与作用

醉酒当歌 提交于 2020-04-07 11:40:51
<context-param>的作用: web.xml的配置中<context-param>配置作用 1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context-param></context-param> 2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文. 3.容器将<context-param></context-param>转化为键值对,并交给ServletContext. 4.容器创建<listener></listener>中的类实例,即创建监听. 5.在监听中会有contextInitialized(ServletContextEvent args)初始化方法,在这个方法中获得ServletContext = ServletContextEvent.getServletContext(); context-param的值 = ServletContext.getInitParameter("context-param的键"); 6.得到这个context-param的值之后,你就可以做一些操作了.注意,这个时候你的WEB项目还没有完全启动完成.这个动作会比所有的Servlet都要早. 换句话说,这个时候

Spring-MVC理解之:应用上下文webApplicationContext

Deadly 提交于 2020-04-07 11:38:06
一、先说ServletContext   javaee标准规定了,servlet容器需要在应用项目启动时,给应用项目初始化一个ServletContext作为公共环境容器存放公共信息。ServletContext中的信息都是由容器提供的。 举例: 通过自定义contextListener获取web.xml中配置的参数 1.容器启动时,找到配置文件中的context-param作为键值对放到ServletContext中 2.然后找到listener,容器调用它的contextInitialized(ServletContextEvent event)方法,执行其中的操作 例如:在web.xml中配置 <context-param> <param-name>key</param-name> <param-value>value123</param-value> </context-param> <listener> <listener-class>com.brolanda.contextlistener.listener.ContextListenerTest</listener-class> </listener> 配置好之后,在该类中获取对应的参数信息 package com.brolanda.contextlistener.listener; import javax

SpringMVC-Maven 搭建及发布到Tomcat7操作流程

我的梦境 提交于 2020-04-06 23:52:43
该文档主要记录SpringMVC-Maven 搭建及发布到Tomcat7操作流程 Round 1: 使用Eclipse创建Maven项目 创建名称SpringMVC-studyDemo的Maven项目 其中index.jsp报错,错误信息:Multiple annotations found at this line: - The superclass 意思是缺少servlet包,我们可以导入javax.servlet-api-3.1.0.jar包. 只需要在pom.xml中添加依赖即可 <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <!--有关jar包 依赖 可登录http://mvnrepository.com/ 查询对应jar包--> </dependency> Round 2: 引入Spring MVC 这里主要是在pom.xml中增加对Spring的依赖 <properties> <spring.version>5.0.8.RELEASE</spring.version> </properties> <dependency> <groupId>org.springframework<

Tomcat启动过程原理详解

*爱你&永不变心* 提交于 2020-04-06 00:51:00
基于 Java 的Web 应用程序是 servlet、JSP 页面、静态页面、类和其他资源的集合,它们可以用标准方式打包,并运行在来自多个供应商的多个容器。Web 应用程序存在于结构化层次结构的目录中,该层次结构是由 Java Servlet 规范定义的。Web 应用程序的根目录包含直接存储或存储在子文件夹中的所有公共资源,比如图像、HTML 页面等。构成:Web应用由Web组件(一组Java类库)、html文件,静态资源文件(如图像)、帮助类和库组成。 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器

Tomcat启动过程原理详解

允我心安 提交于 2020-04-06 00:44:55
基于 Java 的Web 应用程序是 servlet、JSP 页面、静态页面、类和其他资源的集合,它们可以用标准方式打包,并运行在来自多个供应商的多个容器。Web 应用程序存在于结构化层次结构的目录中,该层次结构是由 Java Servlet 规范定义的。Web 应用程序的根目录包含直接存储或存储在子文件夹中的所有公共资源,比如图像、HTML 页面等。构成:Web应用由Web组件(一组Java类库)、html文件,静态资源文件(如图像)、帮助类和库组成。 1 – Tomcat Server的组成部分 1.1 – Server A Server element represents the entire Catalina servlet container. (Singleton) 1.2 – Service A Service element represents the combination of one or more Connector components that share a single Engine Service是这样一个集合:它由一个或者多个Connector组成,以及一个Engine,负责处理所有Connector所获得的客户请求 1.3 – Connector 一个Connector将在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处理

JavaWeb(一) / /* /**的区别

主宰稳场 提交于 2020-04-05 23:13:40
1. web.xml中url-pattern配置 url-pattern为/ 使用SpringMVC的框架时,需要在 web.xml 配置前端控制器 DispatcherServlet ,配置为: <!-- 配置前端控制器 --> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> url-pattern为/* 我们需要使用过滤器时,需要在 web.xml 中进行注册。以处理中文乱码的过滤器

搭建一个简单的SMM框架

杀马特。学长 韩版系。学妹 提交于 2020-04-05 20:54:20
SSM框架整合 Spring + Spring MVC + MyBatis Spring MVC 负责实现 MVC 设计模式,MyBatis 负责数据持久层,Spring 负责管理 Spring MVC 和 MyBatis 相关对象的创建和依赖注入。 创建 Maven 工程,pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>janeroad</groupId> <artifactId>ssm</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <name>ssm Maven Webapp</name> <!-- FIXME change it to the

Servlet文件接收

前提是你 提交于 2020-04-04 16:51:52
个人编写的小demo,拿走直接可以用,以下是 EfengPayload.java的 源文件,用法在下面写 1 import java.awt.image.BufferedImage; 2 import java.io.BufferedInputStream; 3 import java.io.ByteArrayInputStream; 4 import java.io.IOException; 5 import java.io.InputStream; 6 import java.util.HashMap; 7 import java.util.Map; 8 import javax.imageio.ImageIO; 9 import javax.servlet.ServletException; 10 import javax.servlet.http.HttpServletRequest; 11 12 public class EfengPayload { 13 private byte[] reqdata; 14 private byte[] boundary; 15 Map<String, String> payloadinfo; 16 17 EfengPayload(HttpServletRequest req) throws ServletException,