您的位置:首页 > 编程语言 > Java开发

NetBeans 下使用EJB的例子

2015-06-06 16:58 537 查看
由于参加了大学生创新项目,跟研究生做的项目不用MyEclipse,而是用NetBeans....所以,发一帖近期来在NetBeans上使用EJB的样例,给刚入门的同志参考参考.

1.新建J***A EE项目(一些简单的步骤这里就不截图了) 如下图,勾上创建EJB,和WAR.

2.在EJB的源包下创建两个包:bean和sessionBean

3.右击bean->新建->通过数据库生成实体类 ,要通过自己创建的数据库实例来获取对应的bean,这里我是用mysql来创建的,其他数据库应该类似.

4.点击下一步,再点击完成,之后就会在bean包下看到一个自动生成的User类.

5.右击sessionBean->新建->会话bean ,改好名字.

6.在生成的NewSessionBean中,右键->插入代码->使用实体管理器,之后就会自动生成一个EntityManager.

7.写一个Servlet,来测试EJB,在war包下的源包中,添加一个servlet包,新建一个servlet,在创建好的servlet中,右键->插入代码->调用企业Bean, 选择ejb项目中刚刚创建的sessionBean,附上servlet和sessionBean的方法代码:

@Stateless
public class UserSessionBean implements UserSessionBeanLocal {
    @PersistenceContext(unitName = "EnterpriseApplication5-ejbPU")
    private EntityManager em;

    public void persist(Object object) {
        em.persist(object);
    }

    @Override
    public List findAll() {
       Query query= em.createNativeQuery("select * from user");
       return query.getResultList();//返回所有查到的数据
    }

}


public class MyServlet extends HttpServlet {
    @EJB
    private UserSessionBeanLocal userSessionBean;

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
       List list=userSessionBean.findAll();
       PrintWriter out=response.getWriter();
       Iterator it=list.iterator();
       while(it.hasNext()){
           Object[] obj=(Object[]) it.next();//由于查到的数据放在了List中,每条记录都以Object[]的形式存放,所以要转换为Object[]
           for(int i=0;i<obj.length;i++){
               out.print(obj[i]+" ");
           }
           out.print("<br><br>");
       }
    }

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

}
8.最后,写一个jsp页面,使用一个超链接来调用servlet即可看到结果.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: