jfinal搭建(一)

本文爲eclipse開發java

  

一、建立Dynamic Web Project

1.png

二、填入項目基本信息

2.png

注意上圖中:Target runtime 必定要選擇<None>web

三、修改Default Output Folder,推薦輸入WebRoot\WEB-INF\classes

3.png

特別注意:此處的 Default out folder必需要與 WebRoot\WEB-INF\classes 目錄徹底一致纔可使用 JFinal 集成的 Jetty 來啓動項目。瀏覽器

四、修改Content directory,推薦輸入WebRoot

4.png

注意上圖:此處也可使用默認值WebContent, 但上一步中的WebRoot\WEB-INF\classes則須要改爲WebContent\WEB-INF\classes才能對應上。tomcat

五、放入JFinal庫文件

    將 jfinal-xxx.jar與jetty-server-8.1.8.jar拷貝至項目WEB-INF\lib下便可。注意:jetty-server-8.1.8.jar是開發時使用的運行環境,生產環境不須要此文件。app

   所須要的 jar 包能夠在 jfinal.com 首頁下載 jfinal-version-all.zip 文件,該文件中包含了所需的經常使用 jar 包,以及 jar 包使用說明。框架

六、修改web.xml

    將以下內容添加至web.xmleclipse

<filter>
    <filter-name>jfinal</filter-name>//應該就是添加過濾器都通過demo.DemoConfig,而後根據地址映射找到對應的controller執行
    <filter-class>com.jfinal.core.JFinalFilter</filter-class>
    <init-param>
       <param-name>configClass</param-name>
       <param-value>demo.DemoConfig</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>jfinal</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

七、添加java文件

    在項目src目錄下建立demo包,並在demo包下建立DemoConfig文件, 內容以下:webapp

package demo;

import com.jfinal.config.Constants;
import com.jfinal.config.Handlers;
import com.jfinal.config.Interceptors;
import com.jfinal.config.JFinalConfig;
import com.jfinal.config.Plugins;
import com.jfinal.config.Routes;
import com.jfinal.template.Engine;

public class DemoConfig extends JFinalConfig{
    @Override
    public void configConstant(Constants me) {
        // TODO Auto-generated method stub
        me.setDevMode(true);
    }
    @Override
    public void configEngine(Engine me) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void configHandler(Handlers me) {
        // TODO Auto-generated method stub
        
    }
    @Override
    public void configInterceptor(Interceptors me) {
        // TODO Auto-generated method stub
        
    }
    @Override
    public void configPlugin(Plugins me) {
        // TODO Auto-generated method stub
        
    }
    @Override
    public void configRoute(Routes me) {
        // TODO Auto-generated method stub
        me.add("/hello", HelloController.class);//這裏應該就是地址的映射
        me.add("/hello2", HelloController2.class);
    }
}

 注意:DemoConfig.java文件所在的包以及自身文件名必須與web.xml中的param-value標籤內的配置相一致(在本例中該配置爲demo.DemoConfig)。maven

 在demo包下建立HelloController HelloController2類文件, 內容以下:ide

 1 package demo;
 2 
 3 import com.jfinal.core.Controller;
 4 
 5 public class HelloController extends Controller{
 6     public void index(){
 7         renderText("hahhahahhahahh");
 8     }
 9 }
10 
11 
12 
13 package demo;
14 
15 import com.jfinal.core.Controller;
16 
17 public class HelloController2 extends Controller{
18     public void index(){
19         renderText("hahhahahhahahh22222");
20     }
21 }

八、啓動項目

  使用一個任意的main方法代替。在任意一個類文件中添加一個main啓動集成的jetty以下圖所示:

1 package demo;
2 
3 import com.jfinal.core.JFinal;
4 
5 public class DemoStart {
6     public static void main(String[] args) {
7         JFinal.start("WebRoot", 80, "/", 5);
8     }
9 }    

 上面代碼中的四個參數與前面介紹中的同樣,注意根據本身的項目結構進行更改。上面的第一個參數」src/main/webapp」 適用於標準的maven項目,若是是非maven的老式java web 項目,第一個參數一般是」WebRoot」或」WebContent」。

 

注意:由於在建立web項目的時候可能用自動加上tomcat的jar包,可是這種啓動方法會報錯,解決辦法就是去掉。

右鍵 remove

 

第二種啓動:jfinal是屬於普通的web項目的,因此原有的項目啓動和部署知識所有有效。可是須要去掉對jetty-server-8.1.8.jar 的依賴。

九、開啓瀏覽器看效果

    打開瀏覽器在地址欄中輸入: http://localhost/hellohttp://localhost/hello2,輸出內容 證實項目框架搭建

相關文章
相關標籤/搜索