java隨記

          堅持就是勝利!

           

          ejb3 jsf實用實例


          有朋友問到使用ejb3時關(guān)于jsf實現(xiàn)多行選擇編輯記錄的問題。其實按照jsf編程模型也只不過按部就班而已,沒有什么好多說的。還是看實例好了。

          一,創(chuàng)建表格,插入兩條記錄備用.

              create table "spring"."dbo"."product"(

                  "productid" int not null,

                 "category" varchar(10) not null,

                 "name" varchar(80) null,

                 "descn" varchar(255) null,

                  constraint "PK__product__05D8E0BE" primary key ("productid")

          )

          insert into product (1,’圖書’,’計算機應(yīng)用’,計算機工業(yè)出版社’)

          insert into product (2,’圖書’,’計算機組成原理’,計算機工業(yè)出版社’)

          二,ejb3的實現(xiàn)

          1,             創(chuàng)建一個實體Product 沒什么好多說的,只是多增加了一個boolean屬性 editor,并且加了@Transient注釋用以說明該屬性不是持久化字段,增加該字段的目的也僅僅是為了判斷哪些記錄被選中了,以便處理選中了記錄.

          2,             創(chuàng)建會話bean

                  接口

            package ejb;

          import java.util.List;

           

          public interface ProductDao {

             

          public List getProducts() throws Exception;

             

                     public void saveProducts(List<entity.Product> products) throws Exception;

           

                    package ejb;

          Bean

          import javax.ejb.*;

          import java.util.List;

          import java.util.Iterator;

          import javax.persistence.EntityManager;

          import javax.persistence.PersistenceContext;

          import javax.persistence.Query;

          import entity.Product;

          @Stateful

          @Remote(ProductDao.class)

          public class ProductDaoBean {

           

           

              @PersistenceContext

              protected EntityManager em;

             

             

             

           public List getProducts()throws Exception{

              

                 

                   Query query = em.createQuery("from Product");

                   List list = query.getResultList();

                   em.clear();

                   return list;

             

          }

           

           

           public void saveProducts(List<Product> products){

           for(Iterator<Product> it = products.iterator();it.hasNext();){    

               Product p = it.next();

               em.merge(p);

           }

          }

          }

           

          3,             jsf頁面跟backing bean 前面兩篇blog也說過這方面的類容,沒什么好說的,也就不好了。

          需要說明的是本例服務(wù)器采用jboss5.0,數(shù)據(jù)庫用的MS SQL2000.完整實例下載

          posted on 2007-06-25 09:00 傻 瓜 閱讀(1491) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(7)

          我參與的團隊

          隨筆分類

          隨筆檔案

          文章分類

          友情鏈接

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 禄劝| 新邵县| 乌海市| 鄄城县| 丰城市| 武隆县| 康平县| 新泰市| 土默特左旗| 龙川县| 桐梓县| 内江市| 北辰区| 大足县| 晋中市| 昆明市| 开鲁县| 海南省| 西畴县| 清苑县| 江永县| 沙湾县| 乳山市| 镇雄县| 莎车县| 育儿| 东丰县| 和平县| 贺州市| 曲靖市| 华宁县| 民勤县| 石嘴山市| 屯门区| 喀喇沁旗| 安吉县| 巴彦淖尔市| 西峡县| 夹江县| 射阳县| 徐州市|