亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

SpringBoot快速搭建web項(xiàng)目詳細(xì)步驟總結(jié)

 更新時(shí)間:2018年12月14日 10:50:04   作者:CoderLcp  
這篇文章主要介紹了SpringBoot快速搭建web項(xiàng)目詳細(xì)步驟總結(jié) ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

最近在學(xué)習(xí)Spring Boot 相關(guān)的技術(shù),剛接觸就有種相見(jiàn)恨晚的感覺(jué),因?yàn)橛胹pring boot進(jìn)行項(xiàng)目的搭建是在太方便了,我們往往只需要很簡(jiǎn)單的幾步,便可完成一個(gè)spring MVC項(xiàng)目的搭建,感覺(jué)就是下圖:

好,下面就本人搭建項(xiàng)目的過(guò)程簡(jiǎn)單說(shuō)說(shuō)如何快速搭建一個(gè)spring MVC項(xiàng)目,相信我,spring-boot這趟車,你上了根本就停不下來(lái)了!

下面是這篇博客的主要內(nèi)容:

  • spring boot 介紹
  • spring boot 項(xiàng)目快速搭建
  • spring-boot中單元測(cè)試
  • spring boot 與mybatis 的集成

一、初識(shí)spring boot

1、web項(xiàng)目傳統(tǒng)的搭建方式

導(dǎo)入jar包,配置tomcat 的context.xml 、web.xml,配置class path ,啟動(dòng)。我靠,怎么一堆報(bào)錯(cuò)?classNotFoundException?尼瑪哥不是導(dǎo)入了jar包嗎,哦版本不對(duì),那我使用maven管理jar包咯,千辛萬(wàn)苦終于配置好maven 并學(xué)會(huì)了如何使用,啟動(dòng)也沒(méi)報(bào)錯(cuò)了,但是尼瑪已經(jīng)過(guò)去打半天了我都還沒(méi)有開(kāi)始正式代碼的書寫,趕緊開(kāi)始寫業(yè)務(wù)代碼吧,又發(fā)現(xiàn)spring 中配置老是尼瑪?shù)膱?bào)錯(cuò),而我他媽只是想要搞個(gè)簡(jiǎn)單的發(fā)郵件功能啊。

所以說(shuō),自己搭建web項(xiàng)目,很多步驟都是重復(fù)性的,有沒(méi)有什么工具可以一步達(dá)成???我只想快點(diǎn)投入到實(shí)際業(yè)務(wù)開(kāi)發(fā)中去,我再也不想折騰jar包版本問(wèn)題,再也不想折騰那繁瑣的配置過(guò)程(雖然這是一個(gè)很好的學(xué)習(xí)過(guò)程),那么,spring boot 估計(jì)是老鐵你不二的選擇!

2、spring boot 是什么?

什么是spring boot?直接copy官網(wǎng)的介紹:

原諒我并不咋地的英文,官網(wǎng)說(shuō),spring boot 可以讓你以一種非常簡(jiǎn)單的方式構(gòu)建一個(gè)機(jī)遇Application 的spring 項(xiàng)目,而你索要做的僅僅是run 這個(gè)項(xiàng)目,spring boot 集成了主流的框架,我們構(gòu)建項(xiàng)目大概只需要兩三分鐘,spring boot 項(xiàng)目,只需要很少的配置即可。

用了spring boot 后,你會(huì)發(fā)現(xiàn),什么配置問(wèn)題,什么jar包問(wèn)題統(tǒng)統(tǒng)沒(méi)有了,你的生產(chǎn)效力會(huì)提高很多,因?yàn)椋瑂pring boot 已經(jīng)幫你弄好了一個(gè)項(xiàng)目原型,你只需要在這個(gè)原型上添加自己的業(yè)務(wù)代碼,自己的service 和dao就萬(wàn)事大吉了!

spring boot 真的有那么厲害?好,下面就開(kāi)始進(jìn)入正題,說(shuō)說(shuō)怎么搭建利用spring boot搭建項(xiàng)目。

二、spring boot 項(xiàng)目快速搭建

1、快速搭建一個(gè)spring MVC項(xiàng)目

