首页 > 编程语言 >java中级考试

java中级考试

时间:2022-11-23 19:45:16浏览次数:39  
标签:中级 java 对象 request JSP 客户端 属性 考试 页面

选择 20 20分

判断10 10分

解答5 5分

程序 页面+综合45分

 

2Css选择器

CSS规则由三部分构成:选择符,属性和属性值

   选择符 {属性:属性值; 属性:属性值; ... }

CSS选择器常用的是标记选择器、类选择器、ID选择器等。

 

标记选择器: HTML页面是由很多标记组成,例如图片标记<img>、超链接标记<a>、表格标记<table>等。而CSS的标记选择器就是声明页面中哪些标记采用哪些CSS样式。

class 选择器在HTML中以class属性表示,以一个点"."号显示

ID选择器在HTML中以id属性表示,以“#"号显示

 

p{ }: 为所有 p 元素指定一个样式

.marked{ }: 为所有 class="marked" 的元素指定一个样式

.marked p{ }: 为所有 class="marked" 元素内的 p 元素指定一个样式

p.marked{ }: 为所有 class="marked" 的 p 元素指定一个样式

 

在页面中插入样式表有三种方式:

行内样式(内联样式)

内嵌式(内部样式)

链接式(外部样式)

第3章JavaScript脚本语言

JavaScript是一种基于对象和事件驱动并具有安全性能的解释型脚本语言

JavaScript是一种客户端脚本语言

 

JavaScript能干什么

1.对表单数据进行验证(如必填项是否为空,邮箱格式验证)

2.操作HTML文档(如读取文档内容,动态写入文本)

3.对客户端事件进行响应(单击鼠标按钮,页面载入完成)

4.控制浏览器窗口(如打开新窗口,调整窗口大小等)

5.创建和读取Cookies(存储和取回位于访问者的计算机中的信息)

6.实现网页特效,提供更好的用户体验

 

JavaScript 代码例子:

<body>

    <form action="" name="myform">

      用户名:<input name="username" type="text" id="username"><br>

      密码: <input name="pwd1" type="password" id="pwd1"><br>

      确认密码: <input name="pwd2" type="password" id="pwd2"><br>

      <input name="Submit" type="button" onClick="check()" value="确定保存">

      <input name="Reset" type="reset"  id="Reset" value="重新填写">

    </form>

</body>

 

<head>

    <title>表单</title>

    <script language="javascript">

      function check() {

        if (myform.username.value == "") { //判断用户名是否为空

          alert("请输入用户名!");

          myform.username.focus();

          return;

        } else if (myform.pwd1.value == "") { //判断密码是否为空

          alert("请输入密码!");

          myform.pwd1.focus();

          return;

        } else if (myform.pwd2.value != myform.pwd1.value) { //判断密码是否一致

          alert("密码不一致!");

          myform.pwd1.focus();

          return;

        } else {

          myform.submit(); //提交表单

        }

      }

    </script>

  </head>

 

 

 

 

 

 

事    件

何 时 触 发

onabort

对象载入被中断时触发

onblur

元素或窗口本身失去焦点时触发

onchange

改变<select>元素中的选项或其他表单元素失去焦点,

并且在其获取焦点后内容发生过改变时触发

onclick

单击鼠标左键时触发。当光标的焦点在按钮上,并按下回车键时,也会触发该事件

ondblclick

双击鼠标左键时触发

onerror

出现错误时触发

onfocus

任何元素或窗口本身获得焦点时触发

onkeydown

键盘上的按键(包括Shift或Alt等键)被按下时触发,如果一直按着某键,则会不断触发。

当返回false时,取消默认动作

onkeypress

键盘上的按键被按下,并产生一个字符时发生。也就是说,当按下Shift或Alt等键时不触发。

如果一直按下某键时,会不断触发。当返回false时,取消默认动作

 

window.onload加载事件在页面内容加载完成之后立即执行相应的函数

 

JavaScript与window对象的差别

JavaScript是一种基于对象的语言

可以应用自己创建的对象,很多功能来自于脚本环境中对象的方法与脚本的互相作用

Window对象

Window对象即浏览器窗口对象,是一个全局对象,是所有对象的顶级对象。Window对象提供了许多属性和方法,这些属性和方法被用来操作浏览器页面的内容。Window对象同Math对象一样,也不需要使用new关键字创建对象实例,而是直接使用“对象名.成员”的格式来访问其属性或方法

 

DOM的分层结构

