国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

choices參數(shù)的使用、MTV和MVC的概念、對多的三種創(chuàng)建方式、Ajax技術(shù)

這篇具有很好參考價值的文章主要介紹了choices參數(shù)的使用、MTV和MVC的概念、對多的三種創(chuàng)建方式、Ajax技術(shù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、choices參數(shù)的使用

choices它是ORM中常用字段中的參數(shù)

choices的作用:
	類似于一些字段:性別、學歷、客戶來源、是否上學、是否結(jié)婚等字段

# 針對于一些字段它的情況能夠被列舉完,像這樣的字段,我們在表中存儲的時候一般使用choices參數(shù)
案例

class Customer(models.Model):
    """
    客戶表
    """
    qq = models.CharField(verbose_name='qq', max_length=64, unique=True, help_text='QQ號必須唯一')

    name = models.CharField(verbose_name='學生姓名', max_length=16)
    gender_choices = ((1, '男'), (2, '女'))
    gender = models.SmallIntegerField(verbose_name='性別', choices=gender_choices)

    education_choices = (
        (1, '重點大學'),
        (2, '普通本科'),
        (3, '獨立院校'),
        (4, '民辦本科'),
        (5, '大專'),
        (6, '民辦???),
        (7, '高中'),
        (8, '其他')
    )
    education = models.IntegerField(verbose_name='學歷', choices=education_choices, blank=True, null=True, )
    graduation_school = models.CharField(verbose_name='畢業(yè)學校', max_length=64, blank=True, null=True)
    major = models.CharField(verbose_name='所學專業(yè)', max_length=64, blank=True, null=True)

    experience_choices = [
        (1, '在校生'),
        (2, '應(yīng)屆畢業(yè)'),
        (3, '半年以內(nèi)'),
        (4, '半年至一年'),
        (5, '一年至三年'),
        (6, '三年至五年'),
        (7, '五年以上'),
    ]
    experience = models.IntegerField(verbose_name='工作經(jīng)驗', blank=True, null=True, choices=experience_choices)
    work_status_choices = [
        (1, '在職'),
        (2, '無業(yè)')
    ]
    work_status = models.IntegerField(verbose_name="職業(yè)狀態(tài)", choices=work_status_choices, default=1, blank=True,
                                      null=True)
    company = models.CharField(verbose_name="目前就職公司", max_length=64, blank=True, null=True)
    salary = models.CharField(verbose_name="當前薪資", max_length=64, blank=True, null=True)

    source_choices = [
        (1, "qq群"),
        (2, "內(nèi)部轉(zhuǎn)介紹"),
        (3, "官方網(wǎng)站"),
        (4, "百度推廣"),
        (5, "360推廣"),
        (6, "搜狗推廣"),
        (7, "騰訊課堂"),
        (8, "廣點通"),
        (9, "高校宣講"),
        (10, "渠道代理"),
        (11, "51cto"),
        (12, "智匯推"),
        (13, "網(wǎng)盟"),
        (14, "DSP"),
        (15, "SEO"),
        (16, "其它"),
    ]
    source = models.SmallIntegerField('客戶來源', choices=source_choices, default=1)
    referral_from = models.ForeignKey(
        'self',
        blank=True,
        null=True,
        verbose_name="轉(zhuǎn)介紹自學員",
        help_text="若此客戶是轉(zhuǎn)介紹自內(nèi)部學員,請在此處選擇內(nèi)部學員姓名",
        related_name="internal_referral"
    )
    course = models.ManyToManyField(verbose_name="咨詢課程", to="Course")

    status_choices = [
        (1, "已報名"),
        (2, "未報名")
    ]
    status = models.IntegerField(
        verbose_name="狀態(tài)",
        choices=status_choices,
        default=2,
        help_text=u"選擇客戶此時的狀態(tài)"
    )

    consultant = models.ForeignKey(verbose_name="課程顧問", to='UserInfo', related_name='consultanter',
                                   limit_choices_to={'depart': 1001})

    date = models.DateField(verbose_name="咨詢?nèi)掌?, auto_now_add=True)
    recv_date = models.DateField(verbose_name="當前課程顧問的接單日期", null=True)
    last_consult_date = models.DateField(verbose_name="最后跟進日期", )

    def __str__(self):
        return self.name


class ConsultRecord(models.Model):
    """
    客戶跟進記錄
    """
    customer = models.ForeignKey(verbose_name="所咨詢客戶", to='Customer')
    consultant = models.ForeignKey(verbose_name="跟蹤人", to='UserInfo', limit_choices_to={'depart': 1001})
    date = models.DateField(verbose_name="跟進日期", auto_now_add=True)
    note = models.TextField(verbose_name="跟進內(nèi)容...")

    def __str__(self):
        return self.customer.name + ":" + self.consultant.name


class Student(models.Model):
    """
    學生表(已報名)
    """
    customer = models.OneToOneField(verbose_name='客戶信息', to='Customer')
    class_list = models.ManyToManyField(verbose_name="已報班級", to='ClassList', blank=True)

    emergency_contract = models.CharField(max_length=32, blank=True, null=True, verbose_name='緊急聯(lián)系人')
    company = models.CharField(verbose_name='公司', max_length=128, blank=True, null=True)
    location = models.CharField(max_length=64, verbose_name='所在區(qū)域', blank=True, null=True)
    position = models.CharField(verbose_name='崗位', max_length=64, blank=True, null=True)
    salary = models.IntegerField(verbose_name='薪資', blank=True, null=True)
    welfare = models.CharField(verbose_name='福利', max_length=256, blank=True, null=True)
    date = models.DateField(verbose_name='入職時間', help_text='格式y(tǒng)yyy-mm-dd', blank=True, null=True)
    memo = models.CharField(verbose_name='備注', max_length=256, blank=True, null=True)

    def __str__(self):
        return self.customer.name


class ClassStudyRecord(models.Model):
    """
    上課記錄表 (班級記錄)
    """
    class_obj = models.ForeignKey(verbose_name="班級", to="ClassList")
    day_num = models.IntegerField(verbose_name="節(jié)次", help_text=u"此處填寫第幾節(jié)課或第幾天課程...,必須為數(shù)字")
    teacher = models.ForeignKey(verbose_name="講師", to='UserInfo', limit_choices_to={'depart': 1002})
    date = models.DateField(verbose_name="上課日期", auto_now_add=True)

    course_title = models.CharField(verbose_name='本節(jié)課程標題', max_length=64, blank=True, null=True)
    course_memo = models.TextField(verbose_name='本節(jié)課程內(nèi)容概要', blank=True, null=True)
    has_homework = models.BooleanField(default=True, verbose_name="本節(jié)有作業(yè)")
    homework_title = models.CharField(verbose_name='本節(jié)作業(yè)標題', max_length=64, blank=True, null=True)
    homework_memo = models.TextField(verbose_name='作業(yè)描述', max_length=500, blank=True, null=True)
    exam = models.TextField(verbose_name='踩分點', max_length=300, blank=True, null=True)

    def __str__(self):
        return "{0} day{1}".format(self.class_obj, self.day_num)


class StudentStudyRecord(models.Model):
    '''
    學生學習記錄
    '''
    classstudyrecord = models.ForeignKey(verbose_name="第幾天課程", to="ClassStudyRecord")
    student = models.ForeignKey(verbose_name="學員", to='Student')

    record_choices = (('checked', "已簽到"),
                      ('vacate', "請假"),
                      ('late', "遲到"),
                      ('noshow', "缺勤"),
                      ('leave_early', "早退"),
                      )
    record = models.CharField("上課紀錄", choices=record_choices, default="checked", max_length=64)
    score_choices = ((100, 'A+'),
                     (90, 'A'),
                     (85, 'B+'),
                     (80, 'B'),
                     (70, 'B-'),
                     (60, 'C+'),
                     (50, 'C'),
                     (40, 'C-'),
                     (0, ' D'),
                     (-1, 'N/A'),
                     (-100, 'COPY'),
                     (-1000, 'FAIL'),
                     )
    score = models.IntegerField("本節(jié)成績", choices=score_choices, default=-1)
    homework_note = models.CharField(verbose_name='作業(yè)評語', max_length=255, blank=True, null=True)
    note = models.CharField(verbose_name="備注", max_length=255, blank=True, null=True)

    homework = models.FileField(verbose_name='作業(yè)文件', blank=True, null=True, default=None)
    stu_memo = models.TextField(verbose_name='學員備注', blank=True, null=True)
    date = models.DateTimeField(verbose_name='提交作業(yè)日期', auto_now_add=True)

    def __str__(self):
        return "{0}-{1}".format(self.classstudyrecord, self.student)


-------------------------------------------------------------------------------
test中制作測試環(huán)境
import os
import sys


if __name__ == '__main__':
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'day61.settings')
    import django
    django.setup()
    from app01 import models

    # 1.增加數(shù)據(jù)
    # models.UserInfo.objects.create(username='張三', gender=1)
    # models.UserInfo.objects.create(username='李四', gender=2)
    # models.UserInfo.objects.create(username='王五', gender=3)
    # models.UserInfo.objects.create(username='趙六', gender=4)

    # 2.讀取數(shù)據(jù)
    # res = models.UserInfo.objects.filter(pk=1).first()
    
    # 如果使用get就得拋出,否則獲取不到數(shù)據(jù)會報錯
    try:
        res = models.UserInfo.objects.get(pk=1)
        print(res)

        # 取值時不推薦使用這種
        # if res.gender == 1:
        #     gender = '男'
        # elif res.gender == 2:
        #     gender = '女'
        # else:
        #     gender = '未知'

        # 推薦使用
        print(res.get_gender_display())  # 男
    except Exception as e:
        print(e, '該數(shù)據(jù)不存在')

二、MTV和MVC的概念

把Django框架的執(zhí)行流程做分層
	在Django中分的是MTV
	在其他語言中分的是MVC

# 這兩個本質(zhì)上都是一樣的
Web服務(wù)器開發(fā)領(lǐng)域里著名的MVC模式,所謂MVC就是把Web應(yīng)用分為模型(M),控制器(C)和視圖(V)三層,
Web服務(wù)器開發(fā)領(lǐng)域里著名的MTV模式,所謂MVC就是把Web應(yīng)用分為模型(M),控制器(V)和視圖(T)三層,

# Java、PHP文件名的命名是:
Login.Controller.java
Login.Controller.php

● M 代表模型(Model): 負責業(yè)務(wù)對象和數(shù)據(jù)庫的關(guān)系映射(ORM)。
● T 代表模板 (Template):負責如何把頁面展示給用戶(html)。
● V 代表視圖(View): 負責業(yè)務(wù)邏輯,并在適當時候調(diào)用Model和Template。
● S 代表視圖(Services): 只有在業(yè)務(wù)邏輯相當復(fù)雜的時候,才分這一層,服務(wù)層,專門用來寫業(yè)務(wù)邏輯

三、多對多的三種創(chuàng)建方式

多對多的關(guān)系是借助于第三張表實現(xiàn)的
	通過一個虛擬字段創(chuàng)建的第三張表:authors = models.ManyToManyField(to='') # 全自動的

多對多的創(chuàng)建方式
方式一:全自動
class Book(models.Model):
    title = models.CharField(max_length=64)
    # 全自動創(chuàng)建多對多的關(guān)系
    '''
        特點:第三張表不需要我們自己來創(chuàng)建,通過這個虛擬字段自動創(chuàng)建出來第三張表
             authors字段不會再表中創(chuàng)建出來字段
             那么以后你在查詢的時候,可以使用正反向查詢和那四個方法 add set remove clear
        它的劣勢就是:表的擴展性很差
    '''
    # 若使用手動創(chuàng)建第三張表,則這個authors就不需要了
    # authors = models.ManyToManyField(to='Author', through='Book2Author', through_fields=('book','author'))


class Author(models.Model):
    name = models.CharField(max_length=128)
    '''
        through_fields的意思是指定第三張表中的哪些字段需要添加關(guān)系字段
        
        注意:models.ManyToManyField 這句話寫在作者表,
            那么through_fields中的順序就是先author再book,
            反之就是先book再author
    '''
    books = models.ManyToManyField(to='Book', through='Book2Author', through_fields=('author','book'))

方式二:全手動
	第三張表需要我們自己手動創(chuàng)建,不會在自動創(chuàng)建了
'''
    優(yōu)勢:擴展性非常好
    劣勢:不能使用四個方法 add set remove clear
    需要使用create、update、delete
'''
# class Book2Author(models.Model):
#     book = models.ForeignKey(to='Book', on_delete=models.CASCADE)
#     author = models.ForeignKey(to='Author', on_delete=models.CASCADE)
#     create_time = models.DateTimeField(auto_now_add=True)


方式三:
	半自動:支持正反向查詢的,但是不支持那四個方法
class Book2Author(models.Model):
    book = models.ForeignKey(to='Book', on_delete=models.CASCADE)
    author = models.ForeignKey(to='Author', on_delete=models.CASCADE)
    create_time = models.DateTimeField(auto_now_add=True)
    

四、Ajax技術(shù)簡介

Ajax屬于是前端的內(nèi)容,不屬于Python范圍的,但是它必須結(jié)合后端來使用,否則也沒有太大的意義,因為它是把前端的數(shù)據(jù)提交到后端的

form表單來提交數(shù)據(jù)到后端,但是,它每次提交數(shù)據(jù)都需要刷新頁面,如果都刷新頁面體驗就不好
Ajax技術(shù)就是局部刷新,異步提交,它不需要刷新整個頁面,只需要刷新局部的,主要就是刷新的時候是無感知的

Ajax的特點:
	局部刷新
	異步提交

案例:Github的注冊案例

基于jquery的Ajax實現(xiàn)
# 我們知道Ajax它js是語言,所以它肯定能夠使用js實現(xiàn),但是,js實現(xiàn)太麻煩了,總共分四個步驟
# 我們不學學習js版本的ajax,我們學習jQuery封裝之后的Ajax,把Ajax的使用表的非常簡單

23種設(shè)計模式:單例模式,工廠模式,注冊樹模式等等

Ajax使用小案例

我們使用的ajax是jQuery封裝之后的版本,所以,要想使用Ajax必須導(dǎo)入jQuery庫

語法:
$.ajax({
	 // 1. 指定參數(shù)提交到后端的哪個地址?
     url:'',  // 如果不寫就是朝當前地址提交
     
     // 2. 指定以什么請求方式提交的 get post
     type:'post',

     // 3. 指定要傳遞的數(shù)據(jù)
     data: {},
     //dataType:'json', //指定序列化格式
     
     // 4. 回調(diào)函數(shù),接收后端返回的數(shù)據(jù)
     success:function (res) {}
})

                    
views.py中的代碼:
def index(request):

    # print(request.is_ajax()) # True False
    if request.method == 'POST':
        # 接收參數(shù)
        # d1 = request.POST.get('d1')
        # d2 = request.POST.get('d2')
        #
        # # 做運算
        # d3 = int(d1) + int(d2)

        d = {'code': 200, 'msg': '請求方式', 'data': {'username': '老林'}}

        # return HttpResponse(d3)

        import json
        res = json.dumps(d, ensure_ascii=False)
        '''
            若前端不想使用JSON.parse(res),且后端還使用HttpResponse(res),
            則在前端加上 dataType: 'json' 指定json格式
        '''
        return HttpResponse(res)

        # '''
        #     如果后端使用了JsonResponse(d),則前端不需要JSON.parse(res)
        # '''
        # return JsonResponse(d)

    return render(request, 'index.html')

前端頁面的代碼:
<input type="text" id="d1">+
<input type="text" id="d2">=
<input type="text" id="d3">
<button class="btn btn-info">計算</button>


{# 綁定事件 #}
<script>
    $('.btn').click(function (){
        //獲取兩個輸入框中的值
        var d1 = $("#d1").val();
        var d2 = $("#d2").val();

        //把前端輸入的值提交到后端計算
        //問題是如何提交到后端
        //使用ajax提交
        $.ajax({
            // 1.指定參數(shù)提交到后端的哪個地址?
            url: '', // 如果不寫就是朝當前地址提交

            // 2.指定以什么請求方式提交的  get  post,如果不指定就是get
            type: 'post',

            // 3.指定藥傳遞的數(shù)據(jù)
            data: {d1: d1, d2: d2},
            {#data: {'d1': d1, 'd2': d2},#}

            dataType: 'json', {# 不使用 res = JSON.parse(res)序列化,但是還需要使用HttpResponse()時就使用這個指定格式 #}

            // 4.回調(diào)函數(shù):接收后端返回的數(shù)據(jù)
            success: function (res){
                {#console.log(res);#}
                {#console.log(typeof res);#}
                {# 設(shè)置d3的value值 #}
                {#$('#d3').val(res)#}

                {# 前端怎么反序列化? #}
                {#res = JSON.parse(res)#}
                console.log(res)
                console.log(typeof res)
                console.log(res.code)
                console.log(res.data)
                console.log(res.data.username)
                console.log(res.msg)
        },

        })

    })
</script>
                
總結(jié):
     1. 后端如果使用return JsonResponse(d), 前端不用反序列化,直接當成對象使用
     2. 后端使用return HttpResponse(res),前端需要自己反序列化:res= JSON.parse(res)
     3. 后端使用return HttpResponse(res),前端不反序列化,需要指定參數(shù):dataType:'json'                  

name屬性和value屬性

name 屬性:
	name 屬性用于標識表單字段的名稱,這個名稱在提交表單時將作為數(shù)據(jù)的鍵名傳遞給服務(wù)器。
	每個表單字段(如輸入框、復(fù)選框、單選按鈕等)都應(yīng)該有一個唯一的 name 屬性。
	通過 name 屬性,服務(wù)器端腳本或后端應(yīng)用程序可以識別和獲取相應(yīng)的表單數(shù)據(jù)。
	在 HTML 表單中,表單字段的 name 屬性通常結(jié)合服務(wù)器端代碼來處理表單數(shù)據(jù),例如 PHP、ASP.NET、Node.js 等。

value 屬性:
	value 屬性定義表單字段的初始值,或者在用戶輸入數(shù)據(jù)后,將包含用戶輸入的值。
	對于文本輸入框、密碼框、文本區(qū)域等,value 屬性設(shè)置默認文本或用戶已輸入的文本。
	對于單選按鈕和復(fù)選框,value 屬性指定了該選項提交時傳遞給服務(wù)器的值。
	對于下拉菜單(<select> 元素),value 屬性指定每個選項的值。
	用戶在表單字段中輸入的數(shù)據(jù)將會覆蓋 value 屬性中設(shè)置的默認值。


文章來源地址http://www.zghlxwxcb.cn/news/detail-642773.html

到了這里,關(guān)于choices參數(shù)的使用、MTV和MVC的概念、對多的三種創(chuàng)建方式、Ajax技術(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Java 新手如何使用Spring MVC 中的查詢字符串和查詢參數(shù)

    Java 新手如何使用Spring MVC 中的查詢字符串和查詢參數(shù)

    目錄 前言? ?什么是查詢字符串和查詢參數(shù)? Spring MVC中的查詢參數(shù)? 處理可選參數(shù) 處理多個值 處理查詢參數(shù)的默認值 處理查詢字符串 示例:創(chuàng)建一個RESTful服務(wù)? 總結(jié) 作者簡介: ?懶大王敲代碼,計算機專業(yè)應(yīng)屆生 今天給大家聊聊Java 新手如何使用Spring MVC 中的查詢字符串

    2024年02月03日
    瀏覽(27)
  • Spring MVC參數(shù)接收、參數(shù)傳遞

    Spring MVC參數(shù)接收、參數(shù)傳遞

    Springmvc中,接收頁面提交的數(shù)據(jù)是通過方法形參來接收: 處理器適配器調(diào)用springmvc使用反射將前端提交的參數(shù)傳遞給controller方法的形參 springmvc接收的參數(shù)都是String類型,所以spirngmvc提供了很多converter(轉(zhuǎn)換器)在特殊情況下需要自定義converter,如對日期數(shù)據(jù) 編寫controller ?

    2024年01月16日
    瀏覽(24)
  • Spring MVC 參數(shù)接收

    Spring MVC 參數(shù)接收

    Springmvc中,接收頁面提交的數(shù)據(jù)是通過方法形參來接收: 處理器適配器調(diào)用springmvc使用反射將前端提交的參數(shù)傳遞給controller方法的形參 springmvc接收的參數(shù)都是String類型,所以spirngmvc提供了很多converter(轉(zhuǎn)換器)在特殊情況下需要自定義converter,如對日期數(shù)據(jù) 編寫controller 在

    2024年01月23日
    瀏覽(58)
  • 【Spring MVC學習】連接 && 接收請求參數(shù) && 響應(yīng)返回參數(shù)

    【Spring MVC學習】連接 && 接收請求參數(shù) && 響應(yīng)返回參數(shù)

    目錄 前言:認識Spring MVC ??1、什么是MVC? 一、建立連接(5個注解) ??1、@RequestMapping注解:注冊接?的路由映射(默認返回頁面) ??2、@ResponseBody注解:表示返回的是數(shù)據(jù) ???3、組合注解@RestController = @ResponseBody + @Controller ??4、支持Get請求的2種寫法@GetMapping +?@RequestMapp

    2024年02月16日
    瀏覽(30)
  • Spring MVC 請求參數(shù)綁定

    Spring MVC 請求參數(shù)綁定

    Spring MVC 是一個用于構(gòu)建 Web 應(yīng)用程序的框架,它提供了一種方便的方式來處理 HTTP 請求和響應(yīng)。在 Spring MVC 中,請求參數(shù)綁定是將 HTTP 請求中的參數(shù)映射到控制器方法的參數(shù)上的過程。Spring MVC 提供了多種方式來實現(xiàn)請求參數(shù)綁定。 請求參數(shù)綁定:說?了SpringMVC如何接收請求

    2024年02月07日
    瀏覽(21)
  • 【Java 高階】一文精通 Spring MVC - 基礎(chǔ)概念(一)

    【Java 高階】一文精通 Spring MVC - 基礎(chǔ)概念(一)

    ?? 博主介紹 : 博主從事應(yīng)用安全和大數(shù)據(jù)領(lǐng)域,有8年研發(fā)經(jīng)驗,5年面試官經(jīng)驗,Java技術(shù)專家,WEB架構(gòu)師,阿里云專家博主,華為云云享專家,51CTO 專家博主 ?? 個人社區(qū):個人社區(qū) ?? 個人主頁:個人主頁 ?? 專欄地址: ? Java 高階 ??八股文專題:劍指大廠,手撕

    2024年02月11日
    瀏覽(18)
  • Spring MVC各種參數(shù)進行封裝

    Spring MVC各種參數(shù)進行封裝

    目錄 一、簡單數(shù)據(jù)類型 1.1?控制器方法 1.2?測試結(jié)果 二、對象類型 2.1?單個對象 2.1.1 控制器方法 2.1.2 測試結(jié)果 2.2?關(guān)聯(lián)對象 2.2.1?控制器方法 2.2.2 測試結(jié)果 三、集合類型 3.1?簡單數(shù)據(jù)類型集合 3.1.1 控制方法 3.1.2 測試結(jié)果 3.2?對象數(shù)據(jù)類型集合 3.2.1 控制器方法 3.2.2 測試結(jié)

    2024年02月09日
    瀏覽(26)
  • 3.5 Spring MVC參數(shù)傳遞

    Spring MVC的Controller接收請求參數(shù)的方式有多種,本節(jié)主要介紹Spring MVC下的HttpServletRequest、基本數(shù)據(jù)類型、Java Bean、數(shù)組、List、Map、JSON參數(shù)傳遞方式,同時解決POST請求中文亂碼問題。 基本數(shù)據(jù)類型以及他們的包裝類。 JSON格式采用鍵值對的方式來表示數(shù)據(jù),由花括號 {} 包含對

    2024年02月13日
    瀏覽(20)
  • Spring MVC: 請求參數(shù)的獲取

    Spring MVC: 請求參數(shù)的獲取

    在 Spring MVC 介紹中,談到前端控制器 DispatcherServlet 接收客戶端請求,依據(jù)處理器映射 HandlerMapping 配置調(diào)用相應(yīng)的處理器 Controller 。那么,處理器 Controller 具體是如何實現(xiàn)獲取請求參數(shù)的呢?

    2024年02月10日
    瀏覽(22)
  • 案例13 Spring MVC參數(shù)傳遞案例

    案例13 Spring MVC參數(shù)傳遞案例

    基于Spring MVC實現(xiàn)HttpServletRequest、基本數(shù)據(jù)類型、Java Bean、數(shù)組、List、Map、JSON方式的參數(shù)傳遞。 選擇Maven快速構(gòu)建web項目,項目名稱為case13-springmvc02。 ? src.main路徑下,執(zhí)行new – Directory操作,選擇java、resources后,執(zhí)行回車鍵。 ? 在web.xml中配置DispatcherServlet。 src.main.java.

    2024年02月13日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包