Java Web不能不懂的知识
1、传说中java的class文件可以一次编译到处运行,那么源代码采用GBK还是UTF-8会有影响么?
不会有影响。
因为Java源代码通过编译后,生成的class文件为字节码。它可以被看作是包含一个执行程序的二进制文件,需要在JVM进行执行。
而GBK、UTF-8等为字符编码格式,针对的是字符,如Java源代码,中文,英文等文字。
2、如果lib有2个不同版本的jar,例如spring2.5,spring3,还能安心干活么?
可能会引起jar包冲突。
Tomcat下Jar包加载顺序: 1. $java_home/lib 目录下的java核心api 2. $java_home/lib/ext 目录下的java扩展jar包 3. java -classpath/-Djava.class.path所指的目录下的类与jar包 4. $CATALINA_HOME/common目录下按照文件夹的顺序从上往下依次加载 5. $CATALINA_HOME/server目录下按照文件夹的顺序从上往下依次加载 6. $CATALINA_BASE/shared目录下按照文件夹的顺序从上往下依次加载 7. 我们的项目路径/WEB-INF/classes下的class文件 8. 我们的项目路径/WEB-INF/lib下的jar文件 在同一个文件夹下,jar包是按顺序从上到下依次加载
由ClassLoader的双亲委托模式加载机制我们可以知道,假设两个包名和类名完全相同的class文件不再同一个
jar包,如果一个class文件已经被加载java虚拟机里了,那么后面的相同的class文件就不会被加载了。
3、如果classes有个class文件不小心被打到jar包去,遗忘在lib目录,以后更新classes会不会炸了?
不会有影响,因为class文件会先加载。当新的class文件更新至classes文件夹内以后会被先读取。
4、log4j.xml放到conf目录会有问题么? 有什么区别没有?
log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log4j.properties文件,加载配置。配置文件放置位置正确,不用在程序中手动加载log4j配置文件。如果将配置文件放到了config文件夹下,在build Path中设置下就好了。

读取路径改为:
PropertyConfigurator.configure("config/log4j.properties");
5、有人写了个Niubility的类放在yy.war, 为什么我就调用不到呢,明明同一个猫上跑的?
Tomcat不支持跨应用调用类,但是允许跨应用访问数据。在tomcat下,context元素有一个crossContext属性,如果配置为true,则可以实现在同一个tomcat下的多个web应用之间实现ServletContext对象访问。
6、听说有servlet3支持异步可厉害了,但放个demo到tomcat6会挂了,我lib明明有高大上的servlet-api.jar?

