개발을 잘하고 싶은 개발자

맥 인텔리제이 메이븐 벨로씨티 프로젝트 mac intellij maven velocity project 본문

Backend/maven

맥 인텔리제이 메이븐 벨로씨티 프로젝트 mac intellij maven velocity project

_소피아 2016. 1. 22. 16:25
1.pom.xml

<project xmlns="...">
<modelVersion>4.0.0</modelVersion>
<groupId>com.company.sample</groupId>
<artifactId>webservice-test</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>webservice-test Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.2.4.RELEASE</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.2.4.RELEASE</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.2.4.RELEASE</version>
</dependency>

<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.2.4.RELEASE</version>
</dependency>

</dependencies>
<build>
<finalName>webservice-test</finalName>
</build>
</project>

2. web.xml

<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app xmlns:xsi="...">
<display-name>Archetype Created Web Application</display-name>

<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

</web-app>

3. dispatcher-servelt.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans ... >

<context:component-scan base-package="net.daum.game" ></context:component-scan>

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/"/>
<property name="suffix" value=".jsp"/>
</bean>

<bean class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
<property name="suffix" value=".vm" />
<property name="order" value="1" />
</bean>

<bean id="velocityConfig"
class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
<property name="resourceLoaderPath" value="/WEB-INF/velocity/" />

</bean>
</beans>

4. velocity/myprofile.vm

<html>
<body>
Name -> $mName
<br>
Age -> $mAge
<br>
gender -> $mGender
<br>
<hr>
<br>
My name is $mName. I'm $mAge years old.

#set( $mAge = 25)

</body>
</html>

5. ProfileController

package com.company.sample;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

/**
* Created by sm on 2016. 1. 22..
*/
@Controller
public class ProfileController {

@RequestMapping(value = "profile")
public ModelAndView ProfileView() {

ModelAndView mv =
new ModelAndView();
mv.setViewName("myprofile");
mv.addObject("mName", "sm");
mv.addObject("mAge", "24");
mv.addObject("mGender", "female");

return mv;
}
}


프로젝트 구성

(모자이크부분은 com.company.sample)