读《轻量级JavaEE企业应用实战(第三版)》笔记(二)

今天又是这个点看完今天的任务,今天主要看了第二章:JSP/servlet及相关技术详解

可以说从现在开始进入了JavaEE开发的重要内容,jsp和servlet是JavaEE规范的两个基本成员,他们也是java web开发的重点知识,也是Java EE开发的基础知识,因此掌握他们刻不容缓。

首先是jsp的基本原理,jsp其实本质上就是servlet,jsp文件必须在jsp服务器内运行,jsp文件必须生成servlet才能执行,每个jsp页面的第一个访问者速度很慢,因为必须要等待jsp编译成servlet。但是为什么不直接使用servlet呢?这是因为servlet的开发效率非常低,特别是当使用servlet生成表现层页面时;而且servlet是标准的java类,这就必须由程序员开发、修改,美工人员难以参与servlet页面的开发。jsp就是简化的servlet,替代servlet在表现层的作用。但是在MVC规范出现后,jsp就只作为表现层技术,其作用有两点:负责收集用户请求参数;将应用的处理结果、状态数据呈现给用户。而servlet也仅作为控制器使用,作用类似于调度员:所有的用户请求都发给servlet,servlet调用Model来处理用户请求,并调用JSP来呈现处理结果。

jsp和servlet的主要区别是:servlet中没有内置对象;对于静态的html标签,servlet都必须用页面输出流来逐行输出。

创建servlet实例的两个时机:1.客户端第一次请求某个servlet时,系统创建该servlet的实例,大部分的servlet实例都是这样的;2.web应用启动时立即创建servlet实例,即load-on-startup servlet,这种方式通常是用于某些后台服务的servlet,或者需要拦截很多请求的servlet;

每个servlet的运行都遵循如下的生命周期:

1.创建servlet实例;

2.web容器调用servlet的init方法,对servlet进行初始化;

3.servlet初始化后就一直存在于容器中,用于相应客户端请求;

4.web容器决定销毁servlet是,先调用servlet的destroy方法,通常在关闭web应用时销毁servlet。

下面就是些jsp的语法知识:

(1)jsp基础语法格式:

1.注释:有两种一种是常用的html注释方法<!-- --> 这种注释浏览页面查看源代码时,可以看到;还有一种是jsp注释<%--  注释内容 --%>,这种注释不会发送到客户端因此查看源码也看不到;

2.jsp声明: <%! 声明部分 %>这种形式很像java类中的声明,可以使用修饰符,但是不能使用abstract修饰

3.jsp表达式:<%=表达式 %>可以输出变量和方法的返回值;

4.jsp脚本: <% java 代码%> 记得java代码块要与html分离开来,尤其是尖括号的位置要弄正确。

(2)jsp的3个编译指令:

1.page :<%@ page language="java"; contentType="text/html"; charset="utf-8";import="java.lang.object";info="这里可以设置说明信息,在页面中使用<%=getServletInfo()%>来获取值";errorPage="指向提示错误信息的页面,与错误界面中的isErroPage="true'遥呼相应"%>:

2.include:<%@ include file="要导入的文件"%>此种为静态导入,加载页面时,就已经开始导入

3.taglib:用于定义和访问自定义的标签,如jstl<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

(3)jsp的7个动作标记:用来进行于网页加载、转向甚至引用外部组件等相关操作。

1、forward:请求转发,都是一次请求,地址栏中的地址不变

<jsp:forward page="forwardto.jsp">

     <jsp:param name="name" value="value"/>

</jsp:forward>

增加的请求参数的值可以通过HttpServletRequest类的getParameter()来获得;

2、include:请求时载入,是动态的载入和<%@ include file="要导入的文件"%>静态载入要区别;

     <jsp:include page="要载入的文件">

3、plugin:主要用于下载服务器端的javaBean或Applet到客户端执行。不常用,不太晓得

4、userBean:<jsp:userBean id="对象实例名称"  class="类名" scope="page/request/session/application">

5、getProperty:<jsp:getProperty name="对象实例名称" property=“类中的一个属性” >

6、setProperty:<jsp:setProperty name="对象实例名称" property="类中的一个属性" value="设定的属性值">

7、param:只能和其他的动作标记一起使用 < param name="name" value="value">

(4)jsp的9大内置对象:

1.request

2.response

3.out

4.page

5.session

6.application

7.exception

8.config

9.pagecontext

内容简介 《轻量级java ee企业应用实战(第3版)—struts 2+spring 3+hibernate整合开发》是《轻量级java ee企业应用实战》的第3版,第3版保持了第2版内容全面、深入的特点,主要完成全部知识的升级。 《轻量级java ee企业应用实战(第3版)—struts 2+spring 3+hibernate整合开发》介绍了java ee领域的三个开源框架:struts 2、spring和hibernate。其中struts 2升级到2.2.1,spring升级到3.0.5,hibernate升级到了3.6.0。本书还全面介绍了servlet 3.0的新特性,以及tomcat 7.0的配置和用法,本书的示例应该在tomcat 7.0上运行。 《轻量级java ee企业应用实战(第3版)—struts 2+spring 3+hibernate整合开发》重点介绍如何整合struts 2.2+spring 3.0+hibernate 3.6进行java ee开发,主要包括三部分。第一部分介绍java ee开发的基础知识,以及如何搭建开发环境。第部分详细讲解struts 2.2、spring 3.0和hibernate 3.6三个框架的用法,介绍三个框架时,从eclipse ide的使用来上手,一步步带领者深入三个框架的核心。这部分内容是笔者讲授“疯狂java实训”的培训讲义,因此是本书的重点部分,既包含了笔者多年开发经历的领悟,也融入了丰富的授课经验。第三部分示范开发了一个包含7个表、表之间具有复杂的关联映射、继承映射等关系,且业务也相对复杂的工作流案例,希望让者理论联系实际,将三个框架真正运用到实际开发中去,该案例采用目前最流行、最规范的java ee架构,整个应用分为领域对象层、dao层、业务逻辑层、mvc层和视图层,各层之间分层清晰,层与层之间以松耦合的方法组织在一起。该案例既提供了ide无关的、基于ant管理的项目源码,也提供了基于eclipse ide的项目源码,最大限度地满足者的需求。阅本书之前,建议先认真阅笔者所著的《疯狂java讲义》一书。本书适合于有较好的java编程基础,或有初步jsp、servlet基础的者。尤其适合于对struts 2、spring、hibernate了解不够深入,或对struts 2+spring+hibernate整合开发不太熟悉的开发人员阅
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值