Upload
patxi-gortazar
View
484
Download
0
Embed Size (px)
Citation preview
22
Desarrollo web backend
•Spring (Boot)•Mongo (DB)
•Microsoft (Azure)
TECHFEST 2016
http://zeroturnaround.com/
44
Desarrollo web backendTECHFEST 2016
55
Spring
• Framework con solera 1.0 2005→
• Reinventado en 2014 Spring Boot 1.0.0
TECHFEST 2016
66
SpringTECHFEST 2016
77
SpringTECHFEST 2016
88
SpringTECHFEST 2016
Spring <!-- Spring Core --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.core.version}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.core.version}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.core.version}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.core.version}</version> <type>jar</type> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${spring.core.version}</version> <type>jar</type> <scope>compile</scope> </dependency>
Spring<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jpa="http://www.springframework.org/schema/data/jpa"
xmlns:task="http://www.springframework.org/schema/task"xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"xmlns:util="http://www.springframework.org/schema/util"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd">
<import resource="classpath*:clock.xml" />
<context:component-scan base-package="service" annotation-config="true" /><context:component-scan base-package="algorithm" annotation-config="true" />
<context:component-scan base-package="loader" annotation-config="true" /> <context:component-scan base-package="model.ui" annotation-config="true" />
<!-- Mongo configuration --><bean class="service.CascadingMongoEventListener" /><bean class="util.MongoTemplateFactoryPostProcessor" /><import resource="classpath*:mongo-config.xml" />
1111
SpringTECHFEST 2016
1212
SpringTECHFEST 2016
Spring Boot
1313
SpringTECHFEST 2016
1414
SpringTECHFEST 2016
1515
Spring webTECHFEST 2016
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mustache</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency></dependencies>
1616
Spring webTECHFEST 2016
package es.urjc.code.dad;
import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplicationpublic class GreetingApplication {
public static void main(String[] args) {SpringApplication.run(GreetingApplication.class, args);
}}
1717
Spring webTECHFEST 2016
package es.urjc.code.dad;
import java.util.Date;import java.util.Map;
import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;
@Controllerpublic class GreetingController {
@RequestMapping("/greeting")public String welcome(Map<String, Object> model) {
model.put("name", "my friend");return "greeting_template";
}}
1818
Spring webTECHFEST 2016
@SpringBootApplication =>
@Configuration
@EnableAutoConfiguration
@ComponentScan
Spring
2121
Spring Cloud
2323
MongoDBTECHFEST 2016
2424
Bases de datos no relacionalesTECHFEST 2016
http://blog.clustrix.com/
3232
MongoDB deploymentTECHFEST 2016
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-rest</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> </dependencies>
Proveedores cloud
3939
Elasticidad
4040
Microservicios
Elasticidad
http://rightquestion.org/