來(lái)開(kāi)頭來(lái)個(gè)Hello World先吧,下面緊跟我的步伐,利用spring boot 快速搭建一個(gè)MVC項(xiàng)目

第一步,上官網(wǎng),進(jìn)行項(xiàng)目原始jar 包的選取,官網(wǎng)在線搭建地址如下:https://start.spring.io/,看圖:

特別說(shuō)明下:在選擇你要的jar 包中,一般包括三部分:web部分--包含 了spring、springboot 等常用的web開(kāi)發(fā)必須jar包;spring提供的工具類部分(devTool),這個(gè)用于熱部署效果;數(shù)據(jù)庫(kù)部分,spring boot自動(dòng)可以幫你繼承各種數(shù)據(jù)庫(kù)框架,我這里以mybatis 為演示例子,最后選完jar包的效果如下:

第二步、下載項(xiàng)目并導(dǎo)入IDE,當(dāng)然,需要版本管理工具的支持,這里推薦IntelliJ IDEA 開(kāi)發(fā)工具(它簡(jiǎn)直就是web開(kāi)發(fā)的標(biāo)配?。?,具體看下面截圖:

  

解壓后得到項(xiàng)目文件,然后,就可以打開(kāi)我們的IDE,這里已我最愛(ài)的IntelliJ idea為例子

打開(kāi)idea,找到file-->open-->選擇項(xiàng)目的路徑,找打pom文件-->以project 形式打開(kāi)

第三步、hello spring項(xiàng)目 大概長(zhǎng)什么樣子?打開(kāi)項(xiàng)目之后,maven 會(huì)加載必須的jar包,這段時(shí)間,你可以去喝杯香醇的龍井茶或者咖啡,當(dāng)項(xiàng)目構(gòu)建完成之后,你會(huì)看到下面這樣的典型maven目錄結(jié)構(gòu):

具體各個(gè)目錄放什么,請(qǐng)參考截圖,這里補(bǔ)充說(shuō)明的是,HelloSpringbootApplication是整個(gè)項(xiàng)目的入口,我們啟動(dòng)項(xiàng)目不再是啟動(dòng)tomcat,而是運(yùn)行這個(gè)類,這個(gè)類的main方法就是整個(gè)項(xiàng)目的main方法即執(zhí)行入口,

第四步,寫hello demo了。新建一個(gè)package demo,然后新建一個(gè)類HelloSpringBoot,寫入以下代碼

@RestController
public class HelloSpringBoot {
  @RequestMapping(path = {"/helloSpringBoot"})
  public String HelloSpring (){
    System.out.println("hello spring boot");
    return "hello spring boot";
  }
}

我們先不解釋這個(gè)類里面的東西,先配置并啟動(dòng)網(wǎng)站,初步感受下spring boot的魔力:

在啟動(dòng)網(wǎng)站前,由于spring boot 是默認(rèn)自動(dòng)注冊(cè)加載數(shù)據(jù)庫(kù)相關(guān)的類文件的,所以為了不報(bào)錯(cuò),我們需要打開(kāi)數(shù)據(jù)庫(kù)并在resource目錄下的application.property中加入數(shù)據(jù)庫(kù)配置相關(guān)文件,這里以mysql為例子,配置文件如下:

spring.datasource.url=jdbc:mysql://localhost:3306/wenda?useUnicode=true&characterEncoding=utf8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root

配置文件中各個(gè)字段含義估計(jì)讀者也能看懂,后面會(huì)再具體說(shuō)明。

當(dāng)然,如果沒(méi)有安裝數(shù)據(jù)庫(kù),讀者也可以在HelloSpringbootApplication 類中利用exclude屬性聲明不自動(dòng)注冊(cè)加載數(shù)據(jù)庫(kù)相關(guān)文件,具體參考下面的代碼:

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,MybatisAutoConfiguration.class})//這里的MybatisAutoConfiguration.class對(duì)應(yīng)你的數(shù)據(jù)庫(kù)框架
public class HelloSpringbootApplication {

  public static void main(String[] args) {
    SpringApplication.run(HelloSpringbootApplication.class, args);
  }
}

