root.get( 名前 ).as( タイプ.class)
root.get("id").as(Integer.class)http://localhost:8080/hello?find=hanako
criteria_query.select(root).where(builder.like(root.get("name").as(String.class), find));※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
// ※サーブレットに追記
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
@Override
protected void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String find = request.getParameter("find");
find = "%" + find + "%";
EntityManager manager = factory.createEntityManager();
CriteriaBuilder builder = manager.getCriteriaBuilder();
CriteriaQuery<MyDataEntity> criteria_query =
builder.createQuery(MyDataEntity.class);
Root<MyDataEntity> root = criteria_query.from(MyDataEntity.class);
criteria_query.select(root)
.where(builder.like(root.get("name").as(String.class), find));
Query query = manager.createQuery(criteria_query);
List list = query.getResultList();
request.setAttribute("list", list);
RequestDispatcher dispatcher = request.getRequestDispatcher("index.jsp");
dispatcher.forward(request,response);
}
| << 前へ | 次へ >> |