JFinal2.2初體驗(yàn)之Controller學(xué)習(xí)(三)

1.儲(chǔ)備知識(shí)

jfinal框架采用了傳統(tǒng)的MVC架構(gòu)設(shè)計(jì)行楞,來(lái)不及解釋了藕甩,快上車命爬。jfinal的Controller是線程安全的曹傀,所謂的線程安全就是在多線程訪問(wèn)時(shí),采用了加鎖機(jī)制來(lái)保護(hù)數(shù)據(jù)饲宛。這樣的做的好處是不會(huì)出現(xiàn)臟數(shù)據(jù)皆愉。

2.開始旅程

Controller中,最好保證它的純潔性,不要寫復(fù)雜的的業(yè)務(wù)邏輯代碼幕庐。當(dāng)然你要是喜歡的話久锥,那就把一大堆的業(yè)務(wù)代碼寫在Controller中,反正維護(hù)你代碼的人會(huì)一直問(wèn)候你的翔脱。Controller 其實(shí)主要負(fù)責(zé)action請(qǐng)求的分發(fā)和返回就好奴拦。

2.1 寫行代碼(醒醒腦)

在工程中新建html類型的文件,命名login.html届吁,代碼如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登錄頁(yè)面</title>
</head>
<body>
    <form action="/sinlogin/login">
        <label>賬號(hào):</label><input type="text" name="user.name"> <br /><br /> 
        <label>密碼:</label><input type="text" name="user.pwd"><br /><br />
        <button type="submit">登錄</button>
    </form>
</body>
</html>

頁(yè)面中有兩個(gè)input和一個(gè)button配合工作错妖。從代碼中可以看出一些細(xì)節(jié),比如action的指向疚沐,比如表單元素的name暂氯。

2.2劇情回顧(configRoute配置)

    /**
     * 配置路由
     */
    public void configRoute(Routes me) {
          //第一個(gè)參數(shù)是訪問(wèn)controller的key
          //第二個(gè)參數(shù)是要映射的controller
          // 第三個(gè)參數(shù)為該Controller的視圖存放路徑
          // 第三個(gè)參數(shù)省略時(shí)默認(rèn)與第一個(gè)參數(shù)值相同,在此即為 "/sinlogin"路徑
        me.add("/sinlogin",LoginController.class);
    }

2.3主角登場(chǎng)(Controller)

public class LoginController extends Controller{
     /**
     *固定寫法亮蛔,配置默認(rèn)的根路由
     */ 
     public void index(){
         render("login.html");
     }
     
    /**
     *login方法
     */
     public void login(){
         String name = getPara("user.name");     //獲取用戶名
         String pwd = getPara("user.pwd");          //獲取用戶密碼
         //輸出頁(yè)面上提交的信息痴施,不出意外信息輸出正常
         System.out.println("該用戶的用戶名是:"+name+",密碼是:"+pwd);
     }
}

2.4成雙成對(duì)(數(shù)據(jù)展示)

我們已經(jīng)學(xué)會(huì)了提交數(shù)據(jù)到后臺(tái)究流,那如果想從后臺(tái)獲取數(shù)據(jù)展示在頁(yè)面上該怎么辦么辣吃?別急,車子還沒(méi)停下來(lái)芬探,我們一起開神得。滴滴滴滴

     public void index(){
         //定義變量并賦值初始化
         String name = "yetangtang";
         String pwd = "123456";
         //利用setAttr 方法將數(shù)據(jù)傳遞給view(視圖) 
         setAttr("name",name);
         setAttr("pwd",pwd);
         //渲染頁(yè)面
         render("login.html");
     }

接下來(lái)修改html頁(yè)面的代碼,具體如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>登錄頁(yè)面</title>
</head>
<body>
    <form action="/sinlogin/login">
        <label>賬號(hào):</label><input type="text" name="user.name" value="${name!}"> <br /><br /> 
        <label>密碼:</label><input type="text" name="user.pwd" value="${pwd!}"><br /><br />
        <button type="submit">登錄</button>
    </form>
</body>
</html>

好厲害偷仿,你已經(jīng)成功get新技能了哩簿。大神,請(qǐng)收下我的膝蓋~

