<@ page language="java" import="java.util.*" pageEncoding="GBK">
Java有几个内置对象
9个,
pageContext
request javax.servlet.httpServletRequest interface
response javax.servlet.httpServletResponse
session javax.servlet.http.HttpSession
application javaxlservlet.ServletContext -this.getServletContext();
config javax.servlet.ServletConfig
exception java.lang.Throwable
page java.lang.Object
out javax.servlet.jsp.JspWriter
作用:
1.pageContext 表示页容器-> EL,标签,上传
2.request 服务器端取得客户端的信息:头信息,Cookie,请求参数
3.response 服务器端回应给客户端信息,cookie, 重定向
4.session 表示一个用户,用于登录验证上
5.application 表示整个服务器,getRealPath()
6.config 取得初始化参数,在web.xml中配置
7.exception 表示的是错误页的处理操作。
8.page 如同this.,表示整个jsp页面
9.out 输出,但尽量使用表达式输出
二..jsp有哪些动作,分别是?
<jsp:include>饱含
<jsp:forword>
<jsp:userBean>
<jsp.setProperty>设置属性,通过反射调用方法
<jsp:getProperty>
<jsp:plugin>插入applet程序的代码
三,jsp动态Include与静态Include的区别
动态incude:<jsp:include>,如果包含动态页,则编译后饱含
静态include<%include@%>,直接将内容包含后处理
四:两种跳转方式区别?
*服务器端跳转<jsp:forword>跳转后地址栏不跳转 request.dispatcher接口的封装
*客户端跳转 response.sendRedirect();跳转后地址栏改变
五:会话跟踪
1.seesion,也是常用的一种
2.Cookie,
3.地址重写
4.隐藏域
六.
<,>,",&apos,&,
七。说明jsp中erropage的作用
表示错误的操作,在一般的站点中只要出现一个程序的错误,就是产生了异常,则可以统一跳转到一个页面上,那么这种曹错属于错误页的处理,但是,简单的错误也基本上都是在Jsp的开发中使用的
1.在错误能够处理的页面page指令中增加 isErroPage="true",表示错误可以处理
2.在每个页面指定erroPage,指令isErroPage为true
八,写一段Oracle的JDBC连接
步骤: 定义一系列的全局常量:驱动路径,连接地址,用户名,密码
2.加载驱动程序
3.连接数据库
4.操作数组局
5.关闭数据库
<%@ page import="java.sql.*"%>
<%
public static final String DBDRIVER="oracle.jdbc.driver.OracleDriver";
pulbic static final String DBURL="jdbc:oracle:thin@localhost:1521:MLDN";
public static final String DBUSER="scott";
public static final String DBPASSWORD="tiger";
%><%
Connetcion con = null;
PreparedStatement = pstml = null;
ResultSet rs = null;
String sql = "SELECT empno,ename,job From emp";
%><%
Class.forName(DBDRIVER);
conn = DriverManager.getConnetion(DBURL,DBUSER,DBPASSWORD);
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()){
int empno = rs.getInt(1);
String ename =rs.getString(2);
String job = rs.getString(3);
}
rs.close();
pstmt.close();
conn.close();
%>
九.简述jsp中是如何实现分页操作的
1.首先一定要确定的是分页有2中:
*真分页:性能较高,是基于数据库的操作,只是从数据库中取出部分的数据的数据进行显示
*假分页:性能较低,是将全部的结果查询出来,之后依靠算法分页,只显示部分数据
实现原理:
定义一系列的变量:currentPage.listSize,并通过计算求出allRecorders和计算出pageSize
pageSize = (allRecorde+ lineSize-1)/lineSize
之后数据库查询中根据lineSize和currentpage进行数据的查询
Oracle中使用ROWNUM,mysql使用limit();
之后通过表单不断的修改currentPage,lineSize就可以实现分页显示
十,如何在jsp中使用javaBean,
必须有包,public class 声明,属性封装,无参构造,seter,getter
import语句导入或者<jsp:userBean>
十一,servlet声明周期
1.初始化,正常一次 init()方法,有2个init方法,其中一个是ServletConfig对象,存在不调用,
使用servlet的时候才初始化操作,也可以通过配置文件启动的时候自动进行初始化
2.服务:多次 ,由servrices()分配, 有 doGet()和doPost()方法
3.销毁,正常一次 ,destroy() 方法,,长时间不用也会自动销毁
十二,Servlet中forword和redirect()的区别
forword()方法是RequestDispatcher接口定义的,而redirect是response定义的,一个是服务器跳转,另一个是客户端跳转
十三.MVC各部分有那些技术是些,如何实现?
Model,View,Controller.
Model:JavaBean;业务处理,数据处理
View:显示的jsp,最好不存在任何的Scriplet,可以使用标签消除
Contorler控制,接收View传递的内容和调用JavaBean,并根据javaBean的处理结果进行跳转
实现原理:所有jsp将内容提交给servlet,Servlet接受这些内容调用相应的javaBean进行数据及业务的处理,一般Javabean有专人负责开发,完成业务的操作流程,而Servlet调用的只是接口,并根据这些接口的操作结果内容交给jsp进行显示,但在显示的时候尽可能是哦出先Scriplet代码。
十四,国际化的实现思路
Local,属性文件,ResourceBundle,
,是根据本机的操作系统的语言基础,选择不同的属性文件,所有程序的基本代码一样,但是文字显示不一样,所以将内容作为属性文件出现后,可以显示属性文件的文字
十五。表述jsp和servlet的区别,共同点
先有servlet,再有jsp,servlet是在java中嵌入html代码,而jsp是在html中嵌入java代码
共同点:jsp可以完整的显示,servlet都可以完成,但是对于过滤器,监听器只能由servlet完成
应用范围jsp用于显示,servlet用于控制
应用范围:jsp用于显示,Servlet用于控制
十六,简述web.xml作用
属于部署描述符,在整个 java中只要是容器都会存在部署描述符,此部署描述符可以控制整个web各个组件的运行状态,也可以配置整个容器的状体,<erro-page><welcome-file-list>,<servlet><session-timeout><filter><listener>