hibernate数据库操作基础

1.根据主键查询

session.load(Role.class, "33")

session.get(Role.class, "33")

get 和 load 方法的区别:详见:https://www.cnblogs.com/lukelook/p/9684782.html

2.getSession().createSQLQuery(sql)和session.createQuery(sql)

前者用的是SQL语句,后者用的HQL语句。

1)getSession().createSQLQuery(sql)

@Override
    public List<Role> getAllRoles() {
        // TODO Auto-generated method stub
        List<Role> roles = null;        
        String sql = "SELECT * FROM tbl_role where Role_Server = ? ";
        Query query = sessionFactory.getCurrentSession().createSQLQuery(sql);
        query.setString(0, "一梦十年");//参数从0开始
        roles = query.list();        
        return roles;
    }

2)session.createQuery(sql)

@Override
    public List<Role> getAllRoles() {
        // TODO Auto-generated method stub
        List<Role> roles = null;        
        String sql = "FROM Role r where r.roleServer = ?0 ";
        Query query = sessionFactory.getCurrentSession().createQuery(sql);
        query.setString("0", "一梦十年");
        roles = query.list();        
        return roles;
    }

猜你喜欢

转载自www.cnblogs.com/lukelook/p/9686713.html