




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 1 (口述题)请简述迅雷、(口述题)请简述迅雷、BTBT 等等 p2pp2p 下载软件的实现原理。如何资源分布。下载软件的实现原理。如何资源分布。 解释解释:A 想来想来 B 家做客家做客,但是遭到了但是遭到了 B 的管家的管家 NAT B 的拒绝的拒绝,理由是理由是:我从来没有我从来没有 听我家听我家 B 提过你的名提过你的名 字字,这时这时 A 找到了找到了 A,B 都认识的朋友都认识的朋友 server,要求要求 server 给给 B 报一个信报一个信,让让 B 去跟管家去跟管家说说 A 是我的朋友是我的朋友,于是于是,B 跟管跟管家家 NAT B 说说,A 是我认识是我认识 的朋友的朋友,这这样样 A 的访问请求就不会再被管的访问请求就不会再被管家家 NAT B 所拒绝了所拒绝了.简而言之简而言之,UDP 打洞打洞 就是一个通就是一个通过过 server 保存下来的地址使得彼此之间能够直接通信的过保存下来的地址使得彼此之间能够直接通信的过 程程,server 只管帮助建立连接只管帮助建立连接,在建立间接之后就不再介入了在建立间接之后就不再介入了. 2维护数据库的完整性维护数据库的完整性、一致性一致性、你喜欢用触发器还是自写业务逻辑?为什么你喜欢用触发器还是自写业务逻辑?为什么 解释:解释:尽可能用约束(包括尽可能用约束(包括 CHECK、主键、唯一键、外键、非空字段)实现、主键、唯一键、外键、非空字段)实现, 这种方式的效率最好;其次用触发器,这种方式可以保证无论何种业务系统访这种方式的效率最好;其次用触发器,这种方式可以保证无论何种业务系统访 问数据库都能维持数据库的完整性问数据库都能维持数据库的完整性、一致性一致性;最后再考虑用自写业务逻辑实现最后再考虑用自写业务逻辑实现, 但这种方式效率最低、编程最复杂,当为下下之策。但这种方式效率最低、编程最复杂,当为下下之策。 3A=10,b=20 在不使用第三变量在不使用第三变量 使两值互换使两值互换 解释解释: a=10,b=8 a=a-b b=b+a a=b-a 4. overrideoverride 与重载的区别与重载的区别 解释:解释:override 是把继承于父类的方法给覆盖掉是把继承于父类的方法给覆盖掉 重载是同一个函数名接受不同类型、个数的参数,完成不同的功能,调用起来重载是同一个函数名接受不同类型、个数的参数,完成不同的功能,调用起来 方便方便 5抽象类跟接口的区别抽象类跟接口的区别 解释:抽象类可以有非抽象方法,接口中只能有抽象方法。接口可以实现多继解释:抽象类可以有非抽象方法,接口中只能有抽象方法。接口可以实现多继 承。承。 6try 里有一个里有一个 return 语句,那么紧跟在这个语句,那么紧跟在这个 try 后的 后的 finally 里的里的 code 会不会被执行,什么时候被执行,在会不会被执行,什么时候被执行,在 return 前还是后前还是后? 解释:解释:inally 里的代码会执行,在里的代码会执行,在 return 之前执行之前执行 7实现一个冒泡排序实现一个冒泡排序 解释:解释: ArrayListArrayList list=newlist=new ArrayList();ArrayList(); list.add(76);list.add(76); list.add(4);list.add(4); list.add(786);list.add(786); list.add(43);list.add(43); list.add(21);list.add(21); list.add(432);list.add(432); list.add(10);list.add(10); for(intfor(int i=0;i0) /比较两个整数的比较两个整数的 大小大小 a=list.get(j-1);a=list.get(j-1); list.set(j-1),list.get(j);list.set(j-1),list.get(j); list.set(j,a);list.set(j,a); for(Integerfor(Integer s:list)s:list) System.out.println(Value();System.out.println(Value(); 8 8查出总成绩大于查出总成绩大于 100100 分的学生信息分的学生信息 1ZhangSql60 2liC#50 3wangJava70 4zhangJava55 5liSql60 6liJava65 解释:解释:select * from table where id in (select name,sum(gade) as total from table group by name having total100) Where 在分组之前过滤数据,条件不能包含聚组函数,在分组之前过滤数据,条件不能包含聚组函数,having 在分组之后过滤在分组之后过滤 数据数据,条件中经常包含聚组函数条件中经常包含聚组函数。带聚合函数的带聚合函数的 select 中只能有聚合函数和分组中只能有聚合函数和分组 列。列。 9. 有一个学生表,有学生姓名,语文成绩,数学成绩。请写出查询语文成绩和有一个学生表,有学生姓名,语文成绩,数学成绩。请写出查询语文成绩和 数学成绩在数学成绩在 60 分以上的学生信息,并能查且语文成绩和数学成绩之和大于分以上的学生信息,并能查且语文成绩和数学成绩之和大于 130 分的学生信息,请用一句分的学生信息,请用一句 SQL 拼写出来拼写出来。 解 释 :解 释 : select*fromtablewhereyuwen60andshuxue60and yuwen+shuxue130 10. 若若 p1 为为 false, 则不再计算则不再计算 P2 11. 什么是事务?什么是锁?什么是事务?什么是锁? 解释:解释:事务是指一个工作单元,它包含了一组数据操作命令,并且所有的命令事务是指一个工作单元,它包含了一组数据操作命令,并且所有的命令 作为一个整体一起向系统提交或撤消请求操作,即这组命令要么都执行,要么作为一个整体一起向系统提交或撤消请求操作,即这组命令要么都执行,要么 都不执行。都不执行。 锁是在多用户环境中对数据的访问的限制。锁是在多用户环境中对数据的访问的限制。SqlServer 自动锁定特定记录、字段自动锁定特定记录、字段 或文件,防止用户访问,以维护数据安全或防止并发数据操作问题,锁可以保或文件,防止用户访问,以维护数据安全或防止并发数据操作问题,锁可以保 证事务的完整性和并发性。证事务的完整性和并发性。 12什么是索引,有什么优点?什么是索引,有什么优点? 解释:解释:索引象书的目录类似,索引使数据库程序无需扫描整个表,就可以在其索引象书的目录类似,索引使数据库程序无需扫描整个表,就可以在其 中找到所需要的数据,索引包含了一个表中包含值的列表,其中包含了各个值中找到所需要的数据,索引包含了一个表中包含值的列表,其中包含了各个值 的行所存储的位置,索引可以是单个或一组列,索引提供的表中数据的逻辑位的行所存储的位置,索引可以是单个或一组列,索引提供的表中数据的逻辑位 置,合理划分索引能够大大提高数据库性能。置,合理划分索引能够大大提高数据库性能。 13视图是什么?游标是什么?视图是什么?游标是什么? 解释:解释:视图是一种虚拟表,虚拟表具有和物理表相同的功能,可以对虚拟表进视图是一种虚拟表,虚拟表具有和物理表相同的功能,可以对虚拟表进 行增该查操作,视图通常是一个或多个表的行或列的子集,视图的结果更容易行增该查操作,视图通常是一个或多个表的行或列的子集,视图的结果更容易 理解(修改视图对基表不影响理解(修改视图对基表不影响) ,获取数据更容易(相比多表查询更方便,获取数据更容易(相比多表查询更方便) ,限,限 制数据检索(比如需要隐藏某些行或列制数据检索(比如需要隐藏某些行或列) ,维护更方便。,维护更方便。 游标对查询出来的结果集作为一个单元来有效的处理,游标可以定位在结果集游标对查询出来的结果集作为一个单元来有效的处理,游标可以定位在结果集 的特定行、从结果集的当前位置检索一行或多行、可以对结果集中当前位置进的特定行、从结果集的当前位置检索一行或多行、可以对结果集中当前位置进 行修改、行修改、 15什么是存储过程?有什么优点?什么是存储过程?有什么优点? 解释解释: 存储过程是一组予编译的存储过程是一组予编译的 SQL 语句语句, 它的优点有它的优点有 1.允许模块化程序设计允许模块化程序设计, 就是说只需要创建一次过程就是说只需要创建一次过程,以后在程序中就可以调用该过程任意次以后在程序中就可以调用该过程任意次。2.允许更允许更 快执快执 行,如果某操作需要执行大量行,如果某操作需要执行大量 SQL 语句或重复执行,存储过程比语句或重复执行,存储过程比 SQL 语语 句执行的要快。句执行的要快。3.减少网络流量,例如一个需要数百行的减少网络流量,例如一个需要数百行的 SQL 代码的操作有一代码的操作有一 条执行条执行 语句完成,不需要在网络中发送数百行代码。语句完成,不需要在网络中发送数百行代码。4.更好的安全机制,对于更好的安全机制,对于 没有权限执行存储过程的用户,也可授权他们执行存储过程。没有权限执行存储过程的用户,也可授权他们执行存储过程。 16什么是触发器?什么是触发器? 解释:解释:触发器触发器是一种特殊类型的存储过程,出发器主要通过事件触发而被执行是一种特殊类型的存储过程,出发器主要通过事件触发而被执行 的的,触发器的优点触发器的优点:1.强化约束强化约束,触发器能够提供比触发器能够提供比 CHECK 约束约束。2.跟踪变化跟踪变化, 触发触发 器可以跟踪数据库内的操作,从而不允许未经允许许可的更新和变化。器可以跟踪数据库内的操作,从而不允许未经允许许可的更新和变化。3. 联级运算,比如某个表上的触发器中包含对另一个表的数据操作,而该操作又联级运算,比如某个表上的触发器中包含对另一个表的数据操作,而该操作又 导致该表上导致该表上 的触发器被触发。的触发器被触发。 17销售主表(订单号销售主表(订单号 ,业务员,业务员 , 客户名称客户名称 , 合同日期)合同日期) 销售子表(订单号销售子表(订单号 ,产品编号,产品编号 ,销售数量,销售数量 ,销售金额),销售金额) 产品表(产品编号产品表(产品编号 , 产品名称)产品名称) 请根据以下条件,写出分别请根据以下条件,写出分别 sqlsql 语句语句 1.1.统计合同日期为统计合同日期为 20062006 年年 1010 月的各业务员的销售数量和销售金额月的各业务员的销售数量和销售金额 2.2.统计合同日期为统计合同日期为 20062006 年年 1010 月的各产品的销售数量和销售金额月的各产品的销售数量和销售金额 3.3.计算业务员计算业务员张三张三销售的产品为销售的产品为 维生素维生素 b b的平均价格的平均价格 18什么叫做什么叫做 sqlsql 注入,如何防止?请那个举例说明。注入,如何防止?请那个举例说明。 解释解释:sqlsql 注入注入,就是利用程序员对用户输入数据的合法性检测不严或不检测的就是利用程序员对用户输入数据的合法性检测不严或不检测的 特点,故意从客户端提交特殊代码,获取服务端信息。特点,故意从客户端提交特殊代码,获取服务端信息。 例如例如: “selectselect * * fromfrom usersusers wherewhere username=username=”+v_name+v_name+“ andand pwd=pwd=” +v_pwd+v_pwd+“ ” ; I If(obj!=null)f(obj!=null) 验证通过验证通过 用户名随便输入,密码输入:用户名随便输入,密码输入:“aaa or 1=1“ 如何防止:如何防止:PreparedStatement 1919请写出请写出 javascriptjavascript 弹出确认框的函数。弹出确认框的函数。 解释:解释:confirm(confirm(是否删除是否删除) ) 2020你以为大数据量下的列表显示分页应该如何处理?请叙述一下你的方法你以为大数据量下的列表显示分页应该如何处理?请叙述一下你的方法 解释:解释: typetype refCursorTyperefCursorType isis REFREF CURSOR;CURSOR;-游标类型定义,用于返回数据游标类型定义,用于返回数据 集集 procedureprocedure sp_Page(p_PageSizesp_Page(p_PageSize int,int,-每页记录数每页记录数 p_PageNop_PageNo int,int,-当前页码当前页码, ,从从 1 1 开始开始 p_SqlSelectp_SqlSelect varchar2,varchar2,- 查询语句查询语句, ,含排序部分含排序部分 p_OutRecordCountp_OutRecordCount outout int,-int,-返返 回总记录数回总记录数 p_OutCursorp_OutCursor outout refCursorType)refCursorType) asas v_sqlv_sql varchar2(3000);varchar2(3000); v_countv_count int;int; v_heiRownumv_heiRownum int;int; v_lowRownumv_lowRownum int;int; beginbegin -取记录总数取记录总数 v_sqlv_sql :=:= selectselect count(*)count(*) fromfrom ( | p_SqlSelectp_SqlSelect | );); executeexecute immediateimmediate v_sqlv_sql intointo v_count;v_count; p_OutRecordCountp_OutRecordCount :=:= v_count;v_count; -执行分页查询执行分页查询 v_heiRownumv_heiRownum :=:= p_PageNop_PageNo * * p_PageSize;p_PageSize; v_lowRownumv_lowRownum :=:= v_heiRownumv_heiRownum - - p_PageSizep_PageSize + + 1;1; v_sqlv_sql :=:= SELECTSELECT * * FROMFROM ( ( SELECTSELECT A.*,A.*, rownumrownum rnrn FROMFROM(|(| p_SqlSelectp_SqlSelect |)|) A A WHEREWHERE rownumrownum = | to_char(v_lowRownum)to_char(v_lowRownum) ; ; -注意对注意对 rownumrownum 别名的使用别名的使用, ,第一次直接第一次直接用用 rownum,rownum,第二次一定要用别名第二次一定要用别名 rnrn OPENOPEN p_OutCursorp_OutCursor FORFORv_sql;v_sql; endend sp_Page;sp_Page; /*/* * * *功能描述功能描述: : 大数据量分页通用存储过程大数据量分页通用存储过程( (重载重载 1 1,推荐使用,推荐使用) ) * *创创 建建 人人: : 夏春涛夏春涛 * *创建时间创建时间: : 2005-07-012005-07-01 * */*/ procedureprocedure sp_Page(p_PageSizesp_Page(p_PageSize int,int,-每页记录数每页记录数 p_PageNop_PageNo int,int,-当前页码当前页码, ,从从 1 1 开始开始 p_SqlSelectp_SqlSelect varchar2,varchar2,- 查询语句查询语句, ,含排序部分含排序部分 p_SqlCountp_SqlCount varchar2,varchar2,-获取记录总数的查询语句获取记录总数的查询语句 p_OutRecordCountp_OutRecordCount outout int,-int,-返返 回总记录数回总记录数 p_OutCursorp_OutCursor outout refCursorType)refCursorType) asas v_sqlv_sql varchar2(3000);varchar2(3000); v_countv_count int;int; v_heiRownumv_heiRownum int;int; v_lowRownumv_lowRownum int;int; beginbegin -取记录总数取记录总数 executeexecute immediateimmediate p_SqlCountp_SqlCount intointo v_count;v_count; p_OutRecordCountp_OutRecordCount :=:= v_count;v_count; -执行分页查询执行分页查询 v_heiRownumv_heiRownum :=:= p_PageNop_PageNo * * p_PageSize;p_PageSize; v_lowRownumv_lowRownum :=:= v_heiRownumv_heiRownum - - p_PageSizep_PageSize + + 1;1; v_sqlv_sql :=:= SELECTSELECT * * FROMFROM ( ( SELECTSELECT A.*,A.*, rownumrownum rnrn FROMFROM(|(| p_SqlSelectp_SqlSelect |)|) A A WHEREWHERE rownumrownum = | to_char(v_lowRownum)to_char(v_lowRownum) ; ; -注意对注意对 rownumrownum 别名的使用别名的使用, ,第一次直接第一次直接用用 rownum,rownum,第二次一定要用别名第二次一定要用别名 rnrn OPENOPEN p_OutCursorp_OutCursor FORFORv_sql;v_sql; endend sp_Page;sp_Page; /*/* * * *功能描述功能描述: : 大数据量分页通用存储过程大数据量分页通用存储过程( (重载重载 2)2) * *创创 建建 人人: : 夏春涛夏春涛 * *创建时间创建时间: : 2005-07-012005-07-01 * */*/ procedureprocedure sp_Page(p_PageSizesp_Page(p_PageSize int,int,-每页记录数每页记录数 p_PageNop_PageNo int,int,-当前页码当前页码, ,从从 1 1 开始开始 p_SqlSelectp_SqlSelect varchar2,varchar2,-查询查询 语句语句, ,含排序部分含排序部分 p_OutCursorp_OutCursor outout refCursorType)refCursorType) asas v_sqlv_sql varchar2(3000);varchar2(3000); -v_count-v_count int;int; v_heiRownumv_heiRownum int;int; v_lowRownumv_lowRownum int;int; beginbegin /*/* -取记录总数取记录总数 v_sqlv_sql :=:= selectselect count(*)count(*) fromfrom ( | p_SqlSelectp_SqlSelect | );); executeexecute immediateimmediate v_sqlv_sql intointo v_count;v_count; p_OutRecordCountp_OutRecordCount :=:= v_count;v_count; */*/ -执行分页查询执行分页查询 v_heiRownumv_heiRownum :=:= p_PageNop_PageNo * * p_PageSize;p_PageSize; v_lowRownumv_lowRownum :=:= v_heiRownumv_heiRownum - - p_PageSizep_PageSize + + 1;1; v_sqlv_sql :=:= SELECTSELECT * * FROMFROM ( ( SELECTSELECT A.*,A.*, rownumrownum rnrn FROMFROM(|(| p_SqlSelectp_SqlSelect |)|) A A WHEREWHERE rownumrownum = | to_char(v_lowRownum)to_char(v_lowRownum) ; ; -注意对注意对 rownumrownum 别名的使用别名的使用, ,第一次直接第一次直接用用 rownum,rownum,第二次一定要用别名第二次一定要用别名 rnrn OPENOPEN p_OutCursorp_OutCursor FORFORv_sql;v_sql; endend sp_Pagesp_Page 2121short s1 = 1; s1 = s1 + 1;有什么错有什么错?short s1 = 1; s1 += 1;有什么错有什么错? 解释:第一句,编译期出错,第二句正确,属于方法重载。解释:第一句,编译期出错,第二句正确,属于方法重载。 2222简述简述 spring 的的 AOP 和和 IOC 解释:解释:ioc(控制反转)是一种设计模式,由传统的在程序中控制依赖转移到由(控制反转)是一种设计模式,由传统的在程序中控制依赖转移到由 容器控制,将相互依赖的对象分离,在容器控制,将相互依赖的对象分离,在 spring 文件中描述依赖,依赖只在使用文件中描述依赖,依赖只在使用 时建立。时建立。 Aop(面向切面面向切面)是一种编程思想是一种编程思想,oop 的延伸的延伸,将系统中非核心业务提取出来将系统中非核心业务提取出来, , 单独处理。单独处理。 2323Tomcat 的开启在哪个文件夹,改端口号的是哪个文件?的开启在哪个文件夹,改端口号的是哪个文件? 解释:解释:tomcat/bin tomcat/conf server.xml 2424Jdk 配置环境变量配置环境变量 解释:解释:JAVA_HOME C:JDK1.6.0 2525Java 中访问数据库的步骤?中访问数据库的步骤?Statement 和和 PreparedStatement 之间的区之间的区 别?别? 解释:解释:1。注册驱动。注册驱动 2。取得连接对象。取得连接对象 3。取得。取得 Statement 4。调用。调用 sql 5。处。处理理 ResultSet 6。关闭资源。关闭资源 2626在控制台输入在控制台输入 ip(5),然后然后,用用.分割开并且每组数据不能超过分割开并且每组数据不能超过 255, 最后最后,在控制台输出分割后的在控制台输出分割后的 ip。 2727编程题编程题: 写一个写一个 Singleton 出来。出来。 解释:解释:class Text private static Text t=new Text(); private Text() public static Text getInstance() if(t=null) t=new Text(); return t; class Text private static Text t=new Text(); public static synchronized Text getInstance() if(t=null) t=new Text(); return t; 28.sleep() 和和 wait() 有什么区别有什么区别? 解释:解释:sleep 不释放锁,可实现同步,不释放锁,可实现同步,wait 释放资源,无法同步。释放资源,无法同步。 29. 启动一个线程是用启动一个线程是用 run()还是还是 start()? 解释:解释: 30.30. 在控制台输入在控制台输入 ip(5),然后然后,用用.分割开并且每组数据不能超过分割开并且每组数据不能超过 255, 最后最后,在控制台输出分割后的在控制台输出分割后的 ip。 31.31. Set 里的元素是不能重复的里的元素是不能重复的, 那么用什么方法来区分重复与否呢那么用什么方法来区分重复与否呢? 是用是用=还还 是是 equals()? 它们有何区别它们有何区别? 32. try 里有一个里有一个 return 语句,那么紧跟在这个语句,那么紧跟在这个 try 后的后的 finally 里的里的 code 会不会被执行,什么时候被执行,在会不会被执行,什么时候被执行,在 return 前还是后前还是后? 33. Collection 和和 Collections 的区别?的区别? 34. HashMap 和和 Hashtable 的区别的区别? 35. Arraylist 与与 Vector 区别?区别? 解释:解释:ArrayList 不能同步,但性能更高,不能同步,但性能更高,Vector 提供了同步机制。提供了同步机制。 36.36. 集合二分法集合二分法 解释:使用范围:在一个有序的集合里查找指定数字。解释:使用范围:在一个有序的集合里查找指定数字。 I Intnt startstart,endend,indexindex; S Strattrat = = 0 0; E Endnd = = list.sizelist.size()()-1-1; I Indexndex = = (start-end)/2;(start-end)/2; I If f(listlist(indexindex) 指定数字)指定数字) E Endnd = = indexindex; elseelse ifif S Starttart = = indexindex; elseelse B Breakreak; 37.37. 写出一个排序算法写出一个排序算法 38.38. JndiJndi 是什么?是什么? 解释解释:为开发人员提供了查找和访问各种命名和目录服务的通用为开发人员提供了查找和访问各种命名和目录服务的通用,统一的接口统一的接口。 目前可访问的目录及服务目前可访问的目录及服务:dnsdns,xnamxnam,novellnovell 目录服务目录服务,ldapldap,corbacorba 对象服对象服 务,文件系统,注册表,务,文件系统,注册表,rmirmi,sdmlsdml,nisnis 39.39. JavaJava 序列化是怎么实现的?序列化是怎么实现的? 解释:解释:1 1。将对象实例相关的类元数据输出。将对象实例相关的类元数据输出 2 2。递归的输出类的超类直到不再有。递归的输出类的超类直到不再有 超类。超类。3 3。开始从最顶层的超类输出对象实例的实际数据值。开始从最顶层的超类输出对象实例的实际数据值。4 4。递归输出实例。递归输出实例 数据数据 40.40. ServletServlet 是否线程安全?是否线程安全? 41.41. 如何读取如何读取 ExcelExcel 文件的数据,填充到数据库中,实习思路是什么?文件的数据,填充到数据库中,实习思路是什么? 42.42. 如果有重复的数据怎么办?以前的数据我想保留不可以删除,如何实如果有重复的数据怎么办?以前的数据我想保留不可以删除,如何实 习?习? 43.43. 写一个方法写一个方法 传参(传参(intint age1age1)方法实现的功能是)方法实现的功能是 查找查找 personperson 类类 如果存如果存 在在 ageage 大于大于 age1age1 返回返回 truetrue 否则返回否则返回 falsefalse 44.44. 写一个写一个 copycopy 方法方法 将已知的类将已知的类 赋给另一个类赋给另一个类 45.45. 根据某个字段根据某个字段 经过排序经过排序 查询前几条数据查询前几条数据 46.46. 查询性别男的数据,并以查询性别男的数据,并以 IDID 从小到大排序从小到大排序 47.47. 用模糊查询姓王的人员用模糊查询姓王的人员 解释:解释:selectselect * * fromfrom tabletable wherewhere namename likelike 王王% % 48.48. 删除生日在一段时间的数据删除生日在一段时间的数据 解释:解释:selectselect * * fromfrom tabletable wherewhere to_char(shengri,to_char(shengri,YYYY-mm-ddYYYY-mm-dd) ) betweenbetween riqi1riqi1 andand riqi2riqi2 49.49. 查询全部数据,有相同就返回一条查询全部数据,有相同就返回一条 解释:解释:selectselect * * fromfrom tabletable groupgroup byby namename I Id d namenameidid namename 1 1a a1 1a a 2 2b b2 2b b 3 3c c3 3c c 4 4b b 50.50. 在项目中那些地方使用到了在项目中那些地方使用到了 XML 技术?如何实现的。技术?如何实现的。 51 定义函数和存储过程的区别是什么定义函数和存储过程的区别是什么,什么情况下只能用自定义函数什么情况下只能用自定义函数,什么情什么情 况下只能用存储过程况下只能用存储过程 52. subString 的用法,的用法,lenght 的用法,的用法,replace 的用法的用法 53.53. 写出一条写出一条 Sql 语句:取出表语句:取出表 A 中第中第 31 到第到第 40 记录(记录(SQLServer,以自动增以自动增 长的长的 ID 作为主键作为主键,注意:注意:ID 可能不是连续的。可能不是连续的。 54. SqlConnection,SqlCommand,SqldataReader,SqlDataAdapter 的用法的用法 5555 SSQLSSQL : :请取出请取出 tb_send 表中日期表中日期(SendTime 字段字段)为当天的所有记为当天的所有记 录录?(SendTime 字段为字段为 datetime 型,包含日期与时间型,包含日期与时间)。 5656 SSQL 中更新触发器中如果有更新该表语句是否会造成死循环以及原因。中更新触发器中如果有更新该表语句是否会造成死循环以及原因。 57.57. 递归法求递归法求 10! 58.58. struts 2 运行的全流程,运行的全流程, 解释:游浏览器发来的请求会被调度给解释:游浏览器发来的请求会被调度给 struts2,这时,这时 struts2 清理环境上下文清理环境上下文 (ActionContext CleanUp)做好相应的准备,与此如果做好相应的准备,与此如果 Web 框架配置了其他的框框架配置了其他的框 架过滤器架过滤器(如如 siteMesh) ,那么那么 struts2 同时将用户的请求先通过此过滤器同时将用户的请求先通过此过滤器,该过该过 滤器完成处理以后滤器完成处理以后, struts2 再通过再通过 ActionMapper 等控制器调度等控制器调度, 查找配置文查找配置文件件 struts.xml,调度相应调度相应 URL 控制器,准备调相应的控制器,准备调相应的 action,如果此,如果此 action 配置了配置了 相关的拦截器,则依照拦截器的性质分别在相关的拦截器,则依照拦截器的性质分别在 action 执行前后执行这些拦截器,执行前后执行这些拦截器, Action 与业务模型相互协作处理完成对应的用户逻辑后,将进一步唤醒视图模与业务模型相互协作处理完成对应的用户逻辑后,将进一步唤醒视图模 块以产生应答用户请求的页面。同时,如果在此应用配置中配置了其他的框架块以产生应答用户请求的页面。同时,如果在此应用配置中配置了其他的框架 过滤器,那么过滤器,那么 struts2 将控制权转交给此过滤器并完成整个应答。将控制权转交给此过滤器并完成整个应答。 struts2 采用的是采用的是 pull-mvc 模式模式, 拉出式拉出式 是指视图组件根据要求从控制器中将是指视图组件根据要求从控制器中将 模型信息拉出来作为响应模型信息拉出来作为响应。 这与传统的这与传统的 Model2 的方式不同的方式不同, 传统的传统的 Model2 没没 有使用模型来管理信息有使用模型来管理信息,而是直接使用视图来访问信息而是直接使用视图来访问信息。 “分级分级”是指对视图数是指对视图数 据在存放,在据在存放,在 struts2 中中, “值堆栈值堆栈”用来为视图提供信息。用来为视图提供信息。 struts2 MVC 是一个是一个 java 轻量级轻量级 Web 应用程序开发框架应用程序开发框架,它支持多视图它支持多视图,允许允许 用户使用不同的视图技术而不需要改变数据的生成逻辑。它同时也包含了一个用户使用不同的视图技术而不需要改变数据的生成逻辑。它同时也包含了一个 强有力的表达式语言来遍历其环境栈,一个小而实用的标签库,强有力的表达式语言来遍历其环境栈,一个小而实用的标签库, 5959用用 for ,while,switch将将 sdfdshelloWwerorld 输出输出 helloWord ,每次只能输每次只能输 出一个字符出一个字符 解释:解释: 1.String a=”helloWord”; String b=” sdfdshelloWwerorld”; for(int i=0;i0;i-) System.out.println(str.substr(I-1,i); 68List list1=newArrayList(); list1.add(“1“); list1.add(“2“); l ist1.add(“3“); list1.add(“4“); list1.add(“5“); list1.add(“6“); List list2=newArrayList(); list2.add(“2“); list2.add(“4“); list2.add(“6“); list2.add(“9“); list2.add(“0“); 将将 list1、list2 去除重复项,赋值给去除重复项,赋值给 List3 解释:解释: for(int i=0;ilist1.size();i+) if(!list3.contains(list1.get(i) list3.add(list1.get(i); for(int j=0;ilist2.size();j+) if(!list3.contains(list2.get(j) list3.add(list2.get(j); 69一张表一张表 字段字段 Idint sexint mobile varchar 对此表进行增删改查操作对此表进行增删改查操作 70spring 以及以及 hibernate 的存在意义和查询模式的存在意义和查询模式 71多表连接查询(三个表)多表连接查询(三个表) 解释:解释: 72查询表中有重复的某列查询表中有重复的某列 解释:解释: 73char 型变量中能不能存贮一个中文汉字型变量中能不能存贮一个中文汉字?为什么为什么? 答答:是能够定义成为一个中文的是能够定义成为一个中文的,因为因为 java 中以中以 unicode 编码编码,一个一个 char 占占 16 个字节,所以放一个中文是没问题的个字节,所以放一个中文是没问题的 74抽象类与接口的区别?抽象类与接口的区别? 答:抽象类与接口都用于抽象,但是抽象类答:抽象类与接口都用于抽象,但是抽象类(JAVA 中中)可以有自己的部分实现,可以有自己的部分实现, 而接口则完全是一个标识而接口则完全是一个标识(同时有多重继承的功能同时有多重继承的功能)。 75 HashMap 和和 Hashtable 的区别?的区别? 答:都属于答:都属于 Map 接口的类,实现了将惟一键映射到特定的值上。接口的类,实现了将惟一键映射到特定的值上。 HashMap 类没有分类或者排序。它允许一个类没有分类或者排序。它允许一个 null 键和多个键和多个 null 值。值。 Hashtable 类似于类似于 HashMap,但是不允许,但是不允许 null 键和键和 null 值。它也比值。它也比 HashMap 慢,因为它是同步的。慢,因为它是同步的。 76String s = new String(“xyz“);创建了几个创建了几个 String Object? 答:两个对象,一个是答:两个对象,一个是“xyx”,一个是指向一个是指向“xyx”的引用对象的引用对象 s。 77数组有没有数组有没有 length()这个方法这个方法? String 有没有有没有 length()这个方法?这个方法? 答:数组没有答:数组没有 length()这个方法,有这个方法,有 length 的属性。的属性。 String 有有有有 length()这个方法。这个方法。 78Overload 和和 Override 的区别的区别。Overloaded 的方法是否可以改变返回值的类的方法是否可以改变返回值的类 型型? 答答:方法的重写方法的重写 Overriding 和重载和重载 Overloading 是是 Java 多态性的不同表现多态性的不同表现。重重 写写 Overriding 是父类与子类之间多态性的是父类与子类之间多态性的 一种表现一种表现,重载重载 Overloading 是一个是一个 类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参 数数,我们说该方法被重写我们说该方法被重写 (Overriding)。子类的对象使用这个方法时子类的对象使用这个方法时,将调用子将调用子 类中的定义,对它而言,父类中的定义如同被类中的定义,对它而言,父类中的定义如同被“屏蔽屏蔽”了。如果在一个类中定了。如果在一个类中定 义了多个同名的方义了多个同名的方 法法,它们或有不同的参数个数或有不同的参数类型它们或有不同的参数个数或有不同的参数类型,则称为则称为 方法的重载方法的重载(Overloading)。Overloaded 的方法是可以改变返回值的类型。的方法是可以改变返回值的类型。 79接口是否可继承接口接口是否可继承接口? 抽象类是否可实现接口抽象类是否可实现接口? 抽象类是否可继承实体类抽象类是否可继承实体类? 答答:接口可以继承接口接口可以继承接口。抽象类可以实现抽象类可以实现(implements)接口接口,抽象类是否可继承抽象类是否可继承 实体类,但前提是实体类必须有明确的构造函数。实体类,但前提是实体类必须有明确的构造函数。 80构造器构造器 Constructor 是否可被是否可被 override? 答答:构造器构造器 Constructor 不能被继承不能被继承,因此不能重写因此不能重写 Overriding,但可以被重但可以被重载载 Overloading。 81是否可以继承是否可以继承 String 类类? 答:答:String 类是类是 final 类故不可以继承。类故不可以继承。 82当一个对象被当作参数传递到一个方法后当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性此方法可改变这个对象的属性, 并可返回变化后的结果,那么这里到底是值传递还是引用传递并可返回变化后的结果,那么这里到底是值传递还是引用传递? 答答:是值传递是值传递。Java 编程语言只由值传递参数编程语言只由值传递参数。当一个对象实例作为一个参数当一个对象实例作为一个参数 被传递到方法中时,参数的值就是对该对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 趣味参观指南课件
- 临水电安全培训
- 课件模板使用
- 神奇的眼镜课件
- 物理统计方法
- 产科异位妊娠课件
- 课件最后一次
- 凉山支教考试题及答案
- 教师招聘之《幼儿教师招聘》能力提升试题打印含答案详解(预热题)
- 客店理论考试题及答案
- 【课件】角的平分线+课时1+角平分线的性质+课件+2025-2026学年人教版八年级数学上册
- 【课件】轴对称及其性质+课件2025-2026学年人教版八年级数学上册
- 2024年司法考试历年真题及答案
- 2025年贵州省中考英语真题含答案
- 护理人员同理心
- 肿瘤科常见药物及注意事项
- 2025-2030水务工程行业并购重组机会及投融资战略研究咨询报告
- 2025年呼伦贝尔农垦集团有限公司招聘笔试参考题库含答案解析
- 象棋入门教学课件
- 风雨操场调研报告
- 2025年重庆市中考数学试卷真题(含标准答案)
评论
0/150
提交评论