微信

使用微信服务,更方便

职友集>Java面试题 > Java笔试试卷五

Java笔试试卷五

2015-11-23 06:30:02 阅读( 26 )

1894人 收藏本页

标签:Java面试题

试题1
下列不属于接口的是

A. Statement
B. PreparedStatement
C. Driver
D. DriverManager
E. 这个真不会,但我很厚道

试题2
关于ResultSetMetaData API描述错误的是

A. getColumnCount() 返回列的数目
B. getColumnTypeName(int index) 返回指定列的类型的名称
C. getColumnType(int index) 返回字符串表示形式的指定列的类型
D. isNullable 指定列是否为空
E. 这个真不会,但我很厚道

试题3
emp表数据如下

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
—– ———- ——— —– ———– ——— ——— ——
7369 SMITH CLERK 7902 1980/12/17 800.00 20
7499 ALLEN SALESMAN 7698 1981/2/20 1600.00 0.00 30

下面代码输出的结果是:

ResultSet rs = stmt.executeQuery (“select comm from emp”);
while(rs.next()) {
System.out.println(rs.getDouble(1) + “,” +rs.wasNull());
}

A. 0, true
0, false
B. null, true
0,false
C. 0, false
0, false
D. 0, true
0, true
E. 这个真不会,但我很厚道

试题4
下面的代码用于将存放于文件中的图片信息(mouse.bmp)和文本信息(some.xml)插入到Oracle数据库(Oracle 10g 以上驱动)
应该填入的代码是:

public void testSaveLOB() throws Exception {
Connection con = DBUtils.getConnection();
PreparedStatement stmt = con
.prepareStatement(“insert into sd_user (id, photo,mem) values(?,?,?)”);
stmt.setInt(1, 30);
File file = new File(“d:/mouse.bmp”);
FileInputStream fis = new FileInputStream(file);



File xml = new File(“d:/some.xml”);
InputStreamReader reader = new InputStreamReader(new FileInputStream(
xml), “utf-8″);



int n = stmt.executeUpdate();
System.out.println(n);
fis.close();
stmt.close();
con.close();
}

A. stmt.setStream(2, fis, (int) file.length());
stmt.setReader(3, reader, (int) xml.length());
B. stmt.setBinaryStream(2, fis, (int) file.length());
stmt.setCharacterStream(3, reader, (int) xml.length());
C. stmt.setInputStream(2, fis, (int) file.length());
stmt.setCharacterStream(3, reader, (int) xml.length());
D. stmt.setBinaryStream(2, fis, (int) file.length());
stmt.setFileReader(3, reader, (int) xml.length());
E. 这个真不会,但我很厚道

试题5
下面描述不属于连接池的功能的是

A. 可以缓解连接频繁的关闭和创建会造成系统性能的下降
B. 可以大幅度提高查询语句的执行效率
C. 可以限制客户端的连接数量
D. 可以提高系统的伸缩性
E. 这个真不会,但我很厚道

试题6
下面的代码用于实现对emp表的分页查询(Oracle),在每页10行的前提下查询第8页的语句是:

A.
String sql = “select ename,sal from emp where limit ?,?”
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setInt(1,10*7+1+10);
stmt.setInt(2,10*7+1);
stmt.executeQuery();

B.
String sql = “select ename,sal from emp limit ?,?”
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setInt(1,10*7+1+10);
stmt.setInt(2,10*7+1);
stmt.executeQuery();
C.
String sql = “select ename, sal from emp
(select enam, sal, rownum n from foo where rownum>=?)
where n<?"
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setInt(1,10*7+1);
stmt.setInt(2,10*7+1+10);
stmt.executeQuery();
D.
String sql = "select ename, sal from
(select ename, sal, rownum n from foo where rownum<?)
where n>=?”
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setInt(1,10*7+1+10);
stmt.setInt(2,10*7+1);
stmt.executeQuery();
E. 这个真不会,但我很厚道

