最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中synchronized Lock(本地同步)鎖的8種情況

 更新時(shí)間:2021年09月24日 08:34:17   作者:A.Dun  
本文主要介紹了java中synchronized Lock(本地同步)鎖的8種情況,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Lock(本地同步)鎖的8種情況總結(jié)與說(shuō)明:

* 題目:
* 1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信 Email
* 2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信 Email
* 3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hello hello
* 4.兩部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 SMS
* 5.兩個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 Email
* 6.兩個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 Email
* 7.一個(gè)普通同步方法,一個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 SMS
* 8.一個(gè)普通同步方法,一個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 SMS
*
* lock1、2
* 一個(gè)對(duì)象里面如果有多個(gè)synchronized方法,某一時(shí)刻內(nèi),只要一個(gè)線程去調(diào)用其中的一個(gè)synchronized方法,
* 其他的線程都只能等待,換句話說(shuō),某一時(shí)刻內(nèi),只能有唯一一個(gè)線程去訪問(wèn)這些synchronized方法,
* 鎖的是當(dāng)前對(duì)象的this,被鎖定后,其它的線程都不能進(jìn)入到當(dāng)前對(duì)象的其它的synchronized方法
*
* lock3、4
* 加個(gè)普通的方法后和同步鎖無(wú)關(guān)
* 換成兩個(gè)對(duì)象后,不是同一把鎖了,情況立刻變化
*
* lock5、6
* 都換成靜態(tài)同步方法后,情況又變化(靜態(tài)鎖的是Class類對(duì)象)
* 若是普通同步方法,new this,具體的一部一部手機(jī),所有的普通同步方法用的都是同一把鎖----示例對(duì)象本身
* 若是靜態(tài)同步方法,static class,唯一的一個(gè)模板
* synchronized是實(shí)現(xiàn)同步的基礎(chǔ):Java中的每一個(gè)對(duì)象都可以作為鎖
* 具體表現(xiàn)為一下3種形式。
* 對(duì)于普通同步方法,鎖是當(dāng)前實(shí)例對(duì)象。它等同于 對(duì)于同步方法塊,鎖是synchronized括號(hào)里的配置的對(duì)象。
* 對(duì)于靜態(tài)同步方法,鎖是當(dāng)前類的Class類元信息
*
* lock7、8
* 當(dāng)一個(gè)線程試圖訪問(wèn)同步代碼塊時(shí)它首先必須得到鎖,退出或拋出異常時(shí)必須釋放鎖
*
* 所有的同步方法用的都是同一把鎖----實(shí)例對(duì)象本身,就是new出來(lái)的具體實(shí)例對(duì)象本身
* 也就是說(shuō)如果一個(gè)實(shí)例對(duì)象的普通同步方法獲取鎖后,該實(shí)例對(duì)象的其他普通同步方法必須等待獲取鎖的方法釋放鎖后才能獲得鎖
* 可是別的實(shí)例對(duì)象的普通同步方法因?yàn)楦搶?shí)例對(duì)象的普通同步方法用到是不同鎖,所以不用等待該實(shí)例對(duì)象已獲取鎖的普通
* 同步方法釋放鎖就可以獲取它們自己的鎖
*
* 所有的靜態(tài)同步方法用的也是同一把鎖----類對(duì)象本身,就是我們說(shuō)過(guò)的唯一模板Class
* 具體實(shí)例對(duì)象this和唯一模板Class,這兩把鎖是兩個(gè)不同的對(duì)象,所有靜態(tài)同步方法與普通同步方法之間是不會(huì)有競(jìng)態(tài)條件的,
* 但是一旦一個(gè)靜態(tài)同方法獲取鎖后,其他的靜態(tài)同步方法都必須等待該方法釋放鎖后才能獲取鎖。

lock1、2、3一個(gè)實(shí)例對(duì)象

lock4、5、6、7、8兩個(gè)實(shí)例對(duì)象

lock1

1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信?答案:Email

sendEmail()與sendSms()都是普通同步方法,都使用synchronized鎖

這里按方法調(diào)用順序,依次執(zhí)行,當(dāng)前synchronized鎖住的是同一個(gè)實(shí)例對(duì)象

package day02_lam;
 
