名前をつけない場合―― ?1 ?2 ?3
名前を付ける場合―― :名前
select x from MyDataEntity x where x.id = ?1
select x from MyDataEntity x where x.id = :名前
entity.createNamedQuery( クエリー名 ).setParameter( 指定 , 値 );
select x from MyDataEntity x where x.id = ?1
select x from MyDataEntity x where x.id = :id_value
変数 = entity.createNamedQuery( クエリー名 ).setParameter( 1, 0 );
変数 = entity.createNamedQuery( クエリー名 ).setParameter( "id_value", 0 );
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
// ※MyDataEntityクラスのアノテーション import javax.persistence.NamedQuery; @NamedQuery( name="findEntityNameLike", query="select d from MyDataEntity d where d.name like :find" ) // ※サーブレット側のdoGet @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { EntityManager manager = factory.createEntityManager(); String p = request.getParameter("p"); Query query = manager.createNamedQuery("findEntityNameLike") .setParameter("find", p); List list = query.getResultList(); request.setAttribute("list", list); RequestDispatcher dispatcher = request.getRequestDispatcher("index.jsp"); dispatcher.forward(request,response); }
<< 前へ | 次へ >> |