Java|mybatis demo之查询测试

接前文,操作数据库,通过session.selectOne查询user的id,sql语句被隐藏在UserMapper.xml里了,那么session.selectOne又通过UserMapper.selectUserById参数检索到了隐藏的sql语句,通过参数值1指配给参数id。

//操作数据库 executor执行 User user = session.selectOne("UserMapper.selectUserById", 1); System.out.println(user);

UserMapper.xml里的mapper内容修改如下:
id="selectUserById" parameterType="Integer" resultType="com.zzz.bean.User"> select * from user where u_id = #{id}

这就是mybatis的风格。
再来一个模糊查询,需要更改的还是操作数据库那段代码
//操作数据库 executor执行 List list = session.selectList("UserMapper.selectUserByName", "王"); for (User u : list) { System.out.println(u); }

UserMapper.xml里的mapper内容增加一个select标签,在模糊查询中,参数名value是固定的,否则会报错:
id="selectUserByName" parameterType="String" resultType="com.zzz.bean.User"> select * from user where u_username like '%${value}%'

【Java|mybatis demo之查询测试】为了显示详细日志,在src文件下添加一个log4j.properties配置文件,内容如下:
# Global logging configuration log4j.rootLogger=DEBUG, stdout # Console output... log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

    推荐阅读