web开发

在Tomcat中部署Web程序的几种方式

流过昼夜 提交于 2020-04-07 08:01:46
在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署。在下文中$CATALINA_HOME指的是Tomcat根目录。 一、静态部署 静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。以下3中方式都可以部署: 1、将PetWeb目录拷贝到$CATALINA_HOME\webapps下,然后启动服务器就可以了。这种方式比较简单,但是web应用程序必须在webapps目录下。访问地址如下: http://localhost:8080/PetWeb/ 2、这种方式可以不必将PetWeb目录拷贝到webapps下,直接在F:\部署。方法如下,更改$CATALINA_HOME\conf\server.xml文件,在<host>标签内添加<Context>标签,内容如下: <Context docBase="F:/PetWeb" reloadable="false" path="/Pet"/> 其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为true,方便开发,在发布阶段应该设置为false,提高应用程序的访问速度。docBase为路径,可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps。path属性的值是访问时的根地址。访问地址如下

类加载器与Web容器

蓝咒 提交于 2020-04-07 07:48:52
在 关于类加载器 中已经介绍了Jvm的类加载机制,然而对于运行在Java EE容器中的Web应用来说,类加载器的实现方式与一般的Java应用有所不同。不同的Web容器的实现方式也会有所不同。 Tomcat中的类加载机制 在Apache Tomcat 中,为了提高系统的灵活性,引入了commonLoader、sharedLoader、catalinaLoader;为了支持和分隔多个web应用,使用了WebappClassLoader。下面以Tomcat7.0的类加载器结构图总体来看大致如下: Bootstrap | System | Common / \ Webapp1 Webapp2 ... Tomcat中的系统类加载器。Tomcat也是一个Java应用,他也是在最初系统提供的几层类加载器环境下运行起来的。那么Tomcat的一些最基本的类,也和其它简单Java应用一样,是通过系统的类加载器来加载的,比如默认配置下的tomcat/bin目录下的bootstrap.jar、tomcat-juli.jar、commons-daemon.jar这几个jar包中的类。 Tomcat的Common Loader。Common Loader是Tomcat在系统类加载器之上建立起来的,其父loader是系统类加载器。Common Loader负责上面几个jar包外的Tomcat的大部分java类

我们在设计iPhone应用时犯过的错误

陌路散爱 提交于 2020-04-07 05:51:40
本文是由FreshBooks的产品经理和创意总监所写的开发实例。FreshBook是一款在线的发票服务软件,其服务的用户群体,决定了他们提供的功能必须在操作上简单、快速、高效。 因此,他们的产品界面和功能体验上有着很高的要求。本文就是他们在具体实践方面的经验之谈。 以下正文,以作者为第一人称编译: 今年,我们(英文原文作者及团队)发布了FreshBooks的第一款iPhone应用。从前我们的产品一直是通过Web端应用的方式为客户们服务 的。这次,我们把iPhone应用的设计开发过程看作一张空白的花布,尽力在其中实现一些新的功能概念和设计想法。在这个过程中,我们着实学到不少东西。 不要害怕犯错 对于移动应用这样的产品,在设计开发过程中必然会面对不少较为复杂的用户体验设计方面的挑战与问题,尤其是对于新手来说更是如此。 无论你的线框稿在逻辑上有多缜密,UI稿在视觉上有多漂亮,当它们落实成为原型或最终产品时,总会有问题呈现出来。这并不完全是坏事;我们在设计FreshBooks的iPhone应用时甚至将犯错这件事也纳入到了流程规划当中,这就意味着: 坦承没有完美的设计,无论稿件和原型多么优秀。 真正的成功或失败都是由用户的反馈来定义的。 对于在设计过程中看到的问题要迅速做出反应,根据从实际用户身上得来的验证结果进行迭代。 接下来,我将向各位描述一下我们在项目中犯过的三个错误

浏览器---WEB开发基础之三

依然范特西╮ 提交于 2020-04-06 20:33:42
通过HTTP协议的介绍,打开网页必须建立TCP连接,然后通过HTTP协议进行交互,因此,浏览器访问网址,第一件事就是建立TCP连接,但是TCP连接是基于IP的,而我们输入的却是网址,所以,实际上第一件事,应该是通过DNS去查找网址(也就是域名)对应的主机的IP,然后才是三次握手建立TCP连接(此处知识详见《计算机网络基础》),然后浏览器向服务器发送: GET HTTP://www.baidu.com HTTP/1.1 Accept: application/x-ms-application, image/jpeg, application/xaml+xml, [...] User-Agent: Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; [...] Accept-Encoding: gzip, deflate Connection: Keep-Alive Host: www.baidu.com Cookie: BAIDUID=[...]:FG=1; H_PS_PSSID=[...] 是的,这就是发送求情报文,只是这些事情都是由浏览器做的!此处报文的解释,请详细参考《HTTP 权威指南》。 然后由服务器处理(此处省略详细细节,后面服务端节讲解),并返回响应报文,报文格式不再详述,参考对应的书籍或标准

