NetBeans 下使用EJB的例子

来源:互联网 发布:java 修改final变量 编辑:程序博客网 时间:2024/05/16 10:41

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

1.新建JAVA 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的方法代码:

@Statelesspublic 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即可看到结果.

0 0
原创粉丝点击