然后,我們所有的工作就完成了,可以啟動(dòng)網(wǎng)站了,見(jiàn)證奇跡的時(shí)候到了。

找到HelloSpringbootApplication類,雙擊打卡,右擊鼠標(biāo),run,然后項(xiàng)目就啟動(dòng)了。

啟動(dòng)網(wǎng)站之后,輸入http://localhost:8080/helloSpringBoot即可訪問(wèn)對(duì)應(yīng)的方法。瀏覽器以及idea后臺(tái)效果如圖

這里簡(jiǎn)單解釋下這個(gè)類里面的東西的含義:

首先是@RestController這個(gè)注解:用過(guò)spring的大佬估計(jì)知道是什么東西,當(dāng)我們其他類要通過(guò)spring引用該類時(shí),第一步就是要將該類注冊(cè)到spring中,@RestController就是相當(dāng)于將這個(gè)類注冊(cè)到spring容器的意思當(dāng)然,還有一種比較常用的就是@Controller,具體他們兩區(qū)別后面再討論吧。

然后就是@RequestMapping,通過(guò)設(shè)置這個(gè)注解里面面的path屬性,就可以聲明相對(duì)于項(xiàng)目根路徑(localhost:8080)的訪問(wèn)路徑。

2、spring boot 項(xiàng)目中利用springMVC實(shí)現(xiàn)傳參

上面的demo中的方法只是一個(gè)非常簡(jiǎn)單的實(shí)例,在實(shí)際生產(chǎn)中, 我們的應(yīng)用不可能這么簡(jiǎn)單的,前端還需要傳輸參數(shù)到后臺(tái),所以,用spring boot 構(gòu)造的項(xiàng)目中,又如何實(shí)現(xiàn)傳參呢?(感覺(jué)下面的都是在總結(jié)sprign MVC相關(guān)的內(nèi)內(nèi)容了,所以大神勿噴我脫離主題,因?yàn)楦杏X(jué)spring boot 如果單獨(dú)總結(jié)的話,貌似的確沒(méi)什么好總結(jié)的,而且spring boot 天生就不可能和其他spring 組件分割)具體請(qǐng)參開(kāi)下面代碼例子:

@RestController
public class HelloSpringBoot {/**
   * url傳參,訪問(wèn)的路徑類似這樣:localhost:8080/getParamDemo1/1
   * 方法體中的參數(shù)要在前面加注釋,@PathVariable,代表url中的參數(shù)
   */
  @RequestMapping(path = {"/getParamDemo1/{id}"})
  public String getParamDemo1 (@PathVariable("id") int userId){
    System.out.println("get param " + userId);
    return "success get param";
  }
  /**
   * 當(dāng)然,你也可以通過(guò)這種傳參方式:localhost:8080/getParamDemo?param1=1或者直接表單提交參數(shù)
   * 當(dāng)然,同時(shí)方法中參數(shù)聲明的注釋也要變成@RequestParam,代表請(qǐng)求參數(shù),required屬性說(shuō)明了參數(shù)是否是必須的
   */
  @RequestMapping(path = {"/getParamDemo2"})
  public String getParamDemo2 (@RequestParam(value="param1",required = false) int param){
    System.out.println("get param " + param);
    return "success get param";
  }
}

3、構(gòu)建restful編程風(fēng)格

最近,resultful風(fēng)格編程挺火的(雖然個(gè)人覺(jué)得不可盲目跟風(fēng)),而spring boot中利用其內(nèi)置的spring MVC等框架,可以非常簡(jiǎn)單地實(shí)現(xiàn)這種編程風(fēng)格。

例如說(shuō),我要請(qǐng)求查詢一個(gè)數(shù)據(jù),在resultful類的編程風(fēng)格中,查詢對(duì)應(yīng)的是get請(qǐng)求,那么,spring boot(準(zhǔn)確說(shuō)是spring MVC) 可以針對(duì)不同的請(qǐng)求進(jìn)行處理,請(qǐng)看下面代碼:

@RestController
public class HelloSpringBoot {

