Tech Java NIO
关于NIO,之前也不是没有总结过,但是老忘,每一次忘记之后再次拿起,可能会有些新的感悟,直到发现忘记的根本原因是没掌握准它和Blocking IO的真正区别。NIO能解决掉BIO存在的问题,才是NIO存在的真正意义。 NIO的意义所在 BIO的瓶颈 NIO事件模型 Java NIO组件 SelectableCha...
关于NIO,之前也不是没有总结过,但是老忘,每一次忘记之后再次拿起,可能会有些新的感悟,直到发现忘记的根本原因是没掌握准它和Blocking IO的真正区别。NIO能解决掉BIO存在的问题,才是NIO存在的真正意义。 NIO的意义所在 BIO的瓶颈 NIO事件模型 Java NIO组件 SelectableCha...
之前也不是没总结过Java IO的内容,主要受限于水平,写的总是有限。很多很多年前,Java 字节流 字符流 转换流写得就比较寒碜,第一次接触java io,想把自己看到的东西赶紧记下来,实在是囿于初学这水平,现在都不忍直视。(说实话Java IO这一套封装对于初学者来说是有点儿晕……)后来这一篇Java IO的实现倒是好了不少,介绍了一下Java IO里的包装流,也就是装饰器模式,但是说实...
link Introduction Linear regression with one variable 损失函数 梯度下降 矩阵 向量 矩阵特性 identity inverse transpose Linear regression with mult...
一个应用想要受欢迎,除了强大的功能,还要有用户友好的可管理方式。这里介绍Tomcat的两种管理方式: manager:用户界面; JMX:程序接口; manager web app ContainerServlet JMX MBeanServer ObjectName ...
Tomcat启动后应该使用shutdown.sh脚本,给Server发送"SHUTDOWN"进行关闭,完成Tomcat lifecycle的stop阶段。但是如果用户直接强制退出了,还能执行清理阶段吗? ShutdownHook Catalina注册shutdownhook ShutdownHook Java有关闭机制。在jvm退出(只有守护线程、或者Linux命令行Ctrl...
回顾之前所说的“关联”,比如Server关联Service,Service关联Connector和Container,Container关联子Container等等,都是通过setXXX方法将后者放入前者,使前者持有后者的引用,以此达成“关联”的效果。 Tomcat作为一个servlet容器,让用户部署web应用,这些“关联”应该由用户来决定,用户怎么告诉Tomcat哪个组件关联哪个组件?...
之前定义完Connector和Container,直接手动分别启动二者,并使用read来阻止主线程退出,过于简陋,不能算是一个生产环境的Tomcat。至少存在三个不太好的地方: 手动启动Connector和Container,启动方式不够优雅; 关闭方式不够优雅; 只有一个Connector,如果有多个Connector,就可以一个处理http请求,一个处理https请求; ...
session可以让Tomcat识别多个请求来自于同一个用户,既然涉及到用户,就涉及到权限。比如有的servlet只有管理员才能访问,其他的普通用户也可以访问。 org.apache.catalina.Realm org.apache.catalina.Authenticator 关于认证的知识 权限配置 http认证过程 ...
http是无状态的,但是很多应用都要记住不同的请求来自同一个用户,比如需要登录的网站。servlet规范定义了javax.servlet.http.HttpSession来做这件事:Provides a way to identify a user across more than one page request or visit to a Web site and to store in...
Tomcat是一个servlet容器,要载入程序猿开发的servlet才能使用servlet的功能。servlet类的载入本质上使用的是jdk提供的ClassLoader,但是Tomcat很有必要制定一套自己的Loader,在load servlet class时制定一些规则。 org.apache.catalina.Loader WebappLoader &am...