试题7
下面代码空白处应该填入的是:
public void tstAuto() throws Exception {
Class.forName(“com.mysql.jdbc.Driver”);
Connection con = DriverManager.getConnection(
“jdbc:mysql://localhost:3306/test”, “root”, “root”);
con.setAutoCommit(false);
PreparedStatement stmt = con
.prepareStatement(“insert into emp(name, hire_date, dept_id) values(?,?,?)”);
stmt.executeUpdate(“insert into dept (name, location)value(‘R&D’,'Beijing’)”);
// 获取刚刚产生的主键


… … …
stmt.close();
con.close();
}
A. ResultSet key = stmt.getKeys();
B. int key = stmt.getGeneratedKeys();
C. ResultSet key = stmt.getGeneratedKeys();
D. int key = stmt.getKeys();
E. 这个真不会,但我很厚道

试题8
已知数据表emp的数据为:

EMPNO ENAME
—– ———-
7369 SMITH

7499 ALLEN

7521 WARD

下面代码的运行结果是
int empno = 6000;
String ename = “hello’ or ’1′=’1″;
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(“select count(*) from emp
where empno=”+empno+” and ename=’”+ename+”‘”);
rs.next();
System.out.println(rs.getInt(1));

A. 0
B. 1
C. 2
D. 3
E. 这个真不会,但我很厚道

试题9
下面关于PreparedStatement的说法错误的是

A. PreparedStatement继承了Statement
B. PreparedStatement可以有效的防止SQL注入
C. PreparedStatement不能用于批量更新的操作
D. PreparedStatement可以存储预编译的Statement,从而提升执行效率
E. 这个真不会,但我很厚道

试题10
下面关于Oracle数据库连接URI正确的拼写格式是:

A. jdbc:oracle:thin:@hostname:1521:orcl
B. jdbc/oracle/thin/@hostname:1521/orcl
C. jdbc:oracle/thin/@hostname:1521/orcl
D. jdbc:oracle:thin/@hostname:1521/orcl
E. 这个真不会,但我很厚道

试题11
ConnUtils类中通过属性文件获取连接参数的代码应该是:

A.
Properties props = new Properties();
props.load(ConnUtils.getClassLoader().getStream
(“org/whatisjava/mis/db.properties”));
driver = props.getProperty(“driver”);
url = props.getProperty(“url”);
username = props.getProperty(“username”);
password = props.getProperty(“password”);
… … …
B.
Properties props = new Properties();
props.load(ConnUtils.class.getClassLoader().getResourceAsStream
(“org/whatisjava/mis/db.properties”));
driver = props.getProperty(“driver”);
url = props.getProperty(“url”);
username = props.getProperty(“username”);
password = props.getProperty(“password”);
… … …
C.
Properties props = new Properties();
props.load(ConnUtils.getClassLoader().getResourceAsStream
(“org/whatisjava/mis/db.properties”));
driver = props.getProperty(“driver”);
url = props.getProperty(“url”);
username = props.getProperty(“username”);
password = props.getProperty(“password”);
… … …
D.
Properties props = new Properties();
props.load(ConnUtils.class.getClassLoader().getStream
(“org/whatisjava/mis/db.properties”));
driver = props.getProperty(“driver”);
url = props.getProperty(“url”);
username = props.getProperty(“username”);
password = props.getProperty(“password”);
… … …
E. 这个真不会,但我很厚道

试题12
下面关于ResultSet说法错误的是

A. 查询结束后,所有的结果数据将一次被存储在ResultSet对象中
B. Statement对象close后,由其创建的ResultSet对象将自动的close
C. 查询结束后,ResultSet中的游标指向第一条记录之上,因此要先调用一次next才有可能取得记录
D. ResultSet的的方法getString(…)意为取得该列的数据以字符串的形式返回,数据库中的该列类型 并不一定必须是字符类型
E. 这个真不会,但我很厚道

试题13
下面关于数据库事务的描述错误的是

A. 原子性是事务具备的一个重要特性
B. Connection对象setAutoCommit(boolean b) 方法默认设置为true
C. Repeatable Read 可以禁止不可重复读取和脏读取
D. Read Committed 允许脏读取但不允许不可重复读取
E. 这个真不会,但我很厚道

试题14
下面XML内建实体引用错误的是:

A. ”
B. &
C. ∧
D. ‘
E. 这个真不会,但我很厚道

试题15
下面XML文档符合语法规则的是:

A.

Hello


Hey

B.


Hey


C.

Hello


Hey

D.

happy < happ

E. 这个真不会,但我很厚道

试题16
下面关于XML正确的说法是

A. 对于Java语言XML只限于书写配置文件
B. XML的核心设计目的是数据的传输和存储
C. 和HTML类似XML大小写不区分
D. 通常的HTML可以看成特殊的XML
E. 这个真不会,但我很厚道

试题17
CDATA段的正确写法是:

A.
B.
C.
D.
E. 这个真不会,但我很厚道

试题18
下面说法正确的是

A. SAX方式解析的效率要低于DOM方式解析的效率
B. DOM方式基于事件触发
C. DOM方式解析XML时需要装置整个XML文档
D. 只有Java语言才具备通过DOM的方式解析XML文档
E. 这个真不会,但我很厚道

试题19
按照DTD定义:

不合法的XML是:

A.B.C.D.E. 这个真不会,但我很厚道

试题20
按照DTD定义:





不合法的XML是:

A.

Java
Happy

B.

Java
PHP
Memory

C.

Memory
Java
PHP

D.

Happy

E. 这个真不会,但我很厚道

来自IT公司面试手册

下一篇:四种操作xml的方式:SAX, DOM, JDOM , DOM4J的比较

上一篇:Java笔试试卷四

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题