  /**
   * 通過(guò)設(shè)置RequestMapping的method屬性便可以設(shè)置該方法可處理的對(duì)應(yīng)請(qǐng)求了,例如下面的getRequestDemo方法只會(huì)處理get請(qǐng)求
   */
  @RequestMapping(path = {"/getRequestDemo"},method = RequestMethod.GET)
  public String getRequestDemo (@RequestParam(value="param1",required = false) int param){
    System.out.println("get request test ,get param " + param);
    return "success get param";
  }
  /**
   * 下面的deleteRequestDemo方法只會(huì)處理delete請(qǐng)求
   */
  @RequestMapping(path = {"/deleteRequestDemo"},method = RequestMethod.DELETE)
  public String deleteRequestDemo (@RequestParam(value="param1",required = false) int param){
    System.out.println("delete request test ,get param " + param);
    return "success get param";
  }
}

另外,利用上面說(shuō)的url中的值(類似這個(gè):path="/member/{userid}")進(jìn)行資源定位,也非常符合resultful的風(fēng)格要求,例如這path="/getParamDemo1/{userid}"的配置就是對(duì)應(yīng)的就是對(duì)會(huì)員級(jí)別的某個(gè)用戶(由userid定位)進(jìn)行某些操作,如果要?jiǎng)h除該用戶,則對(duì)應(yīng)http請(qǐng)求的delete請(qǐng)求即可。

通過(guò)上面的那些步驟,估計(jì)讀者對(duì)于如何用spring boot 進(jìn)行一個(gè)簡(jiǎn)單的web項(xiàng)目快速搭建已經(jīng)清楚了,下面在spring boot搭建的項(xiàng)目中如何進(jìn)行單元測(cè)試。

三、spring boot 項(xiàng)目中的單元測(cè)試問(wèn)題

spring boot 中集成了junite框架,對(duì)于單元測(cè)試,也不用寫各種繁瑣的類了,只需要對(duì)測(cè)試類進(jìn)行一定的注釋,spring boot 便會(huì)幫你做好一切,就算是數(shù)據(jù)庫(kù)相關(guān)的操作,spring boot 也能很好地進(jìn)行測(cè)試,具體還是看代碼例子,下面是一個(gè)簡(jiǎn)單的測(cè)試業(yè)務(wù)類方法的例子:

首先,我們新建一個(gè)service 層,新增一個(gè)demo類,最后的demo代碼如下:

@Component
public class ServiceDemo {
  public String testDemo(){
    String rtnAfterDosomething = "我是返回結(jié)果";
    //這里是業(yè)務(wù)代碼
    return rtnAfterDosomething;
  }
}

下面的代碼是測(cè)試類

@RunWith(SpringRunner.class)
@SpringBootTest
public class ServiceDemoTest {
  @Autowired
  ServiceDemo serviceDemo;
  @Test
  public void testDemo() {
    String rtn = serviceDemo.testDemo();
    Assert.assertEquals(rtn, "我是返回結(jié)果");
  }

}

如果要測(cè)試數(shù)據(jù)庫(kù)dao,也是類似的,但是特別注意的是,測(cè)試之前必須啟動(dòng)項(xiàng)目(即HelloSpringbootApplication的run方法必須運(yùn)行起來(lái)),否則將會(huì)包c(diǎn)an not find ApplicationContext的錯(cuò)誤。

四、spring boot中配置數(shù)據(jù)庫(kù)框架(以mybatis為例子)

在spring boot中集成數(shù)據(jù)庫(kù)相關(guān)的開(kāi)源框架也是很方便的(當(dāng)然,記得在一開(kāi)始新建項(xiàng)目的時(shí)候引用相關(guān)的jar包),當(dāng)你上面的步驟都沒(méi)什么錯(cuò)誤的時(shí)候,你只需要簡(jiǎn)單地配置下applocation.properties文件即可

spring.datasource.url=jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=utf8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
#下面這條配置聲明了mybatis的配置文件路徑,classpath對(duì)應(yīng)的是和這個(gè)文件統(tǒng)計(jì)的resources
mybatis.config-location=classpath:mybatis-config.xml

