1. 创建集合的时候,集合后面的尖括号填一个泛型,那么这个泛型是必须存在的类吗
1. 设计泛型的初衷:
1) 主要是为了解决Java容器无法记忆元素类型的问题:
i. 由于Java设计之初并不知道会往容器中存放什么类型的元素,因此元素类型都设定为Object,这样就什么东西都能放了!
ii. 但是这样设计有明显的缺点:
a. 取出元素的时候必须进行强制类型转换(尽管集合在运行时里面元素的“运行时类型”不变,即元素的getClass返回的还是最初自己的类型而不是Object);
b. 如果不小心往集合里加了不相同类型的元素可能会导致类型异常(进行equals、compare比较的时候尤为明显);
c. 由于没有类型就需要在很多地方进行强制类型转换,但是这样做增加了编程的复杂度,并且代码也不美观(臃肿),维护起来也更加困难;
2) 泛型的概念定义:
i. 从Java 5开始,引入了参数化类型(Parameterized Type)的概念,改造了所有的Java集合,使之都实现泛型,允许程序在创建集合时就可以指定集合元素的类型,比如List<String>就表名这是一个只能存放String类型的List;
ii. 泛型(Generic):就是指参数化类型,上面的List<String>就是参数化类型,因此就是泛型,而String就是该List<String>泛型的类型参数;
2. 20.在C 语言中,复合语句要用一对( )括起来。 a.方括号 b.圆括号 c.大括号 d.尖括号
答案为c
复合语句一定要用大括号括起来。例如:
if(a>0) b=2;c=3;
这里的if语句只包含到b=2;这里,而c=3;又是另外一条语句了。
但如果是
if(a>0) {b=2;c=3;}
就是一条if语句了。
3. 谁能教我看sql SERVER自带的帮助文档,现成的语法摆在眼前,也不知道怎么看,如下面的:
在写sql语句的时候,按F1,跳转到帮助文档,每个帮助文档最前面不是有这一项么: [Transact-SQL 语法约定 (Transact-SQL)],你点击一下不就可以看到符号是啥意思了
4. 网页设计与制作的历年考题和答案
电子科技大学网络教育考卷(B卷)试题部分
一、 单项选择题
1、在 文本框中输入数据后,数据以*号显示。
①单行文本框 ②多行文本框 ③数值文本框 ④密码文本框
2、导航条是指一组分别指向不同 的按钮,用于在一系列具有相同级别的网页间进行跳转。
①图片 ②链接地址 ③文本 ④热区
3、如果希望在一幅图像中创建多个链接区域,在Dreamweaver MX中通过设置 来实现。
①热区 ②切片 ③热点 ④切片或热区
4、当需要设置新建文件的背景时,可以在 面板中进行。
①属性 ②时间轴 ③工具面板 ④对其面板
5、在Dreamweaver MX中,下面关于定义站点的说法错误的是?
①首先定义新站点,打开站点定义设置窗口
②在站点定义设置窗口的站点名称(Site Name )中填写网站的名称
③在站点设置窗口中,可以设置本地网站的保存路径,而不可以设置图片的保存路径
④本地站点的定义比较简单,基本上选择好目录就可以了
6、在Dreamweaver MX 中,下面关于排版表格属性的说法错误的是:
①可以设置宽度 ②可以设置高度 ③可以设置表格的背景颜色
④可以设置单元格之间的距离但是不能设置单元格内部的内容和单元格边框之间的距离
7、在Dreamweaver MX 中,在设置各分框架属性时,参数Scroll是用来设置什么属性的
①是否进行颜色设置 ②是否出现滚动条 ③是否设置边框宽度 ④是否使用默认边框宽度
8、在Dreamweaver MX 中下面可以用来作代码编辑器的是:
①记事本程序(Notepad) ②Photoshop ③flash ④以上都可以
9、在Dreamweaver MX 中,有8中不同的垂直对齐图像的方式,要是图像的底部与文本的基线对齐要用那种对其方式:
①Baseline ②Absolute Bottom ③Bottom ④Browser Default
10、用Request对象可以获取5类客户端的信息,其中 可以获取HTTP请求中以POST方式提交的表单元素的值
①Quehavior ②bihavior ③scrollamount ④scrolldelay
11、在HTML中滚动文字标记marquee的滚动方式属性是:
①behavior ②bihavior ③scrollamount ④scrolldelay
12、ASP的内建对象Response控制给客户端送出信息的方法有3种,其中直接送出信息给客户端的是:
①Write ②Redirect ③Cookies ④Buffer
13、下面关于Application对象的叙述中不正确的是:
①可实现多个用户共享信息的目的,如聊天室
②可以用Lock来锁定Application对象
③Application OnStart在Applination“结束后”才调用该程序
④Application对象的语法格式为:Application(“Application 名字“)=变量或字符串信息
14、SQL语言使用 语句删除数据库表格中的行或记录。
①UPDATE ②DELETE ③INSERT ④SELECT
15、在HTML中, 不是body部分所包含的元素。
○1text ○2meta ○3background ○4bgcolor
16、在HTML中,字符大小分为6级,下列字符大小中最大的是:
○1h2 ○2h3 ○3h4 ○4h5
17、关于B/S和C/S编程体系,下面说法不正确的是:
○1B/S结构的编程语言分为浏览器端编程语言和服务器端编程语言
○2HTML和CSS都是由浏览器解释的,JavaScript语言和VBScript语言是在浏览器上执行的
○3目前应用领域的数据库系统全部采用关系型数据库
○4ASP和SUN公司推出的,是J2EE核心技术中最重要的一种
18、下面关于标记的说法不正确的是:
○1标记应填写在一对尖括号(<>)内
○2书写标记时,英文字母的大小写或混合使用大小写都是允许的
○3标记内可以包含一些属性,属性名称出现在标记的后面,并且以分号进行分隔
○4HTML对属性名称的排列顺序没有特别的要求
19、一下标记中, 可用于在网页中插入图像。
○1<IMG>标记 ○2<BR>标记 ○3<H3>标记 ○4<SRC标记
20、<input type=reset>是一个:
○1文本框 ○2重新填写的按钮 ○3下来菜单 ○4提供给服务器的按钮
21、HTML文件中的注释标记是:
○1<!--…--> ○2//…或/*…*/ ○3<%!...%> ○4<%--…--%>
22、单独存放ASP程序的文件扩展名是:
○1.html或.htm或.css ○2.asp ○3.as ○4.java
23、在HTML页面文件中为了显示“<>”应使用的符号串是:
○1<和> ○2& ○3" ○4 
24、HTML标记<a href=”t.html #name”>xxx</a>表示:
○1跳转到另一个网站 ○2跳转到另一个网页 ○3跳转到另一个网页的某个地方
○4跳转到本页面的另外一个地方
25、在HTML中,用来显示滚动文字的标记对是:
○1<marpuee>…</marquee> ○2<scroll>…</scroll> ○3<motion>…</motion>
○4<move>…</move>
26、若有定义<style type=”text/css”>#abc{color:red;font-size:18px}</style>,则正确的使用是:
○1<div class=”abc”>xxx</div> ○2<p ID=”abc”>xxx</p>
○3<p type=abc>xxx</p> ○4<body style=abc>xxx</body>
27、要解释执行含有HTML、CSS和VBScript三种页面元素的客户端应用程序,必须使用:
○1记事本 ○2Word ○3Web浏览器 ○4Web服务器
28、要定义表单,应使用标记:
○1<span>…</span> ○2<a href=”URL”>…</a> ○3<div>…</div>
○4<form>…</form>
29、在CSS中,下列关于颜色和背景属性的叙述不正确的是:
○1color属性用于设置前景色
○2Background-color属性用于定义背景色
○3Background-repeat属性用于定义背景图案的重复方式
○4Background-attachment属性用于定义背景图案的初始位置
30、在HTML中换行标记是
○1<li> ○2<br> ○3<hr> ○4<tr>
二、 判断题
1、 在表格的单元格中可以插入另一个表格,这称为表格的嵌套。
2、 在网页中插入文本框、单选框、多选框或跳转菜单时,要先插入空白的表单域。
3、 建立与电子邮件的超链接时,在属性面板的链接文本框中输入mailto: +电子邮件地址。
4、 CSS技术作为一种格式化网路的标准方式,主要的用途是定义网页数据的编排、显示、格式化特殊效果等,它扩展了HTML的功能。
5、 <table>标签用于声明表格,<td>用于表示单元格,<tr>用于表示表格的行。
6、 URL的意思是统一资源定位。
7、 在HTML标签中,<br>表示换行,<p>表示分段。
8、 <A hret=http://6677.y365.com.title=”摘要信息”>绿海星</A>的意思在文字绿海星上加链接http://6677.y365.com.
9、 在CSS中的ID选择符,应将#作为名称前缀。
10、 Request对象用于在服务器和客户端对话期间,检索客户端浏览器传递给服务器的值。
三、 问答题
1、 网页标题与网页文件名有什么不同?
2、 简述request对象和response对象的区别?
3、 内部超链接、外部超链接和锚记超链接有什么不同?
4、 样式在网页制作过程中有什么作用?
5、 什么是行为?有什么作用?
四、 分析计算
1、 画出下面网页文件在浏览器中的显示结果
<html>
<head>
<meta HTTP-EQUIV=”Content-Type”CONTENT=”text/html; charset=gb2312”>
<meta name=”GENERATOR”content=”Microsoft FrontPage 4.0”>
<meta name=”Progid”content=”FrontPage.Editor.Document”>
<title>框架设计</title>
</head>
<frameset rows=”25%,50%,*”>
<frame name=”top”src=”1.html”>
<frameset cols=”25%,50%,*”>
<frame name=”middle1” src=”2.html”>
<frame name=”middle2” src=”3.html”>
<frame name=”middle3” src=”4.html”>
</frameset>
<frameset cols=”50%,*”>
<frame name=”bottoml” src=”5.html”>
<frame name=”bottom2” src=”6.html”>
</frameset>
<noframes>
<body>
<p>此网页使用了框架,但您的浏览器不支持框架。</p>
</body>
</noframes>
</html>
网页文件1.html的内容为:
<html>
<body>
A<p>
</body>
</html>
网页文件2.html的内容为:
<html>
<body>
B<p>
</body>
</html>
网页文件3.html的内容为:
<html>
C<p>
</body>
</html>
网页4.html的内容为:
<html>
D<p>
</body>
</html>
网页5.html的内容为:
<html>
E<p>
</body>
</html>
网页6.html的内容为:
<html>
F<p>
</body>
</html>
2、 模仿谷歌google首页结构,制作一个主色彩为蓝色的页面。要求提供基本源代码。
5. 如何让fckeditor编辑的html代码内容保存到数据库里不变(即尖括号不变成字符)
什么编辑的都无所谓,重要的是你要把html代码让数据库认为是字符串。
这跟防止sql注入的原理是一样的:
用replace将html里所有的单引号替换成双引号,这样就可以保证不管内容是什么,都会原封不动的存入数据库。
上面的方法不仅适用于HTML,不管你插入什么,sql都会原封不动的将他视为字符串。
6. 看不懂sql语法中的符号
Transact-SQL 语法规则
Transact-SQL 引用中的语法关系图使用下列规则。
规范 用于
大写 Transact-SQL 关键字。
斜体 Transact-SQL 语法中用户提供的参数。
| (竖线) 分隔括号或大括号内的语法项目。只能选择一个项目。
[ ] (方括号) 可选语法项目。不必键入方括号。
{}(大括号) 必选语法项。不要键入大括号。
[ ,...n ] 表示前面的项可重复 n 次。每一项由逗号分隔。
[ ...n ] 表示前面的项可重复 n 次。每一项由空格分隔。
加粗 数据库名、表名、列名、索引名、存储过程、实用工具、数据类型名以及必须按所显示的原样键入的文本。
<标签> ::= 语法块的名称。此规则用于对可在语句中的多个位置使用的过长语法或语法单元部分进行分组和标记。适合使用语法块的每个位置由括在尖括号内的标签表示:<标签>。
7. sql case 能调用函数吗
是不能的
例如,下面的语句显示中文年月
select getdate() as 日期,case month(getdate())
when 11 then '十一'
when 12 then '十二'
else substring('一二三四五六七八九十', month(getdate()),1)
end+'月' as 月份
=================================================
CASE 可能是 SQL 中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。例如,你可以在 WHERE 子句中使用 CASE。
首先让我们看一下 CASE 的语法。在一般的 SELECT 中,其语法如下:
SELECT <myColumnSpec> =
CASE
WHEN <A> THEN <somethingA>
WHEN <B> THEN <somethingB>
ELSE <somethingE>
END
在上面的代码中需要用具体的参数代替尖括号中的内容。下面是一个简单的例子:
USE pubs
GO
SELECT
Title,
'Price Range' =
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price < 10 THEN 'Bargain'
WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END
FROM titles
ORDER BY price
GO
这是 CASE 的典型用法,但是使用 CASE 其实可以做更多的事情。比方说下面的 GROUP BY 子句中的 CASE:
SELECT 'Number of Titles', Count(*)
FROM titles
GROUP BY
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price < 10 THEN 'Bargain'
WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END
GO
你甚至还可以组合这些选项,添加一个 ORDER BY 子句,如下所示:
USE pubs
GO
SELECT
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price < 10 THEN 'Bargain'
WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END AS Range,
Title
FROM titles
GROUP BY
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price < 10 THEN 'Bargain'
WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END,
Title
ORDER BY
CASE
WHEN price IS NULL THEN 'Unpriced'
WHEN price < 10 THEN 'Bargain'
WHEN price BETWEEN 10 and 20 THEN 'Average'
ELSE 'Gift to impress relatives'
END,
Title
GO
注意,为了在 GROUP BY 块中使用 CASE,查询语句需要在 GROUP BY 块中重复 SELECT 块中的 CASE 块。
除了选择自定义字段之外,在很多情况下 CASE 都非常有用。再深入一步,你还可以得到你以前认为不可能得到的分组排序结果集。
四,根据条件有选择的UPDATE。
例,有如下更新条件
工资5000以上的职员,工资减少10%
工资在2000到4600之间的职员,工资增加15%
很容易考虑的是选择执行两次UPDATE语句,如下所示
--条件1
UPDATE Personnel
SET salary = salary * 0.9
WHERE salary >= 5000;
--条件2
UPDATE Personnel
SET salary = salary * 1.15
WHERE salary >= 2000 AND salary < 4600;
但是事情没有想象得那么简单,假设有个人工资5000块。首先,按照条件1,工资减少10%,变成工资4500。接下来运行第二个SQL时候,因为这个人的工资是4500在2000到4600的范围之内,需增加15%,最后这个人的工资结果是5175,不但没有减少,反而增加了。如果要是反过来执行,那么工资4600的人相反会变成减少工资。暂且不管这个规章是多么荒诞,如果想要一个SQL 语句实现这个功能的话,我们需要用到Case函数。代码如下:
UPDATE Personnel
SET salary = CASE WHEN salary >= 5000
THEN salary * 0.9
WHEN salary >= 2000 AND salary < 4600
THEN salary * 1.15
ELSE salary END;
这里要注意一点,最后一行的ELSE salary是必需的,要是没有这行,不符合这两个条件的人的工资将会被写成NUll,那可就大事不妙了。在Case函数中Else部分的默认值是NULL,这点是需要注意的地方。
这种方法还可以在很多地方使用,比如说变更主键这种累活。
一般情况下,要想把两条数据的Primary key,a和b交换,需要经过临时存储,拷贝,读回数据的三个过程,要是使用Case函数的话,一切都变得简单多了。
p_key
col_1
col_2
a
1
张三
b
2
李四
c
3
王五
假设有如上数据,需要把主键a和b相互交换。用Case函数来实现的话,代码如下
UPDATE SomeTable
SET p_key = CASE WHEN p_key = 'a'
THEN 'b'
WHEN p_key = 'b'
THEN 'a'
ELSE p_key END
WHERE p_key IN ('a', 'b');
同样的也可以交换两个Unique key。需要注意的是,如果有需要交换主键的情况发生,多半是当初对这个表的设计进行得不够到位,建议检查表的设计是否妥当。
五,两个表数据是否一致的检查。
Case函数不同于DECODE函数。在Case函数中,可以使用BETWEEN,LIKE,IS NULL,IN,EXISTS等等。比如说使用IN,EXISTS,可以进行子查询,从而 实现更多的功能。
下面具个例子来说明,有两个表,tbl_A,tbl_B,两个表中都有keyCol列。现在我们对两个表进行比较,tbl_A中的keyCol列的数据如果在tbl_B的keyCol列的数据中可以找到, 返回结果'Matched',如果没有找到,返回结果'Unmatched'。
要实现下面这个功能,可以使用下面两条语句
--使用IN的时候
SELECT keyCol,
CASE WHEN keyCol IN ( SELECT keyCol FROM tbl_B )
THEN 'Matched'
ELSE 'Unmatched' END Label
FROM tbl_A;
--使用EXISTS的时候
SELECT keyCol,
CASE WHEN EXISTS ( SELECT * FROM tbl_B
WHERE tbl_A.keyCol = tbl_B.keyCol )
THEN 'Matched'
ELSE 'Unmatched' END Label
FROM tbl_A;
使用IN和EXISTS的结果是相同的。也可以使用NOT IN和NOT EXISTS,但是这个时候要注意NULL的情况。
六,在Case函数中使用合计函数
假设有下面一个表
学号(std_id)
课程ID(class_id)
课程名(class_name)
主修flag(main_class_flg)
100
1
经济学
Y
100
2
历史学
N
200
2
历史学
N
200
3
考古学
Y
200
4
计算机
N
300
4
计算机
N
400
5
化学
N
500
6
数学
N
有的学生选择了同时修几门课程(100,200)也有的学生只选择了一门课程(300,400,500)。选修多门课程的学生,要选择一门课程作为主修,主修flag里面写入Y。只选择一门课程的学生,主修flag为N(实际上要是写入Y的话,就没有下面的麻烦事了,为了举例子,还请多多包含)。
现在我们要按照下面两个条件对这个表进行查询
只选修一门课程的人,返回那门课程的ID
选修多门课程的人,返回所选的主课程ID
简单的想法就是,执行两条不同的SQL语句进行查询。
条件1
--条件1:只选择了一门课程的学生
SELECT std_id, MAX(class_id) AS main_class
FROM Studentclass
GROUP BY std_id
HAVING COUNT(*) = 1;
执行结果1
STD_ID MAIN_class
------ ----------
300 4
400 5
500 6
条件2
--条件2:选择多门课程的学生
SELECT std_id, class_id AS main_class
FROM Studentclass
WHERE main_class_flg = 'Y' ;
执行结果2
STD_ID MAIN_class
------ ----------
100 1
200 3
如果使用Case函数,我们只要一条SQL语句就可以解决问题,具体如下所示
SELECT std_id,
CASE WHEN COUNT(*) = 1 --只选择一门课程的学生的情况
THEN MAX(class_id)
ELSE MAX(CASE WHEN main_class_flg = 'Y'
THEN class_id
ELSE NULL END
)
END AS main_class
FROM Studentclass
GROUP BY std_id;
运行结果
STD_ID MAIN_class
------ ----------
100 1
200 3
300 4
400 5
500 6
通过在Case函数中嵌套Case函数,在合计函数中使用Case函数等方法,我们可以轻松的解决这个问题。使用Case函数给我们带来了更大的自由度。
最后提醒一下使用Case函数的新手注意不要犯下面的错误
CASE col_1
WHEN 1 THEN 'Right'
WHEN NULL THEN 'Wrong'
END
8. T-SQL里面的尖括号(<)是什么意思
在T-SQL语法里,<这个符号的意思就是小于的意思。
比如,SELECT
*
FROM
TEST
WHERE
ID
<
10000,
意思就是查询TEST表中编号(ID)小于1万的所有记录。
9. sql server 数据库显示(restoring),不能使用,如何在不丢失数据的前提下
RESTORE DATABASE <数据库名> WITH RECOVERY
用这个语句可以解决问题,数据库名那里要去掉尖括号
10. 如何查询sql 表中的多个字段
select
*
from
表名
where
biaoboje 不等于
jinjiaje
or
jinjiaje
不等于
pijiaje
or
pijiaje
不等于
shoujiaje
不等于:sql
的不等号,即两个尖括号同时向中间开口,此处腾讯好像不能这样回答