springboot jpa Query使用原生SQL例子--测试通过

来源:互联网 发布:手机淘宝怎么没有直播 编辑:程序博客网 时间:2024/06/06 02:43
    private EntityManagerFactory emf;    @PersistenceUnit//使用这个标记来注入EntityManagerFactory    public void setEntityManagerFactory(EntityManagerFactory emf) {        this.emf = emf;    }    @Test    public void test(){        EntityManager em = emf.createEntityManager();        //加了这句就不会报错       em.getTransaction().begin();        Query query = null;        //定义SQL,可以多个表关联查询        String sql = "SELECT * FROM USER WHERE ID=?1";        //创建原生SQL查询QUERY实例        query =  em.createNativeQuery(sql);        query.setParameter(1, "2014344154");        //执行查询,返回的是对象数组(Object[])列表,        //每一个对象数组存的是相应的实体属性        List objecArraytList = query.getResultList();        for(int i=0;i<objecArraytList.size();i++) {            Object[] obj = (Object[]) objecArraytList.get(i);            //使用obj[0],obj[1],obj[2]...取出属性                         System.out.println("id = " + obj[0]);            System.out.println("name = " + obj[1]);            System.out.println("age = " + obj[2]);                       }        em.close();    }