import java.util.concurrent.TimeUnit;
 
class Phone{
    public synchronized void sendEmail() throws InterruptedException{
         System.out.println("------------sendEmail");
    }

    public  synchronized void sendSms(){
     System.out.println("------------sendSMS");
    }

}
 
/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信     Email
*/
public class Lock8{
	public static void main(String[] args) throws InterruptedException{
        Phone phone=new Phone();
        //線程A發(fā)送Email
        new Thread(()->{
                try{
                    phone.sendEmail();
                }catch(InterruptedExceptione){
                    e.printStackTrace();
                }
            },"A").start();

        Thread.sleep(300);
        
        //線程B發(fā)送短信
        newThread(()->{
            phone.sendSms();
        },"B").start();
    }
}

lock2

2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信? 答案:Email

lock2是lock1的變形,其原理與lock1一致,synchronized鎖住的是同一個(gè)對(duì)象,必須等到第一個(gè)方法把鎖釋放后,第二個(gè)方法才能夠獲得鎖

package day02_lam;

import java.util.concurrent.TimeUnit;

class Phone{
	public synchronized void sendEmail()throwsInterruptedException{
        //睡眠4秒種
		TimeUnit.SECONDS.sleep(4);
		System.out.println("------------sendEmail");
	}
	
	public synchronized void sendSms(){
		System.out.println("------------sendSMS");
	}

}

/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信Email
*2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信Email
*/
public class Lock8{
    public static void main(String[] args)throws InterruptedException{
        //資源類
        Phone phone=new Phone();
		
        //線程A sendEmail
        newThread(()->{
            try{
                phone.sendEmail();
            }catch(InterruptedExceptione){
                e.printStackTrace();
            }
        },"A").start();

		//這里保證線程A能夠執(zhí)行完
   	 	Thread.sleep(300);

        //線程B sendSms
        newThread(()->{
            phone.sendSms();
        },"B").start();

    }
}

結(jié)果:等待4秒中后出現(xiàn)sendEmail與sendSMS同時(shí)輸出

lock3

3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hello? 答案:hello

只有添加synchronized關(guān)鍵字的方法才會(huì)被synchronized鎖控制

package day02_lam;

import java.util.concurrent.TimeUnit;

class Phone{
	public synchronized void sendEmail()throws InterruptedException{
		TimeUnit.SECONDS.sleep(4);
		System.out.println("------------sendEmail");
	}

	public synchronized void sendSms(){
		System.out.println("------------sendSMS");
	}

	public void hello(){//未加synchronized
		System.out.println("hello");
	}
}

/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信Email
*2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信Email
*3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hello    hello
*/
public  class Lock8{
    public static void main(String[] args)throws InterruptedException{
        Phone phone=new Phone();
		
        //線程A調(diào)用sendEmail
        new Thread(()->{
            try{
                phone.sendEmail();
            }catch(InterruptedExceptione){
                e.printStackTrace();
            }
        },"A").start();

   		Thread.sleep(300);

       	//線程B調(diào)用普通方法hello
        new Thread(()->{
            //phone.sendSms();
            phone.hello();
        },"B").start();

    }
}

結(jié)果:hello先輸出,4s后sendEmail再輸出

lock4

4.兩部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 ? 答案:SMS

不同實(shí)例對(duì)象,synchronized鎖住的是對(duì)應(yīng)的調(diào)用對(duì)象

package day02_lam;

import java.util.concurrent.TimeUnit;

class Phone{
	public synchronized void sendEmail()throws InterruptedException{
        //睡眠4秒種
		TimeUnit.SECONDS.sleep(4);
		System.out.println("------------sendEmail");
	}
	
	public synchronized void sendSms(){
		System.out.println("------------sendSMS");
	}
	
	public void hello(){
		System.out.println("hello");
	}
}