目錄的文件結(jié)構(gòu)參考下面截圖:

ok,mybatis 的引用配置便弄好了,下面我們嘗試?yán)胢ybatis 這個(gè)數(shù)據(jù)庫(kù)框架,進(jìn)行一個(gè)數(shù)據(jù)庫(kù)的簡(jiǎn)單查詢操作,首先,看下面的mybatis-config.xml的配置內(nèi)容,讀者可以以這個(gè)為模板進(jìn)行配置,當(dāng)然,想了解更具體的mybatis配置說(shuō)明,建議去官網(wǎng)看看,這里不展開(kāi)了:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
    PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

  <settings>
    <!-- Globally enables or disables any caches configured in any mapper under this configuration -->
    <setting name="cacheEnabled" value="true"/>
    <!-- Sets the number of seconds the driver will wait for a response from the database -->
    <setting name="defaultStatementTimeout" value="3000"/>
    <!-- Enables automatic mapping from classic database column names A_COLUMN to camel case classic Java property names aColumn -->
    <setting name="mapUnderscoreToCamelCase" value="true"/>
    <!-- Allows JDBC support for generated keys. A compatible driver is required.
    This setting   forces generated keys to be used if set to true,
     as some drivers deny compatibility but still work -->
    <setting name="useGeneratedKeys" value="true"/>
  </settings>

  <!-- Continue going here -->

</configuration>

恩,然后,就可以進(jìn)行數(shù)據(jù)庫(kù)的操作了,我簡(jiǎn)單用mysql建了個(gè)名字為springboot的數(shù)據(jù)庫(kù),在庫(kù)里面建了一個(gè)簡(jiǎn)單的demo表(具體怎么建表那些不用我說(shuō)了吧?實(shí)在沒(méi)有接觸過(guò)數(shù)據(jù)庫(kù)的同學(xué),可以自行百度或者谷歌去咯),然后,dao代碼如下:

@Mapper
public interface DemoDao {
  @Select({"select demo_param from demo "})
  String queryDemo();
}

注意,mybatis 的dao是一個(gè)接口,關(guān)于mybatis更多的內(nèi)容,請(qǐng)讀者參開(kāi)官方文檔,這里不展開(kāi)了。

然后,就在原來(lái)的ServiceDemo類中調(diào)用一下吧,代碼看下圖吧: 

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Controller;
import springboot.hello.helloSpringboot.dao.DemoDao;

@Component
public class ServiceDemo {
  @Autowired
  DemoDao demoDao;
  public String testDemo(){
    String rtnAfterDosomething = "我是返回結(jié)果";
    //這里是業(yè)務(wù)代碼
    return rtnAfterDosomething;
  }
  public String queryDemo(){
    return demoDao.queryDemo();
  }
}

ok,簡(jiǎn)單寫個(gè)測(cè)試類,出現(xiàn)小綠條,測(cè)試成功。

然后,所有項(xiàng)目原型的工作完成了,然后,我們就可以進(jìn)行我們核心業(yè)務(wù)開(kāi)發(fā)了,很快有沒(méi)有?很爽有木有?所以說(shuō),spring boot 搭建項(xiàng)目的確飛快,可以讓我們省去很多機(jī)械的前期操作,讀者們趕緊去探索下吧,spring boot ,你值得捅有!

