java web高级编程 笔记1
chapter1:了解web应用程序
web应用程序主要组件:
- Servlet
- 过滤器
- 监听器
- JSP

chapter2:各类web容器介绍
略
chapter3:Servlet介绍
Servlet是一个运行在Web服务器中的Java小程序,Servlet将会接受和响应来自Web客户端的请求,使用HTTP(超文本传输协议)进行通信;

public class HelloServlet extends HttpServlet{
@Override
public void init() throws ServletException {
System.out.println(getServletName()+"初始化!");
super.init();
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println(getServletName()+"doGet方法");
resp.getWriter().println(getServletName()+":Hello,World!");
}
private void destroy() {
System.out.println(getServletName()+"销毁!");
super.destroy();
}
}
web.xml:
<servlet>
<servlet-name>helloServlet</servlet-name>
<servlet-class>com.mryangpo.HelloServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>helloServlet</servlet-name>
<url-pattern>/greeting</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>helloServlet1</servlet-name>
<servlet-class>com.mryangpo.HelloServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>helloServlet1</servlet-name>
<url-pattern>/greeting1</url-pattern>
</servlet-mapping>
<load-on-startup>1</load-on-startup>表示web容器在应用程序启动的时候就加载Servlet(实例化并调用其init()方法);

关闭服务时会调用destroy方法,在doGet会service方法中调用destroy方法,访问一次servlet后仍可以继续访问;

servlet执行过程:初始化一次,进入service方法中获取method类型,根据类型进入doGet或其他方法,服务器关闭,调用destroy方法。
了解doGet,doPost等方法:
getRequestURL
getRequestURI
使用初始化参数配置应用程序:
上下文初始化参数:
<context-param>
<param-name>settingone</param-name>
<param-value>one</param-value>
</context-param> 在Servlet类中获取上下文:
ServletContext servletContext = this.getServletContext();
String param1=servletContext.getInitParameter("settingone")
servlet初始化参数:
<servlet>
<servlet-name>helloServlet1</servlet-name>
<servlet-class>com.mryangpo.HelloServlet</servlet-class>
<init-param>
<param-name>settingtwo</param-name>
<param-value>two</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>helloServlet1</servlet-name>
<url-pattern>/greeting1</url-pattern>
</servlet-mapping>
在Servlet类中获取初始化参数:
ServletConfig servletConfig = this.getServletConfig();
String settingtwo=servletConfig.getInitParameter("settingtwo");
chapter4 JSP(JavaServer Pages) 的使用

jsp编译时机:


<!-- Html/xml注释 -->
<%-- jsp注释 -->
chapter5 会话的使用
略
chapter12 Spring Framework

java web高级编程 笔记1的更多相关文章
- Java Web高级编程(四)
WebSocket 一.WebSocket的产生 用户希望Web页面可以进行交互,用于解决这个问题的技术是JavaScript,现在Web上有许多的可用的JavaScript框架,在使用极少的Java ...
- Java Web高级编程(三)
使用过滤器改进应用程序 一.过滤器的目的 过滤器是可以拦截访问资源的请求.资源的响应或者同时拦截两者的应用组件.过滤器可以检测和修改请求和响应,同时也可以拒绝.重定向或转发请求.javax.servl ...
- Java Web高级编程(二)
使用会话维持状态 一.会话 为了实现关联同一个用户端的多个请求和这些请求之间数据的共享,需要用到会话,会话用于维持请求和请求之间的状态.从服务器的角度,当用户的Web浏览器打开第一个链接到服务器的套接 ...
- Java Web高级编程(一)
Servlet 一.创建Servlet类 在Java EE中,Servlet用来接收和响应终端用户的请求.Servlet是所有Web应用程序的核心类,是唯一既可以直接处理和响应用户请求,也可以将处理工 ...
- Android高级编程笔记(四)深入探讨Activity(转)
在应用程序中至少包含一个用来处理应用程序的主UI功能的主界面屏幕.这个主界面一般由多个Fragment组成,并由一组次要Activity支持.要在屏幕之间切换,就必须要启动一个新的Activity.一 ...
- java高级编程笔记(四)
java的Object类: 1.Object 类位于 java.lang 包中,编译时会自动导入:Java 的所有类都继承了 Object,子类可以使用 Object 的所有方法. 2.Object ...
- javascript高级编程笔记01(基本概念)
1.在html中使用JavaScript 1. <script> 元素 <script>定义了下列6个属性: async:可选,异步下载外部脚本文件. charset:可选, ...
- UNIX环境高级编程笔记之文件I/O
一.总结 在写之前,先唠几句,<UNIX环境高级编程>,简称APUE,这本书简直是本神书,像我这种小白,基本上每看完一章都是“哇”这种很吃惊的表情.其实大概三年前,那会大三,我就买了这本书 ...
- C#高级编程笔记之第三章:对象和类型
类和结构的区别 类成员 匿名类型 结构 弱引用 部分类 Object类,其他类都从该类派生而来 扩展方法 3.2 类和结构 类与结构的区别是它们在内存中的存储方式.访问方式(类似存储在堆上的引用类型, ...
随机推荐
- thinkphp中配置信息的二维数组设置与使用
有时候配置信息是二维数组 1.配置 <?php return array ( // 阿里大鱼短信配置 'dayu_appkey'=>'xxx', 'dayu_secretKey'=> ...
- linux输入子系统之按键驱动
上一节中,我们讲解了Linux input子系统的框架,到内核源码里详细分析了输入子系统的分离分层的框架等. 上一节文章链接:http://blog.csdn.net/lwj103862095/ar ...
- c语言活动记录-图解(一)
来源: 1.<代码揭秘>第六章函数与函数调用 2.http://blog.csdn.net/zhuliting/article/details/6839233 引入话题: 局部变量是动态分 ...
- php命令执行
php命令执行通过函来执行外部应用程序,函数有shell_exec(),exec(),system(),passthru() <?php $i = $_GET['cmd']; echo exec ...
- 软件部需求,内容采集,显示内容图文列表,MongoDB数据导入导出JSON
全局变量 由于多个html页面,需要引用同一个变量.这个时候,需要定义一个全局变量!如何定义呢? 默认包含了mui的html文件都导入mui.js文件.那么将变量写在mui.js中,就可以实现所有页面 ...
- Valid timeZone Values(转)
https://www.vmware.com/support/developer/vc-sdk/visdk400pubs/ReferenceGuide/timezone.html Valid time ...
- 使用Statement接口实现增,删,改操作(工作中不常用这个,而用PreparedStatement接口)
一.Statement接口 作用:用于执行静态 SQL 语句并返回它所生成结果的对象. 1. 创建数据库连接类及相册实体,代码如下: package com.learn.jdbc.util; impo ...
- Android开发笔记 TableLayout常用的属性介绍
今天看了安卓简单控件的布局方式,大概有绝对.相对.表格.线性.帧式布局五种方式,表格布局里面的一些属性相对来说比较复杂,下面主要谈谈表格方式布局的一些属性 TableLayout经常用到的属性有: ...
- Apache Shiro 权限框架
分享一个视屏教程集合 http://www.tudou.com/home/konghao/item 1.Shiro Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码 ...
- PHP数据结构之三 线性表中的单链表的PHP实现
线性表的链式存储:用一组任意的存储单元存储线性表中的数据元素.用这种方法存储的线性表简称线性链表. 链式存储线性表的特点:存储链表中结点的一组任意的存储单元可以是连续的,也可以是不连续的,甚至是零散分 ...