码迷,mamicode.com
首页 > 其他好文 > 详细

02_模糊查询

时间:2016-07-23 23:03:01      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

【工程截图和数据库同01】

 

 

【user.xml】

根据用户名来查询对应的User

<select id="findUserByName" parameterType="java.lang.String" resultType="com.Higgin.Mybatis.po.User">
      SELECT *  FROM USER WHERE username LIKE #{value}
</select> <select id="findUserByName2" parameterType="java.lang.String" resultType="com.Higgin.Mybatis.po.User"> SELECT * FROM USER WHERE username LIKE ‘%${value}%‘ </select>

1.根据用户名称模糊查询用户信息,可能返回多条
2.resultType :指定就是单条记录所映射的java对象类型
3.${ }:表示拼接sql字符串,将接受到参数的内容不加任何修饰拼接在sql中。
4.使用${}拼接字符串,引起sql注入,不建议使用
5.${value}:接受输入参数的内容,如果传入类型是简单的类型,${}中只能使用value

 

【MyBatisTest.java】

@Test
    public void testFindUserByName() throws IOException{
        //mybatis配置文件
        String resource="SqlMapConfig.xml";
        
        //得到配置文件
        InputStream inputStream=Resources.getResourceAsStream(resource);
        
        //创建会话工厂,传入mybatis的配置文件信息
        SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);

        //通过工厂得到SqlSession
        SqlSession sqlSession=sqlSessionFactory.openSession();
        
        //通过SqlSession操作数据库
        //第一个参数:银蛇文件中statement的id,等于:namespace+"."+statement的id
        //第二个参数:指定换个映射文件中的所撇皮的parameterType类型的参数
        List<User> userList=sqlSession.selectList("test.findUserByName2", "小明");  //不推荐!!!!以引起SQL注入
        for (User user : userList) {
            System.out.println(user.toString());
        }
        
        //释放资源
        sqlSession.close();
    }

 

【运行结果如下】

技术分享

 

【MyBatisTest.java】

@Test
    public void testFindUserByName() throws IOException{
        //mybatis配置文件
        String resource="SqlMapConfig.xml";
        
        //得到配置文件
        InputStream inputStream=Resources.getResourceAsStream(resource);
        
        //创建会话工厂,传入mybatis的配置文件信息
        SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);

        //通过工厂得到SqlSession
        SqlSession sqlSession=sqlSessionFactory.openSession();
        
        //通过SqlSession操作数据库
        //第一个参数:银蛇文件中statement的id,等于:namespace+"."+statement的id
        //第二个参数:指定换个映射文件中的所撇皮的parameterType类型的参数
        List<User> userList=sqlSession.selectList("test.findUserByName", "%小明%");  //推荐
        for (User user : userList) {
            System.out.println(user.toString());
        }
        
        //释放资源
        sqlSession.close();
    }

 

 【运行结果】

技术分享

 

02_模糊查询

标签:

原文地址:http://www.cnblogs.com/HigginCui/p/5699558.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!