chapter1:了解web应用程序

 web应用程序主要组件:

  1. Servlet
  2. 过滤器
  3. 监听器
  4. 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的更多相关文章

  1. Java Web高级编程(四)

    WebSocket 一.WebSocket的产生 用户希望Web页面可以进行交互,用于解决这个问题的技术是JavaScript,现在Web上有许多的可用的JavaScript框架,在使用极少的Java ...

  2. Java Web高级编程(三)

    使用过滤器改进应用程序 一.过滤器的目的 过滤器是可以拦截访问资源的请求.资源的响应或者同时拦截两者的应用组件.过滤器可以检测和修改请求和响应,同时也可以拒绝.重定向或转发请求.javax.servl ...

  3. Java Web高级编程(二)

    使用会话维持状态 一.会话 为了实现关联同一个用户端的多个请求和这些请求之间数据的共享,需要用到会话,会话用于维持请求和请求之间的状态.从服务器的角度,当用户的Web浏览器打开第一个链接到服务器的套接 ...

  4. Java Web高级编程(一)

    Servlet 一.创建Servlet类 在Java EE中,Servlet用来接收和响应终端用户的请求.Servlet是所有Web应用程序的核心类,是唯一既可以直接处理和响应用户请求,也可以将处理工 ...

  5. Android高级编程笔记(四)深入探讨Activity(转)

    在应用程序中至少包含一个用来处理应用程序的主UI功能的主界面屏幕.这个主界面一般由多个Fragment组成,并由一组次要Activity支持.要在屏幕之间切换,就必须要启动一个新的Activity.一 ...

  6. java高级编程笔记(四)

    java的Object类: 1.Object 类位于 java.lang 包中,编译时会自动导入:Java 的所有类都继承了 Object,子类可以使用 Object 的所有方法. 2.Object ...

  7. javascript高级编程笔记01(基本概念)

    1.在html中使用JavaScript 1.  <script> 元素 <script>定义了下列6个属性: async:可选,异步下载外部脚本文件. charset:可选, ...

  8. UNIX环境高级编程笔记之文件I/O

    一.总结 在写之前,先唠几句,<UNIX环境高级编程>,简称APUE,这本书简直是本神书,像我这种小白,基本上每看完一章都是“哇”这种很吃惊的表情.其实大概三年前,那会大三,我就买了这本书 ...

  9. C#高级编程笔记之第三章:对象和类型

    类和结构的区别 类成员 匿名类型 结构 弱引用 部分类 Object类,其他类都从该类派生而来 扩展方法 3.2 类和结构 类与结构的区别是它们在内存中的存储方式.访问方式(类似存储在堆上的引用类型, ...

随机推荐

  1. mysql设计与开发

    架构设计表结构设计索引sql语句1.表结构设计的核心思想是什么?容量评估,性能优化,硬件升级,垂直拆分,水平拆分 2.有个大表为了一个查询(一天就查2次),领导要你建索引(索引空间大小有500G),你 ...

  2. C#简单操作app.config文件

    即将操作的app.config文件内容如下 <?xml version="1.0" encoding="utf-8"?> <configura ...

  3. iOS平台下闪退原因汇总(一):"Ran out of trampolines of type 0/1/2" 运行时间错误

    "Ran out of trampolines of type 0/1/2" 运行时间错误通常出现在使用大量递归泛型时.要看到这个错误需要连接着设备直接将项目build到设备里运行 ...

  4. web deploy 部署网站

    一.服务端配置 1. 确保在服务器端(我目前是win server 2012 R2)安装管理服务 安装后服务器会重启, 2)安装webdeploy http://www.iis.net/downloa ...

  5. SQL SERVER常用的统计用法

    --查询各个状态下总数SET statistics time on Go SELECT END ) AS Q1, END ) AS Q2, END ) AS Q3, END ) AS Q4, END ...

  6. List批量赋值的几种方法

    List<int> list = new List<int>();list.AddRange(new int[] { 1, 5, 10, 20 ,33 }); //也可直接赋值 ...

  7. angularjs 简易模态框

    angularjs 简易模态框 angularjs 中的模态框一般使用插件angular-ui-bootstrap书写. 这里记录一种简易的模态框写法: 1.警告消息框alert: 原理: 在html ...

  8. C#统计网站访问总人数和当前在线人数 Application

    一.打开vitualstudio2010,新建一个网站,然后添加新项,新建一个login.aspx和index.aspx页面.再添加新项,选择全局应用程序类,该页面为Global.asax. 第一步: ...

  9. 【原】Coursera—Andrew Ng斯坦福机器学习(0)——课程地址和软件下载

    斯坦福大学机器学习 课程信息 机器学习是一门研究在非特定编程条件下让计算机采取行动的学科.最近二十年,机器学习为我们带来了自动驾驶汽车.实用的语音识别.高效的网络搜索,让我们对人类基因的解读能力大大提 ...

  10. std::mutex与pthread mutex区别

    Linux下 pthread mutex * PTHREAD_MUTEX_TIMED_NP,这是缺省值,也就是普通锁.当一个线程加锁以后,其余请求锁的线程将形成一个等待队列,并在解锁后按优先级获得锁. ...