Google App Engin (JAVA) でぶち当たった問題 その6・パート2

GAEでLike検索を行う方法は前回のエントリーで記載しましたが、Low-Level APIを利用していたので扱いが面倒なのでJPAで試してみました。

        EntityManager em = null;
        EntityTransaction tx = null;
        Marker marker = null;
        char ch = '\ufffd';

em = EMF.get().createEntityManager();
            tx = em.getTransaction();
            tx.begin();


Query query = em.createQuery("SELECT m FROM "
                        + Marker.class.getName()
                        + " m WHERE m.deleteFlag = false"
                        + " AND m.geohash >= ?1 AND m.geohash < ?2"); 

                query.setParameter(1, geohash);
                query.setParameter(2, geohash+ch);        
                list = (List<Marker>) query.getResultList();

上記の例でも検索を行うことは可能です。