/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信Email
*2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信Email
*3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hellohello
*4.兩部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 SMS
*/
public class Lock8{
public static void main(String[] args)throws InterruptedException{
		Phone phone=new Phone();
		Phone phone2=new Phone();
	
		//sychronized鎖定是當(dāng)前對(duì)象對(duì)應(yīng)的this,phone與phone2分別鎖的是自己的this
		
    	//線程A使用實(shí)例phone調(diào)用sendEmail
		newThread(()->{
			try{
                //sendEmail方法中包含睡眠4秒種
				phone.sendEmail();
			}catch(InterruptedExceptione){
				e.printStackTrace();
			}
		},"A").start();
	
		Thread.sleep(300);
	
    	//線程B使用實(shí)例phone2調(diào)用sendSms
		newThread(()->{
			phone2.sendSms();
			//phone.hello();
		},"B").start();
	
	}
}

結(jié)果:sendSMS先輸出,4s后sendEmail再輸出

lock5

5.兩個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信? 答案:Email

synchronized鎖靜態(tài)方法,實(shí)際是鎖住的類元信息,因?yàn)殪o態(tài)方法是隨類元信息的加載而保存到j(luò)vm的靜態(tài)區(qū),是所有實(shí)例創(chuàng)建的模板

package day02_lam;

import java.util.concurrent.TimeUnit;

class Phone{
	public static synchronized void sendEmail()throws InterruptedException{
		TimeUnit.SECONDS.sleep(4);
		System.out.println("------------sendEmail");
	}
	
	public static synchronized void sendSms(){
	
		System.out.println("------------sendSMS");
	}
	
	public void hello(){
		System.out.println("hello");
	}
}

/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信Email
*2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信Email
*3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hellohello
*4.兩部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信SMS
*5.兩個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 Email
*/
public class Lock8{
public  static void main(String[] args)throws InterruptedException{
	Phone phone=new Phone();
	
	new Thread(()->{
		try{
			phone.sendEmail();
		}catch(InterruptedException e){
			e.printStackTrace();
		}
	},"A").start();
	
	Thread.sleep(300);
	
	newThread(()->{
		phone.sendSms();
	},"B").start();
	
	}
}

結(jié)果:4秒種后,sendEmail率先輸出,sendSMS緊隨其后

lock6

6.兩個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信? 答案:Email

與lock5的運(yùn)行結(jié)果一致,當(dāng)前synchronized鎖住的是類元信息

package day02_lam;

import java.util.concurrent.TimeUnit;

class Phone{
    public static synchronized void sendEmail() throws InterruptedException{
        TimeUnit.SECONDS.sleep(4);
        System.out.println("------------sendEmail");
    }

    public static synchronized void sendSms(){
    	System.out.println("------------sendSMS");
    }

    public void hello(){
   	 	System.out.println("hello");
    }
}

/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信Email
*2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信Email
*3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hellohello
*4.兩部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信SMS
*5.兩個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信Email
*6.兩個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信Email
*/
public class Lock8{
    publicstaticvoidmain(String[]args)throwsInterruptedException{
        Phone phone=new Phone();
        Phone phone2=new Phone();

        new Thread(()->{
            try{
            	phone.sendEmail();
            }catch(InterruptedException e){
           	 e.printStackTrace();
            }
        },"A").start();
        Thread.sleep(300);
        new Thread(()->{
            //phone.sendSms();
            phone2.sendSms();
            //phone.hello();
        },"B").start();

    }
}

結(jié)果:與lock5的運(yùn)行結(jié)果一致,sendEmail與sendSMS都是4s后進(jìn)行輸出,synchronized也是鎖住的類元信息

lock7

7.一個(gè)普通同步方法,一個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印Email還是SMS? 答案:SMS

原理:普通同步方法,synchronized鎖住的是當(dāng)前實(shí)例對(duì)象,當(dāng)前實(shí)例對(duì)象存在于jvm的堆內(nèi)存區(qū)

靜態(tài)同步方法,synchronized鎖住的是當(dāng)前類的類元信息,存在于jvm元空間的靜態(tài)區(qū)中

package day02_lam;

import java.util.concurrent.TimeUnit;

class Phone{
    //靜態(tài)同步方法
	public static synchronized void sendEmail()throws InterruptedException{
		TimeUnit.SECONDS.sleep(4);
		System.out.println("------------sendEmail");
	}
	
    //普通同步方法
	public synchronized void sendSms(){//無(wú)static
	
		System.out.println("------------sendSMS");
	}
	
	public void hello(){
		System.out.println("hello");
	}
}

