CakePHPのコントローラと他のフレームワークのコントローラー

CakePHPのコントローラー

app/controllers配下に格納し、AppControllerを継承する。
ファイル名は、posts_controller.php

<?php
class PostsController extends AppController {
    var $name = 'Posts';

    function index() {
        $this->set('posts', $this->Post->find('all'));
    }

}
?>

※var $nameは、PHP4対応。


Railsのコントローラー

app/controllers配下に格納し、ApplicationControllerを継承する
ファイル名は、posts_controller.rb

class PostsController < ApplicationController

   def index
       @posts = Post.all
   end

end


SAStrutsのアクション(コントローラー)

SAStrutsでは、Seaser2を使うことによって継承が必要ない。
ファイル名は、PostsAction.java(※クラス名と同じにしなければならないので当たり前か)

public class PostsAction {

    public List<Posts> postsItems;

    @Resource
    protected PostsService postsService;

    @Execute(validator = false)
    public String index() {		
	postsItems = postsService.findAll();
        return "list.jsp";
    }
}

いずれも

http://△△△△△△△/cakeTest/posts/index

でアクセスする形になる。

※コンテキスト名は、cakeTestにしたとする。