html标签通过浏览器的解析后会形成DOM树,HTML中的每个标签元素,属性,文本都能看做是一个DOM的节点,JavaScript都能通过dom的提供的编程接口操作到每个节点

结点的类型:元素(Element),属性(Attribute),文本(Text)

DOM树的结构:子结点,父结点,兄弟结点,后代,祖先

<html>

<head>

    <title>一个HTML文档</title>

</head>

<body>

    欢迎访问明日科技网站!

    <br>

    <a href="http://wwww.mingribook.com">

         http://wwww.mingribook.com</a>

</body>

</html>

 

 

获取节点:

document.getElementById(idName); //通过id号来获取元素,返回一个元素对象

 

 

当JSP页面的运行原理

服务器上的一个JSP页面被第一次请求执行时,服务器上的JSP引擎首先将JSP页面文件转译成一个java文件,并编译这个java文件生成字节码文件,然后执行字节码文件响应客户的请求

把JSP页面中的HTML标记符号(页面的静态部分)交给客户的浏览器负责显示

处理JSP标记,并将有关的处理结果发送到客户的浏览器

执行“<%”和“%>”之间的java程序片(JSP页面中的动态部分),并把执行结果交给客户的浏览器显示

当多个客户请求一个JSP页面时,Tomcat服务器为每个客户启动一个线程,该线程负责执行常驻内存的字节码文件来响应相应客户的请求

<%@ page ... %>

定义网页依赖属性,比如脚本语言、error页面、缓存需求等等

 

page有15个属性,包括contentType、import、language、session、buffer、auotFlush 、isThreadSafe、pageEncoding 等

 

contentType属性:

确定JSP页面响应的MIME(Multipurpose Internet Mail Extention)类型和JSP页面字符的编码

例如: <%@ page contentType="text/html;charset=GB2312" %>

               <%@ page contentType="application/msword" %>

不允许两次使用page 指令给contentType属性指定不同的属性值

charset:设置服务器发送给客户端时的内容的编码

 

<jsp:action_name attribute="value" />

<jsp:forward ... >

把请求转到另外的页面

<jsp:useBean... >

动作用来加载一个将在JSP页面中使用的JavaBean

 

 

 

 

 

<jsp:forward>动作

把请求转到另外的页面

格式

                     <jsp:forward page="相对 URL 地址" />

 或                 <jsp:forward page="URL" >

                      <jsp:param>子标识

                     </jsp:forward>

停止当前页面的继续执行,而转向执行page属性指定的JSP页面

子动作标识,用于向被包含的动态页面中传递参数

<jsp:useBean>动作

创建并使用一个JavaBean

用HTML完成JSP页面的静态部分,用Javabean完成动态部分,实现真正意义上的静态和动态分离

格式

      <jsp:useBean id="bean的名字" class="创建bean的类" scope="bean的有效范围"/>

 

 

JSP内置对象

Request对象:

访问请求参数

request对象用于处理HTTP请求中的各项参数。在这些参数中,最常用的就是获取访问请求参数。

格式: request.getParameter(“parameterName”)

用表单和超链接传递参数的时候,使用getParameter方法可以返回给定参数的值,如果参数不存在则返回空值

 

Get和post

 

<form action="6.2_4_jump.jsp" method="post" name="form">

       1.你曾经学习过那种语言:<br>

       <input type="checkbox" name="item" value="C语言" >C语言</input>

       <input type="checkbox" name="item" value="C++" >C++</input>

       <input type="checkbox" name="item" value="Java" >Java</input>

       <input type="checkbox" name="item" value="JSP" >JSP</input><br>

       2.你最喜欢那种编程语言:<br>

       <input type="radio" name="R" value="C语言">C语言 </input>

       <input type="radio" name="R" value="C++">C++ </input>

       <input type="radio" name="R" value="Java">Java </input>

       <input type="radio" name="R" value="JSP" checked>JSP </input><br>

      3.未来最想从事的领域:<br>

      <select name="career" >

          <option value="人工智能">人工智能</option>

                <option value="Web应用开发">Web应用开发</option>

          <option value="移动端开发">移动端开发</option>

          <option value="大数据处理">大数据处理</option>

          <option value="游戏开发">游戏开发</option>

      </select> <br>

        <input TYPE="submit" value="提交" name="submit"></input>

        <input TYPE="reset" value="重置"></input>

</form> 

在作用域中管理属性

在进行请求转发时(<jsp:forward/>),需要把一些数据传递到转发后的页面进行处理

在转发过程中,可以通过request对象的setAttribute()方法将数据保存到request范围内的变量中