7、听说web.xml里边可以配置监听器listener,但它监听什么?
Servlet的监听器Listener,它实现了javax.servlet.ServletContextListener 接口,由服务器端程序实现相关业务逻辑,包括做一些初始化的内容添加工作、设置一些基本的内容、比如一些参数或者是一些固定的对象等等。
随web应用的启动而启动,只初始化一次,随web应用的停止而销毁。也就是说,它能捕捉到服务器的启动和停止,在启动和停止触发里面的方法做相应的操作!
它必须在web.xml 中配置才能使用。
web.xml 的加载顺序是:context-param -> listener -> filter -> servlet
8、为什么不建议把jsp放在war的根目录下?
因为war的根目录下文件可以直接通过url直接进行访问。那么用户可以在不具备权限的情况下,可以对jsp文件进行访问,看到部分相关内容。
Java Web不能不懂的知识的更多相关文章
- Java Web -- Servlet(1) 必备知识
学习Java WEB开发必备的基本概念: 1.WEB 本意是蜘蛛网和网的意思.在网页设计中我们称为网页的意思. 现广泛译作网络.互联网等技术领域.表现为三种形式,即超文本(hypertext).超媒体 ...
- Java Web开发基础零星知识
1. Web的三个核心标准 万维网的核心标准有三个,分别是URL.HTTP和HTML. URL(统一资源定位符,Universal Resource Locator),为描述Internet上的网页以 ...
- Java web struct入门基础知识
1.Struts2的前身是Opensymphony的Webwork2,实际上Strut和Webwork2合并后形成Struts2. 2.一个HelloWord示例 1)创建Web应用,所需要的Ja ...
- java web简易网上书店项目系列,使用MVC模式(servlet+jstl+dbutils),开篇
一. 针对很多java web初学者入门困难的问题,笔者利用一个小型web项目,一步一步的展示java web开发方法,每一个章节引入一些java web开发的重点知识,让同学们可以将java web ...
- java web (j2ee)学习路线 —— 将青春交给命运
RESON TO DO JAVA WEB:1.JAVA WEB(企业级) 2.Android和iOS过于火爆并且不兼容 一.JAVA WEB开发需要的知识储备 1. 基本的网页设计语言:H ...
- java web开发必备知识
从各种招聘网站的要求上筛选出了一些java开发的一些基本的要求,对照自身看看有哪些缺陷. java基础 既然是java web开发,java SE肯定要学好了. 多线程,IO,集合等,对队列,缓存,消 ...
- Java web 入门知识 及HTTP协议详解
Java web 入门知识 及HTTP协议详解 WEB入门 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资 ...
- JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识
JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...
- Java Web知识梳理
今天给内部做了个培训,貌似搞错了对象,不该对新人讲这么原理性的东西. anyway,还是放上来吧,不知道有没有人能理清其中的逻辑 ^ _ ^ 问题:为什么要用tomcattomcat: servlet ...
随机推荐
- LeetCode OJ:Range Sum Query 2D - Immutable(区域和2D版本)
Given a 2D matrix matrix, find the sum of the elements inside the rectangle defined by its upper lef ...
- 【linux】VirtualBox-“please use a kernel appropriate for your cpu”
This kernel requires the following features not present on the CPU:paeUnable to boot – please use a ...
- avr 烧录失败
用Atmel studio 6.0 配置mkII烧录器 使用上位机bat程序烧录 提示错误:firmware is old... 1参考(关于FUSe setting) http://www.cnbl ...
- c# 获取随机数字/字符/时间
using System; using System.Text; namespace HuaTong.General.Utility { /// <summary> /// 随机字符/数字 ...
- 细说并发5:Java 阻塞队列源码分析(下)
上一篇 细说并发4:Java 阻塞队列源码分析(上) 我们了解了 ArrayBlockingQueue, LinkedBlockingQueue 和 PriorityBlockingQueue,这篇文 ...
- 博客迁移至“零一积流|it-refer.com”
虽然在博客园写了没几篇文章,考虑到个人发展,自己还是建立一个独立的站点:零一积流. 以后直接在自己网站上写东西了,此处只用做文章收藏.
- HihoCoder 1075 开锁魔法III(概率DP+组合)
描述 一日,崔克茜来到小马镇表演魔法. 其中有一个节目是开锁咒:舞台上有 n 个盒子,每个盒子中有一把钥匙,对于每个盒子而言有且仅有一把钥匙能打开它.初始时,崔克茜将会随机地选择 k 个盒子用魔法将它 ...
- stm32寄存器版学习笔记04 定时计数器中断
STM32共有8个定时计数器,其中TIME1和TIME8是高级定时器,TIME2~TIME5是通用定时器,TIME6和TIME7是基本定时器.以TIME3为例总结定时计数器的基本用法. 1.TIM3的 ...
- BZOJ1030 JSOI2007 文本生成器 【AC自动机】【DP】*
BZOJ1030 JSOI2007 文本生成器 Description JSOI交给队员ZYX一个任务,编制一个称之为"文本生成器"的电脑软件:该软件的使用者是一些低幼人群,他们现 ...
- mysql拼接多条查询结果并且加序列
SELECT GROUP_CONCAT(a.DESCRIPTION SEPARATOR '\n') FROM (SELECT (@rowNum:=0) AS rowNo,CONCAT('公司内 ...