网站建设费用兴田德润团队,域名所有人是网站名不能转出,做五金的外贸网站有哪些,网站开发期间账务处理jsp
静态页面#xff1a;web诞生后的html文档#xff0c;不论多少次访问都是同一份html文档或者是其他的什么文档#xff0c;所以说是”静态“的。 虽然js能让页面产生互动#xff0c;但是不论什么人访问#xff0c;看到的都是放在服务器的那一份写死的文件/文档activexa…jsp
静态页面web诞生后的html文档不论多少次访问都是同一份html文档或者是其他的什么文档所以说是”静态“的。 虽然js能让页面产生互动但是不论什么人访问看到的都是放在服务器的那一份写死的文件/文档activexappletflash 动态页面服务器软件动态编辑html文件现场照着模板编辑一份给你模板引擎 不知道为啥不算动态页面。python从来没有发展出动态页面技术但是有模板引擎
web相关概念回顾 软件架构 C/S客户端/服务器端B/S浏览器/服务器端 资源分类 静态资源所有用户访问后得到的结果都是一样的称为静态资源.静态资源可以直接被浏览器解析 如 html,css,JavaScript 动态资源:每个用户访问相同资源后得到的结果可能不一样。称为动态资源。动态资源被访问后需要先转换为静态资源在返回给浏览器 如servlet/jsp,php,asp…
web服务器软件
服务器安装了服务器软件的计算机硬件服务器软件接收用户的请求处理请求做出响应的进程 比如将tomcat和我们写的代码打成一个jar包在有一段口号运行web服务器软件接收用户浏览器的http请求处理请求做出响应通常是返回html文档。 在web服务器软件中可以部署web项目让用户通过浏览器来访问这些项目如nginx, Apache微软IIS,还有Tomcat的部分功能
Java Servlet容器 相关概念起源于JavaEE中EJB企业级javaBean的容器。 单独的servlet文件需要结合servlet-api相关的JavaEE的jar包将其初始化后放在容器中管理才有用 Tomcat就是这么一个Servlet容器顺便还有web服务器功能 常见的java相关的web服务器软件 webLogicoracle公司大型的JavaEE服务器支持所有的JavaEE规范收费的。webSphereIBM公司大型的JavaEE服务器支持所有的JavaEE规范收费的。JBOSSJBOSS公司的大型的JavaEE服务器支持所有的JavaEE规范收费的。TomcatApache基金组织中小型的JavaEE服务器仅仅支持少量的JavaEE规范servlet/jsp。开源的免费的。 JavaEEJava语言在企业级开发中使用的技术规范的总和一共规定了13项大的规范 Tomcat 下载http://tomcat.apache.org/安装解压压缩包即可。 注意安装目录建议不要有中文和空格 卸载删除目录就行了启动 bin/startup.bat ,双击运行该文件即可 访问浏览器输入http://localhost:8080 回车访问自己 http://别人的ip:8080 访问别人 可能遇到的问题 黑窗口一闪而过 原因 没有正确配置JAVA_HOME环境变量解决方案正确配置JAVA_HOME环境变量 启动报错 暴力找到占用的端口号并且找到对应的进程杀死该进程 netstat -ano 温柔修改自身的端口号 conf/server.xml一般会将tomcat的默认端口号修改为80。80端口号是http协议的默认端口号。 好处在访问时就不用输入端口号 关闭 正常关闭 bin/shutdown.batctrlc 强制关闭 点击启动窗口的× 配置: 部署项目的方式 直接将项目放到webapps目录下即可。 /hello项目的访问路径–虚拟目录简化部署将项目打成一个war包再将war包放置到webapps目录下。 war包会自动解压缩 配置conf/server.xml文件 在标签体中配置 docBase:项目存放的路径path虚拟目录 在conf\Catalina\localhost创建任意名称的xml文件。在文件中编写 虚拟目录xml文件的名称 静态项目和动态项目 目录结构 java动态项目的目录结构 – 项目的根目录 – WEB-INF目录 – web.xmlweb项目的核心配置文件 – classes目录放置字节码文件的目录 – lib目录放置依赖的jar包 将Tomcat集成到IDEA中并且创建JavaEE的项目部署项目。
Servlet server applet
概念运行在服务器端的小程序 Servlet就是一个接口定义了Java类被浏览器访问的规则。将来我们自定义一个类实现Servlet接口复写方法。
Java Servlet 在遵循Java Servlet 规范(http://java.sun.com/product/servlet/2.2)定义的标准容器环境中运行,容器环境在 HTTP 通信和 We 服务器平台之间实现了一个抽象层。容器环境负责把请求传递给 Servlet,并把结果返回给客户。容器环境也提供了配置Java Servlet 应用的简单方法并且也提供了以声明性的方式使用特殊的基于 Web 应用XML布置描述符对 Java Servlet 应用进行各种管理服务。Java Servlet API中包括了ServletContext 接口,实现与容器环境的交互。
* 快速入门1. 创建JavaEE项目2. 定义一个类实现Servlet接口* public class ServletDemo1 implements Servlet3. 实现接口中的抽象方法4. 配置Servlet在web.xml中配置!--配置Servlet --servletservlet-namedemo1/servlet-nameservlet-classcn.itcast.web.servlet.ServletDemo1/servlet-class/servletservlet-mappingservlet-namedemo1/servlet-nameurl-pattern/demo1/url-pattern/servlet-mapping* 执行原理1. 当服务器接受到客户端浏览器的请求后会解析请求URL路径获取访问的Servlet的资源路径2. 查找web.xml文件是否有对应的url-pattern标签体内容。3. 如果有则在找到对应的servlet-class全类名4. tomcat会将字节码文件加载进内存并且创建其对象5. 调用其方法 Servlet中的生命周期方法 被创建执行init方法只执行一次 Servlet什么时候被创建 默认情况下第一次被访问时Servlet被创建可以配置执行Servlet的创建时机。 在标签下配置 第一次被访问时创建 的值为负数 在服务器启动时创建 的值为0或正整数Servlet的init方法只执行一次说明一个Servlet在内存中只存在一个对象Servlet是单例的 - 多个用户同时访问时可能存在线程安全问题。 - 解决尽量不要在Servlet中定义成员变量。即使定义了成员变量也不要对修改值 提供服务执行service方法执行多次 每次访问Servlet时Service方法都会被调用一次。 被销毁执行destroy方法只执行一次 Servlet被销毁时执行。服务器关闭时Servlet被销毁只有服务器正常关闭时才会执行destroy方法。destroy方法在Servlet被销毁之前执行一般用于释放资源 Servlet3.0 好处 支持注解配置。可以不需要web.xml了。 步骤 创建JavaEE项目选择Servlet的版本3.0以上可以不创建web.xml定义一个类实现Servlet接口复写方法在类上使用WebServlet注解进行配置 WebServlet(“资源路径”) Target({ElementType.TYPE})Retention(RetentionPolicy.RUNTIME)Documentedpublic interface WebServlet {String name() default ;//相当于Servlet-nameString[] value() default {};//代表urlPatterns()属性配置String[] urlPatterns() default {};//相当于url-patternint loadOnStartup() default -1;//相当于load-on-startupWebInitParam[] initParams() default {};boolean asyncSupported() default false;String smallIcon() default ;String largeIcon() default ;String description() default ;String displayName() default ;}IDEA与tomcat的相关配置
1. IDEA会为每一个tomcat部署的项目单独建立一份配置文件* 查看控制台的logUsing CATALINA_BASE: C:\Users\fqy\.IntelliJIdea2018.1\system\tomcat\_itcast2. 工作空间项目 和 tomcat部署的web项目* tomcat真正访问的是“tomcat部署的web项目”tomcat部署的web项目对应着工作空间项目 的web目录下的所有资源* WEB-INF目录下的资源不能被浏览器直接访问。
3. 断点调试使用小虫子启动 dubug 启动