OK,今天總結(jié)到這里,這個(gè)項(xiàng)目的代碼在gitHub上這個(gè)地址,需要的人自取:https://github.com/lcpandcode/helloSpringboot.git

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java使用正則表達(dá)式獲取子文本的方法示例

    Java使用正則表達(dá)式獲取子文本的方法示例

    這篇文章主要介紹了Java使用正則表達(dá)式獲取子文本的方法,結(jié)合實(shí)例形式分析了java針對(duì)子文本的正則操作相關(guān)函數(shù)與使用技巧,需要的朋友可以參考下
    2017-09-09
  • idea中斷點(diǎn)類型之All和Thread的區(qū)別介紹

    idea中斷點(diǎn)類型之All和Thread的區(qū)別介紹

    使用all模式對(duì)于程序中含有多個(gè)線程來(lái)說(shuō),會(huì)將多個(gè)線程都阻塞在斷點(diǎn),此時(shí)所有的線程都執(zhí)行到此處,在最后一個(gè)線程執(zhí)行到此處是會(huì)發(fā)生暫停,在這之前的線程會(huì)繼續(xù)執(zhí)行到任意位置,本文給大家詳細(xì)介紹下idea中斷點(diǎn)類型之All和Thread的區(qū)別,感興趣的朋友一起看看吧
    2022-03-03
  • 基于springboot設(shè)置Https請(qǐng)求過(guò)程解析

    基于springboot設(shè)置Https請(qǐng)求過(guò)程解析

    這篇文章主要介紹了基于springboot設(shè)置Https請(qǐng)求過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • 解決kafka:org.apache.kafka.common.errors.TimeoutException問(wèn)題

    解決kafka:org.apache.kafka.common.errors.TimeoutException問(wèn)題

    這篇文章主要介紹了解決kafka:org.apache.kafka.common.errors.TimeoutException問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • IDEA JavaWeb項(xiàng)目啟動(dòng)運(yùn)行后出現(xiàn)404錯(cuò)誤的解決方法

    IDEA JavaWeb項(xiàng)目啟動(dòng)運(yùn)行后出現(xiàn)404錯(cuò)誤的解決方法

    這篇文章主要介紹了IDEA JavaWeb項(xiàng)目啟動(dòng)運(yùn)行后出現(xiàn)404錯(cuò)誤的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 使用Java將字符串在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換

    使用Java將字符串在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換

    大家都知道在一些情況下,我們需要特殊的編碼格式,如:UTF-8,但是系統(tǒng)默認(rèn)的編碼為ISO-8859-1,遇到這個(gè)問(wèn)題,該如何對(duì)字符串進(jìn)行兩個(gè)編碼的轉(zhuǎn)換呢,下面小編給大家分享下java中如何在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換,感興趣的朋友一起看看吧
    2021-12-12
  • 以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化

    以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化

    本文以小項(xiàng)目學(xué)院管理系統(tǒng)為例,給大家分享以Json形式的數(shù)據(jù)格式實(shí)現(xiàn)JMeter參數(shù)化的相關(guān)知識(shí),包括添加元件操作步驟及使用用戶參數(shù)組件實(shí)現(xiàn)參數(shù)化的方法,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • 用SpringMVC編寫一個(gè)HelloWorld的詳細(xì)過(guò)程

    用SpringMVC編寫一個(gè)HelloWorld的詳細(xì)過(guò)程

    SpringMVC是Spring的一個(gè)后續(xù)產(chǎn)品,是Spring的一個(gè)子項(xiàng)目<BR>SpringMVC?是?Spring?為表述層開(kāi)發(fā)提供的一整套完備的解決方案,本文我們將用SpringMVC編寫一個(gè)HelloWorld,文中有詳細(xì)的編寫過(guò)程,需要的朋友可以參考下
    2023-08-08
  • Java 動(dòng)態(tài)模擬操作系統(tǒng)進(jìn)程調(diào)度算法

    Java 動(dòng)態(tài)模擬操作系統(tǒng)進(jìn)程調(diào)度算法

    這篇文章主要介紹了采用java語(yǔ)言編程模擬N個(gè)進(jìn)程采用動(dòng)態(tài)高優(yōu)先權(quán)優(yōu)先進(jìn)程調(diào)度算法。文中代碼具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下
    2021-12-12
  • Java中的靜態(tài)綁定和動(dòng)態(tài)綁定詳細(xì)介紹

    Java中的靜態(tài)綁定和動(dòng)態(tài)綁定詳細(xì)介紹

    這篇文章主要介紹了Java中的靜態(tài)綁定和動(dòng)態(tài)綁定詳細(xì)介紹,在Java中存在兩種綁定方式,一種為靜態(tài)綁定,又稱作早期綁定,另一種就是動(dòng)態(tài)綁定,亦稱為后期綁定,需要的朋友可以參考下
    2015-01-01

最新評(píng)論