/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信Email
*2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信Email
*3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hellohello
*4.兩部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信SMS
*5.兩個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信Email
*6.兩個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信Email
*7.一個(gè)普通同步方法,一個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信 SMS
*/
public class Lock8{
	public static void main(String[] args) throws InterruptedException{
		Phonephone=newPhone();
		Phonephone2=newPhone();
		
		newThread(()->{
			try{
				phone.sendEmail();
			}catch(InterruptedExceptione){
				e.printStackTrace();
			}
		},"A").start();
		
		Thread.sleep(300);
		
		newThread(()->{
			phone.sendSms();
			//phone2.sendSms();
			//phone.hello();
		},"B").start();
	
	}
}

結(jié)果:sendSMS先輸出,4s后sendEmail再輸出

lock8

8.一個(gè)普通同步方法,一個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信? 答案:SMS

原理:與lock7一致

package day02_lam;

import java.util.concurrent.TimeUnit;

class Phone{
	public static synchronized void sendEmail()throwsInterruptedException{
		TimeUnit.SECONDS.sleep(3);
		System.out.println("------------sendEmail");
	}
	
	public synchronized void sendSms(){
	
		System.out.println("------------sendSMS");
	}
	
	public void hello(){
		System.out.println("hello");
	}
}

/**
*題目:
*1.標(biāo)準(zhǔn)訪問(wèn),請(qǐng)問(wèn)是先打印郵件還是短信Email
*2.email方法新增暫停4秒鐘,請(qǐng)問(wèn)是先打印郵件還是短信Email
*3.新增普通的hello方法,請(qǐng)問(wèn)先打印郵件還是hellohello
*4.兩部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信SMS
*5.兩個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信Email
*6.兩個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信Email
*7.一個(gè)普通同步方法,一個(gè)靜態(tài)同步方法,1部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信SMS
*8.一個(gè)普通同步方法,一個(gè)靜態(tài)同步方法,2部手機(jī),請(qǐng)問(wèn)先打印郵件還是短信SMS
*/
public class Lock8{
	publicstaticvoidmain(String[]args)throwsInterruptedException{
		Phone phone=new Phone();
		Phone phone2=new Phone();
		
		new Thread(()->{
			try{
				phone.sendEmail();
			}catch(InterruptedExceptione){
				e.printStackTrace();
			}
		},"A").start();
		
		Thread.sleep(300);
		
		new Thread(()->{
			//phone.sendSms();
			phone2.sendSms();
			//phone.hello();
		},"B").start();
	
	}
}

結(jié)果:運(yùn)行結(jié)果與lock7一致,sendSMS先輸出,4s后sendEmail再輸出

