一、单项选择题(每题2分,共40分)
1.如果要告知Mybatis,创建的资源文件的路径,下列哪组标签格式正确(B)
A <mapping resource="sram/l"/>
B <mapper resource="sram/l" />
C <property resource="sram/l" />
D <mapping resource="sram.l"/>
2.实体类的映射文件l中的<insert> 标签中INSERT语句中要获取User对象的属性,下列哪种格式正确(D)
A (username) B {username}
C #(username) D #{username}
l执行查询语句SELECT * FROM t_user 有返回结果,如何表示(B)
A property ="sram.beans.User" B resultType="sram.beans.User"
C parameterType="sram.beans.User" D result="sram.beans.User"
4.Mybatis与数据库打交道的核心对象是C)
A Session B SessionFactory
C SqlSession D SqlSessionFactory
5.当向数据库中插入User对象时,Mybatis如何到映射文件中的INSERT语句(A)
A 通过命名空间下的id 来到要执行的映射文件中的sql语句
B 通过命名空间下的name 来到要执行的映射文件中的sql语句
C 通过映射文件中对应SQL语句的id直接执行对应的语句
D 通过映射文件中对应SQL语句的name直接执行对应的语句
6.下列代码运行会报错的是(B)
A @Insert("INSERT INTO t_user (username) VALUES (#{username})")
public abstract void save(User user);
B @Update("UPDATE t_user SET username = #{username} WHERE id = #{id}")
public abstract void update(User user);
C @Select("SELECT * FROM t_user")
public abstract User getAllUsers();
D @Select("SELECT * FROM t_user WHERE id = #{id}")
public abstract User load(int id);
7.对以下代码解释错误的是(C)
<mapper namespace="com.sram.mapper.UserMapper"> <insert id="save" parameterType="sram.beans.User"> INSERT INTO t_user (username) VALUES (#{username}); </insert> |
A 这段代码是XML配置文件和Mapper配合使用
B 在测试时可以通过mapper.save(user)来插入对象
C UserMapper对应的插入方法名字可以是add()
D 单独使用XML配置的时候 namespace="com.sram.beans.User"
8.当传递两个参数时,XML配置如下,下列Mapper中对应的方法正确的是(D)
<select id="getUserByUsernameAndPassword" resultType="com.sram.beans.User" parameterType="string"> SELECT * FROM t_user WHERE username = #{username} AND password = #{pass}; </select> |
A public abstract User getUser(String username,String password);
B public abstract User getUser(@Param("username")String username,@Param("pass")String password);
C public abstract User getUserByUsernameAndPassword(String username,String password);
D public abstract User
getUserByUsernameAndPassword(@Param("username")String username,@Param("pass")String password);
9.对下列代码解释正确的是(D)
<select id="loadchoose" parameterType="sram.beans.User" resultType="sram.beans.User"> SELECT * FROM t_user WHERE id = #{id} <choose> <when test="username!=null"> AND username = #{username} </when> <when test="password!=null"> AND password = #{password} </when> <otherwise> AND realname = #{realname} </otherwise> </choose> </select> |
A 如果前两个when条件都成立,那么otherwise条件也一定会执行
B 当要有一个when条件成立,其余when条件也做执行
C 如果choose中条件都为空,打印出的SQL语句为
SELECT * FROM t_user WHERE id = ? AND realname = ?
hibernate要学多久D 如果用户名和密码都存在,打印出的SQL语句为
SELECT * FROM t_user WHERE id = ? AND username= ? AND password=?
10.动态的添加WHERE 条件,如果username不为空,则对应的SQL语句为(B)
<select id="loadwhere" parameterType="sram.beans.User" AND passresultType="sram.beans.User"> SELECT * FROM t_user <where> <if test="username!=null"> AND username = #{username} </if> <if test="password!=null"> word = #{password} </if> <if test="realname!=null"> AND realname = #{realname} </if> </where> </select> |
A SELECT * FROM t_user WHERE username = ?
B SELECT * FROM t_user AND username = ?
C SELECT * FROM t_user WHERE AND username = ?
D SELECT * FROM t_user WHERE username = ? AND password=? AND realname=?
11.UPDATE 语句中,如果username不为空,则打印出来的SQL语句为(C)
<update id="update" parameterType="sram.beans.User"> UPDATE t_user <set> <if test="username!=null"> username = #{username}, </if> <if test="password!=null"> password = #{password}, </if> </set> WHERE id = #{id} </update> |
A UPDATE t_user username = ? WHERE id = ?
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论