在 Linux 服务器上配置 WEB 应用程序的日志打印到指定文件

一笑奈何 提交于 2020-04-06 19:47:30
服务器环境是 RedHat Linux, 其上运行的是 Apache + Tomcat,容器中运行的是我们公司的壹个小型电子商务网站,原来项目里的日志信息都是直接随着 Tomcat 容器壹起打印到 /tomcat/logs/catalina.out 中,与服务器本身的日志混合在壹起,特别难看,尤其当日志信息很多时,总是把重要的信息给冲掉了。感觉特别不爽。于是从两个月前开始,我就想把这个问题给解决下,思路就是给应用程序单独配置日志的输出方式,将其重定向到指定的日志文件,这样,我们可以简单的通过查看日志文件的方式来了解代码运行过程中可能存在的问题。 应用程序原来使用的是 LOG4J 来打印日志信息,查了下相关资料,最后我决定选用 Rolling File Appender,因为这种方式打印日志,当日志容量达到指定值时,如100MB,会自动重新生成壹个新的文件,并把原来的100MB 文件备份,这样,就可以将某一段时间内的日志信息都保留在服务器上,对于服务器维护很有帮助。 项目中的 log4j.properties 配置信息如下: log4j.rootLogger=DEBUG, ROLLING_FILE log4j.additivity.org.apache=true log4j.appender.ROLLING_FILE=org.apache.log4j

介绍几个移动web app开发框架

时光怂恿深爱的人放手 提交于 2020-04-06 18:25:01
jQuery Mobile jQuery Mobile 框架能够帮助你快速开发出支持多种移动设备的Mobile应用用户界面。jQuery Mobile最新版本是1.4.0,默认主题采用扁平化设计风格。jQuery Mobile1.4.0主要侧重于性能和控件方面的改进。除了全新的默认主题和SVG图标,还新增了开关控件、通用过滤器、箭头弹出框、滑动提示框等一系列功能,更是集成了jQuery UI的Tab部件。jQuery Mobile继承了jQuery的优势,并且提供了丰富的适合手机应用的UI组件。jQuery Mobile还有很多的第三方扩展。 1.1 jQuery mobile flat-ui 主题 https://github.com/ququplay/jquery-mobile-flat-ui-theme 1.2jQuery mobile Bootstrap 主题 https://github.com/commadelimited/jQuery-Mobile-Bootstrap-Theme Frozen UI Frozen UI 是腾讯ISUX团队(社交用户体验设计团队)根据最新的手机QQ设计规范制作的移动端Web框架,包括CSS基础样式和组件、JavaScript基础组件和一些动画效果库。为了方便记忆和增添趣味性,腾讯ISUX团队为它取了动画片《冰雪奇缘》的英文名

转行学习web前端开发应该具备的条件,这4点,80%的人都坚持不下!

岁酱吖の 提交于 2020-04-06 07:03:04
5G时代来临,各行各业对产品的用户体验需求空前大增。人们在享受互联网带来的便捷也给互联网产品提出了新的需求,这意味着前端开发人员也有了更多的机会和挑战。无论是大小公司,对前端开发工程师的需求都是在快速上涨,薪资待遇也随之上升很快。 前端开发工程师就业机会多,创业机会多,且就业范围广,几乎各行各业都有需要,互联网公司、金融,贸易等等都能进。并且对从事开发的就业者的专业经历不设门槛,学习门槛低,几乎很多人都能学习和从事前端开发工程师工作。面对种种因素,许多大学毕业生,都踏上了转行前端开发工程师的路。但是这条路并不好走,如果选择走了这条路,更是要慎重再慎重。毕竟,这关系着职业发展,如果没有下定决心,最好不要盲目跟风。 电子、机械、平面设计、UI设计转行前端开发的已不算罕见了,现在很多从事非互联网行业的也纷纷转行前端开发了。不过,在这条未知的路上,还有很多同学在转行前端开发这条路上一直在自我摸索,磕磕碰碰。 前端工程师首先是软件工程师,基础是最重要的,如果基础不扎实,一切应用技能就都是“浮云”。前端的基础是什么?HTML、CSS、Java基本功,数据结构、编译原理基本功。前端开发不是一个没有技术含量的编写静态网页的职位,前端的大牛,通常都是可以完成多方向产品的,比如说小程序,H5,APP开发等。 在这里给想转行或准备学习前端开发的同学们,你应该具备的哪些条件: 第一:喜欢前端