3.更多方法預(yù)覽

getPara 系列方法 :獲取頁(yè)面?zhèn)鬟f參數(shù)酝静;
getModel 與 getBean 系列方法 :獲取model(實(shí)體)节榜;
setAttr 方法 :展示數(shù)據(jù)到view;
getFile 系列方法:處理文件上傳别智;
renderFile 方法:處理文件下載 宗苍;
render 系列方法 :渲染視圖并返回客戶端;
session 操作方法 :處理session對(duì)象存儲(chǔ)與管理薄榛。

PS:愿小伙伴們學(xué)習(xí)進(jìn)步讳窟,有坑大家一起填。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蛇数,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子是越,更是在濱河造成了極大的恐慌耳舅,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,884評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異浦徊,居然都是意外死亡馏予,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門盔性,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)霞丧,“玉大人,你說(shuō)我怎么就攤上這事冕香∮汲ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵悉尾,是天一觀的道長(zhǎng)突那。 經(jīng)常有香客問(wèn)我,道長(zhǎng)构眯,這世上最難降的妖魔是什么愕难? 我笑而不...
    開封第一講書人閱讀 56,509評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮惫霸,結(jié)果婚禮上猫缭,老公的妹妹穿的比我還像新娘。我一直安慰自己壹店,他們只是感情好猜丹,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著茫打,像睡著了一般居触。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上老赤,一...
    開封第一講書人閱讀 49,837評(píng)論 1 290
  • 那天轮洋,我揣著相機(jī)與錄音,去河邊找鬼抬旺。 笑死弊予,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的开财。 我是一名探鬼主播汉柒,決...
    沈念sama閱讀 38,987評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼责鳍!你這毒婦竟也來(lái)了碾褂?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,730評(píng)論 0 267
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤历葛,失蹤者是張志新(化名)和其女友劉穎正塌,沒(méi)想到半個(gè)月后嘀略,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,194評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乓诽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評(píng)論 2 327
  • 正文 我和宋清朗相戀三年帜羊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鸠天。...
    茶點(diǎn)故事閱讀 38,664評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡讼育,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出稠集,到底是詐尸還是另有隱情奶段,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評(píng)論 4 330
  • 正文 年R本政府宣布巍杈,位于F島的核電站忧饭,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏筷畦。R本人自食惡果不足惜词裤,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望鳖宾。 院中可真熱鬧吼砂,春花似錦、人聲如沸鼎文。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)拇惋。三九已至周偎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間撑帖,已是汗流浹背蓉坎。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留胡嘿,地道東北人蛉艾。 一個(gè)月前我還...
    沈念sama閱讀 46,389評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像衷敌,于是被迫代替她去往敵國(guó)和親勿侯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法缴罗,類相關(guān)的語(yǔ)法助琐,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法面氓,異常的語(yǔ)法兵钮,線程的語(yǔ)...
    子非魚_t_閱讀 31,598評(píng)論 18 399
  • 從三月份找實(shí)習(xí)到現(xiàn)在沟堡,面了一些公司,掛了不少矢空,但最終還是拿到小米、百度禀横、阿里屁药、京東、新浪柏锄、CVTE酿箭、樂(lè)視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,213評(píng)論 11 349
  • 2002-2006年,我住在英國(guó)的時(shí)候趾娃,曾經(jīng)在當(dāng)?shù)厝A僑開辦的中文學(xué)校里擔(dān)任中文老師缭嫡,接觸了當(dāng)?shù)氐腂BC(英國(guó)土生土...
    laurawu閱讀 648評(píng)論 0 0
  • The Dark Side Of The Moon月缺 月亮有圓有缺,月亮的背面卻是人們最感興趣的抬闷。 人云:天有不...
    MrME_Lee閱讀 297評(píng)論 0 0
  • “十年寒窗妇蛀,十年苦干,再加上十足十的運(yùn)氣笤成,才能有一份事業(yè)评架。你別把事情看得太容易,大多數(shù)人只能有一份職業(yè)炕泳,借之糊口纵诞,...
    塔希提居士閱讀 674評(píng)論 1 1