Submit Search
Upload
Maven & mongo & sring
•
Download as PPTX, PDF
•
0 likes
•
280 views
Tzu Chi University
Follow
Maven mongo spring framework
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 23
Download now
Recommended
Node js实践
Node js实践
jay li
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
dennis zhuang
编辑器设计U editor
编辑器设计U editor
taobao.com
构建基于Lamp的中型网站架构
构建基于Lamp的中型网站架构
HonestQiao
Php及drupal性能优化系列(二)
Php及drupal性能优化系列(二)
Robbin Zhao
编辑器设计Kissy editor
编辑器设计Kissy editor
taobao.com
Berserk js
Berserk js
taobao.com
Node.js從無到有 基本課程
Node.js從無到有 基本課程
Simon Su
Recommended
Node js实践
Node js实践
jay li
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
dennis zhuang
编辑器设计U editor
编辑器设计U editor
taobao.com
构建基于Lamp的中型网站架构
构建基于Lamp的中型网站架构
HonestQiao
Php及drupal性能优化系列(二)
Php及drupal性能优化系列(二)
Robbin Zhao
编辑器设计Kissy editor
编辑器设计Kissy editor
taobao.com
Berserk js
Berserk js
taobao.com
Node.js從無到有 基本課程
Node.js從無到有 基本課程
Simon Su
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
taobao.com
Mesos intro
Mesos intro
dennis zhuang
前端MVVM框架安全
前端MVVM框架安全
Borg Han
Make your web faster
Make your web faster
德生 谭
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
Will Huang
Hacking Nginx at Taobao
Hacking Nginx at Taobao
Joshua Zhu
CP 值很高的 Gulp
CP 值很高的 Gulp
Yvonne Yu
RxJS 6 新手入門
RxJS 6 新手入門
Will Huang
20111018 zhouchen share
20111018 zhouchen share
zcbug
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹
wantingj
如何针对业务做DB优化
如何针对业务做DB优化
Jinrong Ye
NodeJS基礎教學&簡介
NodeJS基礎教學&簡介
GO LL
Fiddler for chrom extension
Fiddler for chrom extension
Welefen Lee
快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚
Lorex L. Yang
使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式
Will Huang
KISSY Mechanism
KISSY Mechanism
lifesinger
Php study.20130110
Php study.20130110
bngoogle
静态项目管理工具 - opm
静态项目管理工具 - opm
goto100
对MySQL的一些改进想法和实现
对MySQL的一些改进想法和实现
Lixun Peng
Intro-to-SeaJS
Intro-to-SeaJS
lifesinger
In de voetsporen van Paulus
In de voetsporen van Paulus
pgvvnl
I love you!! from deana
I love you!! from deana
Dawn Whaley
More Related Content
What's hot
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
taobao.com
Mesos intro
Mesos intro
dennis zhuang
前端MVVM框架安全
前端MVVM框架安全
Borg Han
Make your web faster
Make your web faster
德生 谭
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
Will Huang
Hacking Nginx at Taobao
Hacking Nginx at Taobao
Joshua Zhu
CP 值很高的 Gulp
CP 值很高的 Gulp
Yvonne Yu
RxJS 6 新手入門
RxJS 6 新手入門
Will Huang
20111018 zhouchen share
20111018 zhouchen share
zcbug
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹
wantingj
如何针对业务做DB优化
如何针对业务做DB优化
Jinrong Ye
NodeJS基礎教學&簡介
NodeJS基礎教學&簡介
GO LL
Fiddler for chrom extension
Fiddler for chrom extension
Welefen Lee
快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚
Lorex L. Yang
使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式
Will Huang
KISSY Mechanism
KISSY Mechanism
lifesinger
Php study.20130110
Php study.20130110
bngoogle
静态项目管理工具 - opm
静态项目管理工具 - opm
goto100
对MySQL的一些改进想法和实现
对MySQL的一些改进想法和实现
Lixun Peng
Intro-to-SeaJS
Intro-to-SeaJS
lifesinger
What's hot
(20)
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
Mesos intro
Mesos intro
前端MVVM框架安全
前端MVVM框架安全
Make your web faster
Make your web faster
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
Hacking Nginx at Taobao
Hacking Nginx at Taobao
CP 值很高的 Gulp
CP 值很高的 Gulp
RxJS 6 新手入門
RxJS 6 新手入門
20111018 zhouchen share
20111018 zhouchen share
Npm 套件管理 & 常用開發工具介紹
Npm 套件管理 & 常用開發工具介紹
如何针对业务做DB优化
如何针对业务做DB优化
NodeJS基礎教學&簡介
NodeJS基礎教學&簡介
Fiddler for chrom extension
Fiddler for chrom extension
快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚
使用 Visual Studio Code 建構 JavaScript 應用程式
使用 Visual Studio Code 建構 JavaScript 應用程式
KISSY Mechanism
KISSY Mechanism
Php study.20130110
Php study.20130110
静态项目管理工具 - opm
静态项目管理工具 - opm
对MySQL的一些改进想法和实现
对MySQL的一些改进想法和实现
Intro-to-SeaJS
Intro-to-SeaJS
Viewers also liked
In de voetsporen van Paulus
In de voetsporen van Paulus
pgvvnl
I love you!! from deana
I love you!! from deana
Dawn Whaley
You as an entrepreneur
You as an entrepreneur
Roger Claessens
Empower Franchise
Empower Franchise
Matthew Mack
Fanvertize: The Problem with Traditional Marketing
Fanvertize: The Problem with Traditional Marketing
Matthew Mack
Division Six Bikes Branding Concept Plan
Division Six Bikes Branding Concept Plan
Matthew Mack
Empower Group Franchise Concept Plan
Empower Group Franchise Concept Plan
Matthew Mack
Viewers also liked
(7)
In de voetsporen van Paulus
In de voetsporen van Paulus
I love you!! from deana
I love you!! from deana
You as an entrepreneur
You as an entrepreneur
Empower Franchise
Empower Franchise
Fanvertize: The Problem with Traditional Marketing
Fanvertize: The Problem with Traditional Marketing
Division Six Bikes Branding Concept Plan
Division Six Bikes Branding Concept Plan
Empower Group Franchise Concept Plan
Empower Group Franchise Concept Plan
Similar to Maven & mongo & sring
Maven初级培训
Maven初级培训
Cody Zhang
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
Wen-Tien Chang
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
cachowu
Node js实践
Node js实践
myzykj
Kvmopt osforce
Kvmopt osforce
meecheng
Maven初级培训
Maven初级培训
ytsolar
合久必分,分久必合
合久必分,分久必合
Qiangning Hong
快!快!快! 互联网第一条军规
快!快!快! 互联网第一条军规
yangdj
DAE 新变化介绍
DAE 新变化介绍
Tianwei Liu
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Yiwei Ma
ASP.NET MVC 6 新功能探索
ASP.NET MVC 6 新功能探索
Will Huang
Html5
Html5
cazhfe
美团技术团队 - KVM性能优化
美团技术团队 - KVM性能优化
美团点评技术团队
02.web sphere培训 应用websphere
02.web sphere培训 应用websphere
littlecong
.NET Conf Taiwan 2022 - Tauri -前端人員也能打造小巧快速的 Windows 應用程式
.NET Conf Taiwan 2022 - Tauri -前端人員也能打造小巧快速的 Windows 應用程式
升煌 黃
Real time web实时信息流推送
Real time web实时信息流推送
yongboy
Real-Time Web实时信息流推送
Real-Time Web实时信息流推送
yongboy
Node.js长连接开发实践
Node.js长连接开发实践
longhao
OPM
OPM
goto100
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
OpenCity Community
Similar to Maven & mongo & sring
(20)
Maven初级培训
Maven初级培训
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
Node js实践
Node js实践
Kvmopt osforce
Kvmopt osforce
Maven初级培训
Maven初级培训
合久必分,分久必合
合久必分,分久必合
快!快!快! 互联网第一条军规
快!快!快! 互联网第一条军规
DAE 新变化介绍
DAE 新变化介绍
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
ASP.NET MVC 6 新功能探索
ASP.NET MVC 6 新功能探索
Html5
Html5
美团技术团队 - KVM性能优化
美团技术团队 - KVM性能优化
02.web sphere培训 应用websphere
02.web sphere培训 应用websphere
.NET Conf Taiwan 2022 - Tauri -前端人員也能打造小巧快速的 Windows 應用程式
.NET Conf Taiwan 2022 - Tauri -前端人員也能打造小巧快速的 Windows 應用程式
Real time web实时信息流推送
Real time web实时信息流推送
Real-Time Web实时信息流推送
Real-Time Web实时信息流推送
Node.js长连接开发实践
Node.js长连接开发实践
OPM
OPM
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
Maven & mongo & sring
1.
Maven x Mongo
x Spring 簡裕維
2.
Apache Maven • 函式庫管理 •
專案管理 • 套件管理 • pom.xml:maven 的設定檔 • 下載: https://maven.apache.org/download.cgi
3.
Apache Maven-函式庫管理 • Maven
Repository: – jar 線上儲存庫 • jar 電腦 local 端的集中放置處 – .m2 目錄
4.
Apache Maven-專案管理 • jar:Java
Archive • war:Web Archive • pom:Project Object Model – 此專案內可包多個小專案,小專案可以是 jar、 war、pom – 多層次管理
5.
Apache Maven-套件管理 • 編譯器設定 –
設定 java rumtime、jdk的版本 – 預設記憶體大小 • Web container 設定 – 立即使用 tomcat 執行網頁 – mvn tomcat7:run • 其他套件 – 與CI server 結合 – Deploy 到 Maven Repository
6.
Apache Maven-入門建置 • http://gaduo-chien- blog.logdown.com/posts/2014/04/13/ apache-maven-build-maven-project
7.
Apache Maven-pom.xml • groupId:專案組織名稱,edu.tcu.mi.xxx •
artifactId:該專案名稱 • version:該專案版本號 • packaging:專案打包型態,jar、war、pom • parent:父專案 • properties:變數設定 • modules:子專案模組 • dependencies:相依函式庫 • build:建置用plugin設定
8.
Apache Maven-專案架構 helloworld/ ├── pom.xml ├──
lib ├── target └── src ├── main │ └── java │ │ └── edu │ │ └── tcu │ │ └── mi │ │ └── App.java │ └── resources │ │ └── test └── java │ └── edu │ └── tcu │ └── mi │ └── AppTest.java └── resources
9.
Apache Maven-常用指令 • 建置 –
mvn install • 清除 chache – mvn clean • 建置時,略過單元測試 – mvn install –DskipTests • 連著使用 – mvn clean install –DskipTests • 立即執行 tomcat – mvn tomcat7:run – 前提須搭配其他設定
10.
個人常用函式庫 • guava: – 通用函式 –
https://github.com/google/guava/wiki • gson:json 與物件互相轉換 • junit:單元測試 • log4j:收集 log • lombok:@Getter @Setter • joda-time:時間型態的計算 • jetm:執行時間的收集與報告
11.
Mongodb • 文件儲存資料庫 • json
格式:BSON (binary json) • javascript • schema less • no join – 但還是有關聯 • no transaction
12.
名詞對映 Mongo 傳統關聯式資料庫 Database Database Collection
Table
13.
Mongodb Server • 下載&解壓縮 –
https://fastdl.mongodb.org/win32/mongodb-win32- x86_64-3.0.7.zip • 設定環境變數 $MONGO_HOME/bin • 建立資料儲存位置 – $USER/mongo/data/data01 • >:表示「>」後面的敘述為指令 • 無認證授權-啟動 mongo > mongod.exe –dbpath $USER/mongo/data/data01 – port 預設為 27017
14.
Mongodb Client • mongo
shell – mongo.exe – javascript • GUI Client:MongoChef – http://3t.io/mongochef/download/
15.
Mongodb Client-mongo shell •
連線至 server > mongo –host 127.0.0.1 –port 27017 • 常用指令 – https://docs.mongodb.org/manual/refer ence/mongo-shell/
16.
Mongodb Client-mongo shell(2) •
顯示所有資料庫 > show dbs • 使用某一個資料庫或新增資料庫 > use <database> > use pet • 顯示該資料庫中的所有的 collections > show collections • 新增Collection – https://docs.mongodb.org/manual/reference/method/db.createCollection/ > db.createCollection(“user”)
17.
Mongodb Client-mongo shell(3) •
已經指向某一個 database 時 • 新增資料 > db.$Collection.insert > db.user.insert({“name”:”gaduo”}); > db.user.insert({ “name”:”test”, “psw”:”000test” }); • schema less
18.
Mongodb Client-mongo shell(4) •
https://docs.mongodb.org/manual/tutorial/query- documents/ • Query > db.$Collection.find() > db.$Collection.find().pretty() > db.user.find({}) > db.user.find({“name”:”gaduo”}) • PK: _id – ObjectId(“xxx”) – String • FK: <collection>.$id
19.
Spring-data-mongo • Maven Dependency <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> <version>1.2.5.RELEASE</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId> <version>1.9.9</version> </dependency> •
spring-petclinic-example – https://github.com/Gaduo/spring-petclinic-example
20.
business-context.xml <context:component-scan base-package="edu.tcu.mi.spring.web.service" /> <beans:beans
profile="mongodb"> <mongo:repositories base-package="edu.tcu.mi.spring.web.repository.mongo"/> <context:property-placeholder location="classpath:data-access.properties" /> <mongo:mongo id="mongo" host="${mongo.host.name}" port="${mongo.host.port}"/> <beans:bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"> <beans:constructor-arg ref="mongo" /> <beans:constructor-arg value="${mongo.databaseName}" /> </beans:bean> </beans:beans>
21.
Spring-data-mongo @Document @JsonSerialize(include=JsonSerialize.Inclusion.NON_EMPTY) public class Pet
extends BaseEntity { protected String name; public Pet(){ id = new ObjectId().toString(); } @Override public String toString() { return new Gson().toJson(this); } // getter … seter … }
22.
Spring Mongo/JPA Repository
23.
Spring Mongo/JPA Repository
Download now