WEB开发:Java与Php对比

南楼画角 提交于 2020-04-06 06:03:09
比较 PHP 和 JSP 这两个 Web开发 技术,在目前的情况是其实是比较PHP和 Java 的Web开发。以下是我就几个主要方面进行比较: 一、 语言比较 PHP是解释执行的服务器脚本语言,首先php有简单容易上手的特点。语法和c语言比较象,所以学过c语言的程序员可以很快的熟悉php的开发。而java需要先学好java的语法和熟悉一些核心的类库,懂得面向对象的程序设计方法。所以java不如php好学。 Java首先要编译成字节码.class文件,然后在java虚拟机上解释执行。Java的Web开发首先最容易想到的就是JSP(现在已经到 JSP2.0),原来的java的Web开发都是用servlet来实现的,用servlet来开发需要程序员在java的源文件中嵌入大量的html代码。所以后来就出现了JSP,JSP可以方便的嵌入到html文件当中,其实jsp文件在服务器上执行的时候首先会被应用服务器转换成servlet,然后再编译执行。Jsp可以通过servlet和JavaBean的支持产生强大的功能。JavaBean 是一种可复用的、跨平台的软件组件。使用javabean可以方便的实现java代码和html的分离,能够增强系统的功能和软件的复用性。 Java的Web开发属于SUN公司定义的J2EE其中的规范。而且在J2EE中包括了java的Web开发的所有方面,如:JSP

web前端入门很容易,全栈却很难,为什么每个程序员都那么说?

岁酱吖の 提交于 2020-04-06 05:58:23
互联网行业无疑是当今社会颇具包容性且发展前景广阔的一个行业,如果单纯只是学习前端编程语言、而不懂后端编程语言,也不能算作是优秀的前端工程师。在成为一个优秀的前端工程师的道路上,充满了汗水和辛劳。 学习 HTML,CSS 应该先跟着书仔细、扎实的学一遍。然后就需要做大量的练习,做各种常规的、奇怪的、大量的布局练习来捆固、理解自己的知识。而学习 JavaScript首先要知道这门语言可以做什么,不能做什么,擅长做什么,不擅长做什么!如果你只想当一个普通的前端程序员,你只需要记住大部分 JavaScript函数,做一些练习就可以了。 如果你想当深入了解JavaScript,你需要了解 JavaScript 的原理,机制。需要知道他们的本源,需要深刻了解 JavaScript 基于对象的本质。还需要 深刻了解浏览器宿主下的JavaScript的行为、特性。 全栈前端就是学习的知识不仅是前端的基本知识,还有后台,小程序,混合式开发等相关知识,在以前,会一点Photoshop和Dreamweaver的操作,就可以制作网页。现在,只掌握这些已经远远不够了。无论是开发难度上,还是开发方式上,现在的网页制作都更接近传统的网站后台开发,所以现在不再叫网页制作,而是叫Web前端开发。 Web前端开发在产品开发环节中的作用变得越来越重要,而且需要专业的前端工程师才能做好。Web前端开发是一项很特殊的工作

Java和PHP在Web开发方面的比较

我的未来我决定 提交于 2020-04-06 05:49:22
 比较PHP和JSP这两个Web开发技术,在目前的情况是其实是比较PHP和Java的Web开发。以下是我就几个主要方面进行的比较:    一、 语言比较   PHP是解释执行的服务器脚本语言,首先php有简单容易上手的特点。语法和c语言比较象,所以学过c语言的程序员可以很快的熟悉php的开发。而java需要先学好java的语法和熟悉一些核心的类库,懂得面向对象的程序设计方法。所以java不如php好学。   Java首先要编译成字节码.class文件,然后在java虚拟机上解释执行。Java的Web开发首先最容易想到的就是JSP(现在已经到JSP2.0),原来的java的Web开发都是用servlet来实现的,用servlet来开发需要程序员在java的源文件中嵌入大量的html代码。所以后来就出现了JSP,JSP可以方便的嵌入到html文件当中,其实jsp文件在服务器上执行的时候首先会被应用服务器转换成servlet,然后再编译执行。Jsp可以通过servlet和JavaBean的支持产生强大的功能。JavaBean 是一种可复用的、跨平台的软件组件。使用javabean可以方便的实现java代码和html的分离,能够增强系统的功能和软件的复用性。   Java的Web开发属于SUN公司定义的J2EE其中的规范。而且在J2EE中包括了java的Web开发的所有方面,如:JSP