到此這篇關(guān)于java中synchronized Lock(本地同步)鎖的8種情況的文章就介紹到這了,更多相關(guān) synchronized Lock鎖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring超詳細(xì)講解事務(wù)

    Spring超詳細(xì)講解事務(wù)

    Spring事務(wù)的本質(zhì)就是對(duì)數(shù)據(jù)庫(kù)事務(wù)的支持,沒(méi)有數(shù)據(jù)庫(kù)事務(wù),Spring是無(wú)法提供事務(wù)功能的。Spring只提供統(tǒng)一的事務(wù)管理接口,具體實(shí)現(xiàn)都是由數(shù)據(jù)庫(kù)自己實(shí)現(xiàn)的,Spring會(huì)在事務(wù)開始時(shí),根據(jù)當(dāng)前設(shè)置的隔離級(jí)別,調(diào)整數(shù)據(jù)庫(kù)的隔離級(jí)別,由此保持一致
    2022-07-07
  • 關(guān)于Java應(yīng)用日志與Jaeger的trace關(guān)聯(lián)的問(wèn)題

    關(guān)于Java應(yīng)用日志與Jaeger的trace關(guān)聯(lián)的問(wèn)題

    這篇文章主要介紹了Java應(yīng)用日志如何與Jaeger的trace關(guān)聯(lián),通過(guò)jaeger發(fā)現(xiàn)這十次請(qǐng)求中有一次耗時(shí)特別長(zhǎng),想定位一下具體原因,感興趣的朋友跟隨小編一起看看吧
    2022-01-01
  • java實(shí)現(xiàn)英文詞頻統(tǒng)計(jì)(附帶源碼)

    java實(shí)現(xiàn)英文詞頻統(tǒng)計(jì)(附帶源碼)

    英文詞頻統(tǒng)計(jì)作為文本數(shù)據(jù)分析中的基礎(chǔ)工作,廣泛應(yīng)用于自然語(yǔ)言處理、輿情分析、信息檢索、文本挖掘以及數(shù)據(jù)可視化等領(lǐng)域,下面我們就來(lái)看看如何使用java實(shí)現(xiàn)英文詞頻統(tǒng)計(jì)吧
    2025-06-06
  • SpringBoot基于攔截器與ThreadLocal實(shí)現(xiàn)用戶登錄校驗(yàn)

    SpringBoot基于攔截器與ThreadLocal實(shí)現(xiàn)用戶登錄校驗(yàn)

    本文介紹了一種在SpringBoot中實(shí)現(xiàn)統(tǒng)一登錄校驗(yàn)和上下文共享的解決方案,通過(guò)使用攔截器、ThreadLocal和自定義工具類,實(shí)現(xiàn)了在請(qǐng)求處理過(guò)程中優(yōu)雅地獲取當(dāng)前登錄用戶信息,并且避免了在每個(gè)Controller方法中重復(fù)編寫校驗(yàn)代碼,需要的朋友可以參考下
    2025-12-12
  • 詳解Java網(wǎng)絡(luò)編程

    詳解Java網(wǎng)絡(luò)編程

    網(wǎng)絡(luò)編程是指編寫運(yùn)行在多個(gè)設(shè)備(計(jì)算機(jī))的程序,這些設(shè)備都通過(guò)網(wǎng)絡(luò)連接起來(lái)。本文介紹了一些網(wǎng)絡(luò)編程基礎(chǔ)的概念,并用Java來(lái)實(shí)現(xiàn)TCP和UDP的Socket的編程,來(lái)讓讀者更好的了解其原理
    2021-06-06
  • SpringBoot自動(dòng)配置Quartz的實(shí)現(xiàn)步驟

    SpringBoot自動(dòng)配置Quartz的實(shí)現(xiàn)步驟

    本文主要介紹了SpringBoot自動(dòng)配置Quartz的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java之System.getProperty()的作用及使用說(shuō)明

    Java之System.getProperty()的作用及使用說(shuō)明

    這篇文章主要介紹了Java之System.getProperty()的作用及使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • Java實(shí)現(xiàn)將文件或者文件夾壓縮成zip的詳細(xì)代碼

    Java實(shí)現(xiàn)將文件或者文件夾壓縮成zip的詳細(xì)代碼

    這篇文章主要介紹了Java實(shí)現(xiàn)將文件或者文件夾壓縮成zip的詳細(xì)代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • SpringBoot視圖解析實(shí)現(xiàn)原理深入分析

    SpringBoot視圖解析實(shí)現(xiàn)原理深入分析

    視圖解析其實(shí)就是SpringBoot某一個(gè)controller的方法執(zhí)行完成之后,它是跳轉(zhuǎn)到那個(gè)頁(yè)面。由于我們springboot項(xiàng)目默認(rèn)打包為jar包,是形成壓縮包的形式,而jsp又不支持壓縮,所以我們SpringBoot不知JSP的,需要引入第三方模板引擎才可以處理
    2022-10-10
  • java實(shí)現(xiàn)雙色球彩票游戲

    java實(shí)現(xiàn)雙色球彩票游戲

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)雙色球彩票游戲,超級(jí)簡(jiǎn)單的邏輯,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06

最新評(píng)論

边坝县| 盐亭县| 介休市| 邢台市| 阿巴嘎旗| 道真| 泰来县| 永靖县| 旌德县| 平昌县| 华池县| 繁昌县| 开化县| 恩施市| 靖宇县| 东明县| 响水县| 兴山县| 资兴市| 巴楚县| 公安县| 太原市| 普洱| 青川县| 麻城市| 旬阳县| 洛浦县| 全州县| 长宁区| 格尔木市| 溧水县| 西和县| 将乐县| 藁城市| 商丘市| 玛曲县| 墨江| 松滋市| 杭锦后旗| 南投市| 滨海县|