setAttribute()方法的格式如下:

request.setAttribute(String name, Object object);

之后在转发后页面中,可以通过request对象的getAttribute()方法获取该变量的值

getAttribute()方法的格式如下:

request.getAttribute(String name);

 

request.getParameter()  vs. request.getAttribute()

request.getParameter()没有对应的request.setParameter()方法

request.getParameter() 方法用于获取客户端的参数;request.getAttribute()方法用于在Web容器内部传递参数

request.getParameter() 方法返回String型数据;request.getAttribute()返回Object类型的数据

request.getParameter() 方法主要应用于页面的链接关系;request.getAttribute()方法应用于页面的转发关系

 

重定向网页

使用response对象提供的sendRedirect()方法可以将网页重定向到另一个页面

重定向操作支持将地址重定向到不同的主机上,这一点与转发不同

在客户端浏览器上将会得到跳转的地址,并重新发送请求链接

用户可以从浏览器的地址栏中看到跳转后的地址

进行重定向操作后,request中的属性全部失效,并且开始一个新的request对象

sendRedirect()方法的语法格式如下:

response.sendRedirect(String path);

 

session的工作原理

客户首次访问服务器的一个页面时,服务器就会为该客户分配一个session对象,同时为该session对象指定一个唯一的ID,并将该ID号发送到客户端并写入到Cookie中,使得客户端与服务器的session建立一一对应关系。

当客户继续访问服务上的其他资源时,不再为该客户分配新的session,直到客户端浏览器关闭、超时或调用session的invalidate()方法使其失效,客户端与服务器的会话结束。

当客户端重新打开浏览器访问网站时,服务器会重新为客户分配一个session对象,重新分配session id。

常见功能: 保存用户的登录信息,购物车等

 

Javabeen的产生和概念

 

结构

 

 

在JSP页面中应用JavaBean

第1步:在 JSP页面中通过import指令引入bean

格式:<%@ page import="com.lesson7.bean.*"%>

第2步:通过useBean标记来创建bean对象

格式:

<jsp:useBean id=”bean_name” class=”创建bean的类” scope=”bean的有效范围“>

 </jsp:useBean>

其中:

1.创建bean的类要带有完整的包名,如com.lesson7.bean.*

  1. scope表示bean的取值范围,可取page,session,request和application,代表不同的作用范围

当JavaBean的范围设为page时,表示这个JavaBean的生命周期只在一个页面内有效

当JavaBean的范围设为request时,这个Bean在整个请求的范围内都有效

当JavaBean的范围设为session时,表示Bean可以在当前HTTP会话的生命周期内被所有页面访问

设为application范围内的Bean生命周期是最长的,从创建了这个Bean开始,就可以在任何使用相同application的JSP文件中使用这个Bean

 

 

第3步,在jsp页面中,可以通过直接调用bean的方法来获取和修改bean的属性值,还可以通过jsp动作标记来获取和修改bean的属性

直接调用bean的方法:

格式:circle.getRadius() /circle.setRadius(1000)

动作标签方法:

格式:<jsp:getProperty>/<jsp:setProperty>

 

 

package com.Lesson8.MyServlet;

import java.io.*;

import javax.servlet.*;

import javax.servlet.http.*;

public class Hello extends HttpServlet {

   // 初始化方法

public void init() throws ServletException {

}

// 处理HTTP Get请求

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html;charset=GB2312");// 设置响应的MIME类型

PrintWriter out = response.getWriter();// 获得一个向客户发送数据的输出流

out.println("<html><body>");

out.println("<h2>这是我的第一个servlet。</h2>");

out.println("</body></html>");

}

// 处理HTTP Post请求

public void doPost(HttpServletRequest request, HttpServletResponse response)

  throws ServletException, IOException {

}

 

Servlet重定向与转发

重定向

HttpServletResponse类中通过方法void sendRedirect(java.lang.String location) 可实现页面的跳转

格式:response.sendRedirect (“xxx.jsp”);

该方法跳转后的页面,不能获得之前页面用户提交的数据

转发

RequestDispatcher对象可以把用户对当前的JSP页面或servlet的请求转发给另一个JSP页面或servlet,并且将请求对象和相应对象传递给目标页面

格式:

第一步:得到RequestDispatcher对象:

    RequestDispatcher  rd = request.getRequestDispatcher(“xxx.jsp”);

第二步:转发: rd.forward( request, response);

 

什么是Servlet过滤器

用户请求在到达目标资源之前,我们可以设置“层层障碍”,对这个请求进行过滤处理。

