日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java springmvc搭建_【JavaEE】Springmvc+Spring搭建方法及example

發布時間:2024/9/27 java 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java springmvc搭建_【JavaEE】Springmvc+Spring搭建方法及example 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這一篇在前一篇Springmvc的基礎上,加上Spring。Spring的主要用途叫做控制反轉(依賴注入,IoC/DI)和面向切面的編程(AOP),本文只介紹IoC,因為AOP主要的應用場景是記錄日志,暫時不需要,等我要整合的幾個框架都整合在一起的時候再加上。

pom.xml不需要新添加任何東西,因為spring-core等包都在導入spring-webmvc的時候作為依賴項被導入了,所以直接來看配置。

1. web.xml

Spring要在程序需要某個對象的時候,把這個對象的實例注入進去,默認情況下,Spring以單例的形式維護了所有需要注入的對象的實例,哪里需要就把對應的實例給哪里,Spring自己對實例、程序運行的管理構成了Spring自己的容器,第一步就是要在web.xml中注冊,初始化這個容器:

contextConfigLocation

classpath:/META-INF/applicationContext.xml

org.springframework.web.context.ContextLoaderListener

這里注冊一個ContextLoaderListener,并指定spring配置文件的位置,在類路徑下的/META-INF/applicationContext.xml,現在在maven的resources資源包下,即src/main/resources下面創建目錄META-INF,在這個目錄下創建applicationContext.xml,這個文件就是spring的配置文件。

2.?applicationContext.xml

applicationContext.xml是spring的核心配置文件,spring4和之前版本的一個很大的區別,就是推薦情況下bean不是在xml文件中配置,而是通過掃描固定annotation的類,根據對象的類型或者名字自動加載,以前在applicationContext.xml需要配置大量的bean,現在不用了,但是仍然要告訴spring,去哪個包下面找這些帶著annotation等著被掃描的類:

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd

http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd">

前面這一堆東西先不用管,直接粘貼好了,其實很多現在還用不到,不過也沒有關系,先放在這好了,真正有用的配置就一句話,需要spring管理的類,請到org.zhangfc.demo4ss.service下面去找。

3. UserService.java

下面寫一個服務類,用來獲得注冊用戶列表,創建package:org.zhangfc.demo4ss.service,在下面創建接口UserService,寫一個方法獲取所有用戶名。

public interfaceUserService {public ListgetAllUsernames();

}

再創建一個類UserServiceImpl,實現這個接口:

@Servicepublic class UserServiceImpl implementsUserService {public ListgetAllUsernames() {

List users = new ArrayList();

users.add("zhangsan");

users.add("lisi");

users.add("wangwu");returnusers;

}

}

[email?protected],它告訴Spring,我是一個Service,需要你來管理我。

4. HomeController

回到控制器里,上一篇文章我寫了一個方法叫json來返回一個json對象,現在改一下這個方法,通過前面寫的UserService來獲取用戶列表并返回給客戶端。

首先定義一個類的全局變量UserService:

@Autowiredprivate UserService userService;

這里要注意的是Autowire這個annotation,它是為了告訴spring,這個對象沒有實例化,需要你來注入一個UserService的實例,那問題就是,UserSerivce是一個接口,不指定誰知道你想用的實現類是哪個,Spring會首先看自己的容器里有沒有一個叫做userService的對象(剛才那個UserServiceImpl的對象名字就叫做userServiceImpl),如果找不到就在配置文件里配置的路徑下面尋找UserService的實現類,找到了就把它的對象拿過來,除此之外剛才Service那個annotation還可以指定一個value:

@Service("userService")

這樣一來,對于UserServiceImpl這個類的實例,Spring給它起的名字就不是userServiceImpl了,而是userService,如果某個接口的實現類有多個,就可以使用這種方法來指定用哪個實現類,個人認為,如果每個接口都只有一個實現類,那么這么做確實很方便,但如果有多個實現類并且可能會更換的話,就不如配置文件明了了(當然了,現在這種方式也可以把參數抽出來放到配置文件里,不過還是麻煩一些)。

然后修改json方法:

@RequestMapping("/json")

@ResponseBodypublic Listjson(){returnuserService.getAllUsernames();

}

Spring在這里的作用就是把HomeController需要的userService注入進來,運行程序,訪問http://localhost:8080/demo4springmvc-spring/json:

["zhangsan","lisi","wangwu"]

Spring的另一個功能AOP暫且不用,等需要記錄日志的時候再寫,當然,Spring本身也有很多復雜的機制,后面在具體問題中慢慢介紹。

原文:http://www.cnblogs.com/smarterplanet/p/4085620.html

總結

以上是生活随笔為你收集整理的java springmvc搭建_【JavaEE】Springmvc+Spring搭建方法及example的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。