这只不过是一个demo罢了,有什么好忽悠的,熟练JAVA的开发人员是不在乎什么框架的,而是随心所欲的使用JAVA,崇尚自由,不要被框架所框死,只要能有用就OK,我现在在简单应用中还使用servlet来控制页面跳转呢,随爱怎么所就怎么说。
> to houwei
> 我先show给你Seam中一个忽悠之处:
> 在http://docs.jboss.com/seam/1.0.1.GA/reference/en/htm
> /tutorial.html#d0e198
> 中Example 1.2. ,有下面一段代码:
>
>
>
> @Stateless
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> (1)
> @Name("register")
> public class RegisterAction implements Register
> {
>
> @In
> In
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> (2)
> private User user;
>
> @PersistenceContext
> xt
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> (3)
> private EntityManager em;
>
> @Logger
> er
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> (4)
> private Log log;
>
> public String register()
> ()
>
>
>
>
>
>
>
>
>
>
>
>
> (5)
> {
> List existing = em.createQuery("select username
> rname from User where username=:username")
> .setParameter("username",
> ername", user.getUsername())
> .getResultList();
>
> if (existing.size()==0)
> {
> em.persist(user);
> log.info("Registered new user
> new user #{user.username}");
> (6)
> return "/registered.jsp";
> ed.jsp";
>
>
>
>
>
> (7)
> }
> else
> {
> FacesMessages.instance().add("User
> dd("User #{user.username} already exists");
> (8)
> return null;
> }
> }
>
> }
>
>
>
> 这是表现层的Action/Controller,这个Action中耦合了数据?> 操作 以及Jsp界面输出(如return
> "/registered.jsp"),这不又回到两层结构吗?快速开发是靠
> 贡獠愦温穑咳绻钦庋拇葱拢厍蛉硕贾馈?>
> 作为表现层的Action/Controller其实是一个Mediator模式实?> ,主要负责前后台交互(复杂系统中前后台交互逻辑非常复杂
> Action和流程配置一起担负这项任务),前几天我们还在批?> Action中不要写业务逻辑:
> http://www.jdon.com/jive/article.jsp?forum=16
> thread=27452
>
> Gavin
> King倒好,不但在Action中写业务逻辑,数据库Dao也拉进来?> ,确实够快的,但是这样做但容易误导初学者了吧?
>