关键词:可多个(层层)、过滤功能(障碍)

可以拦截请求和响应,查看、提取或者以某种方式操作正在客户端和服务器之间进行交换的数据

 

Servlet监听器简介

监听事件源,根据事件源上发生事件,做出相应的处理。

三元素:

事件源:发生事件的源头,监听器需要监听的对象。

事件:事件源上发生的动作,监听器监听的内容。

监听器:负责监听事件源的对象。

 

// 加载数据库驱动,注册到驱动管理器

Class.forName("com.mysql.cj.jdbc.Driver");

// 数据库连接字符串

String url = "jdbc:mysql://localhost:3306/test";

// 数据库用户名

String username = "root";

// 数据库密码

String password = “123456";

// 创建Connection连接

Connection conn = DriverManager.getConnection(url,username,password);

// 判断 数据库连接是否为空

if(conn != null){

// 输出连接信息

out.println("数据库连接成功!");

// 关闭数据库连接

conn.close();

}else{

// 输出连接信息

out.println("数据库连接失败!");

}

数据库集中在编程上

 

 

AJAX简介

AJAX(Asynchronous JavaScript and XML,异步JavaScript 和 XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

同步:客户端提交请求à等待服务器处理à处理完毕返回(期间客户端浏览器不能做其他的事)

异步:客户端提交请求(通过事件触发)à服务器处理(期间客户端可以做其他事情)à处理完毕

 

AJAX基于因特网标准,并使用以下技术组合:

XMLHttpRequest 对象(与服务器异步交互数据)

JavaScript/DOM(显示/取回信息)

CSS(设置数据的样式)

XML(常用作数据传输的格式)

jQuery选择器的优点:

简洁的写法

$("#id")     // document.getElementById("id");

$("tagName") //document.getElementByTagName(" tagName ");

完善的事件处理机制

if(document.getElementById("id"))

document.getElementById("id").style.color="red";

$("#id").css("color", "red");

标签:中级,java,对象,request,JSP,客户端,属性,考试,页面
From: https://www.cnblogs.com/lifegone/p/16919559.html

相关文章

  • Java工具库Guava的数学运算常用方法示例代码
    场景Java核心工具库Guava介绍以及Optional和Preconditions使用进行非空和数据校验:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/127683387为什么使用Gu......
  • 如何通过Java 合并和取消合并 Excel 单元格
    在整理Excel中的数据时,我们不可避免地需要合并和取消合并单元格。同时,如果需要创建跨列或行的标题,我们可以合并Excel单元格以在电子表格中轻松完成此操作。合并单元格......
  • java执行流程
    编译:是指使用Java编译器对源文件进行错误排査的过程,编译后将生成后缀名为.class的字节码文件,不像C语言那样生成可执行文件。Java解释器负责将字节码文件翻译成具体......
  • JAVAEE
    javaee背景克服传统Client/Server架构的弊端迎合Browser/Serexer架构的潮流应用领域为中大型企业软件中大型网站B/S部署企业应用或者网站(联网)Web服务器......
  • JavaScript
    JavaScript内部标签<script>......</script>外部写法j.js<scriptsrc="js/j.js"></script>基础语法<script>//1.定义变量变量类型变量名=变量值......
  • java:绘制图形
    java绘图类:Graphics类 绘图是高级程序中必备的技术,在很多方面都能用到,如:绘制闪屏图片,背景图片和组件外观等。1.Graphics类 Graphics类是所有图形上下文的抽象基类,Gr......
  • java pdf 合并
    packagecom.hefeng.demo.controller;importjava.io.File;importjava.io.IOException;importjava.util.*;importorg.apache.pdfbox.io.MemoryUsageSetting;impo......
  • 【转载】Java List对象集合按对象属性分组、分组汇总、过滤等操作示例
    importjava.util.ArrayList;importjava.util.List;importjava.util.Map;importjava.util.stream.Collectors; publicclassTest{   publicstaticvoidmain(St......
  • 学习Java应该如何更快掌握
    学习Java    首先要想学Java,毋庸置疑的是,在你学习Java一定要有耐心。与此可以沉的下心更容易在其中钻研进步,Java学习只要找对方法难度都不是很高的,建议在学习前先了......
  • 【Bug】No validator... javax.validation.constraints.NotBlank validating type jav
    经检查,是因为在Integer类型的字段上加了@NotBlank的校验注解,而该注解只能用于字符串类型,因此报类型不匹配异常@NotBlank(message="整季量不能为空")privateInteger......