๐Ÿ”น pom.xml ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์ •

์ฐธ๊ณ 

โœ… ์—๋Ÿฌ

  • ๋งŒ์•ฝ ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค๋ฉด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ œ๋Œ€๋กœ ๋‹ค์šด๋˜์ง€ ์•Š์€ ๊ฒƒ์ด์˜ˆ์š”
    C:\Users\Administrator\.m2\repository

  • ์—ฌ๊ธฐ์—์„œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ญ์ œํ•˜๊ณ  ๋‹ค์‹œ maven์ฝ”๋“œ ์ ๊ณ  refreshํ•˜๊ณ  ๋‹ค์šด ๋ฐ›์œผ๋ฉด ๋ผ์š”.
  • ๊ทธ๋ƒฅ ์ฝ”๋“œ๋งŒ ์‚ญ์ œํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ๋ถ™์—ฌ๋„ฃ๊ธฐํ•˜๋ฉด ์ด๋ฏธ ์ปดํ“จํ„ฐ์— ๊น”๋ฆฐ ๊ฒƒ์„ ์ฐธ์กฐ๋งŒ ์‹œํ‚ค๊ณ  ์žฌ๋‹ค์šด๋กœ๋“œ๋Š” ํ•˜์ง€ ์•Š๊ธฐ ๋–„๋ฌธ์— ์†Œ์šฉ์—†์–ด์š”.
  • ์—ฌ๊ธฐ์— ์žˆ๋Š” ๊ฒƒ๋งŒ ๋“ฑ๋กํ•œ ๊ฒŒ ์•„๋‹ˆ์˜ˆ์š”. ๋“ฑ๋กํ•œ ๋ชจ๋“  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” github์„ ์ฐธ๊ณ ํ•ด์•ผ ํ•ด์š”.
  • ์ฒซ๋ฒˆ์งธ maven์„ reloadํ•ด์ฃผ์„ธ์šฉ

  • ๋‘๋ฒˆ์งธ open module settings์—์„œ web์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์ฃผ์„ธ์š”.
  • ์—†์œผ๋ฉด ์ถ”๊ฐ€ํ•ด ์ฃผ์„ธ์š”.

  • ํด๋ž˜์Šค ์ด๋ฆ„์— ๋นจ๊ฐ„์ƒ‰ ๋œจ๋Š” ๊ฒƒ์€ ์—๋Ÿฌ๊ฐ€ ์•„๋‹ˆ์˜ˆ์š”.
  • ํด๋ž˜์Šค ์•ˆ์— ์ฝ”๋“œ์— ๋นจ๊ฐ„์ƒ‰ ๋œจ๋Š” ๊ฒƒ์ด ์—๋Ÿฌ์˜ˆ์š”.

โœ… ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋‹ค์šด๋ฐ›๋Š” ๋ฒ•

  • maven ๋งํฌ ๋ณต์‚ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ
  • IntelliJ refresh

โœ… spring-context

โœ… jstl

โœ… jsp-api

โœ… lombok

getter setter ์•ˆ์จ๋„ ๋œ๋‹ค. ์ž๋™์œผ๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค.

โœ… my sql connector

โœ… my batis

DAO๋ฅผ ๋งŒ๋“ค์ง€ ์•Š์•„๋„ ๋œ๋‹ค. ์ž๋™์œผ๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค.

โœ… my batis Spring

โœ… HikariCP

connection pool = Hikari

โœ… JBcrypt

jbcrypt๊ฐ€ ์ž๋ฐ”์šฉ, bcrypt๋Š” ๋‹ค๋ฅธ ์–ธ์–ด์šฉ

โœ… Jackson Databind

  • ๊ฐ’์„ JSON ํ˜•์‹์œผ๋กœ ๋ฐ”๊ฟ”์ค˜์š”
  • jackson core jackson databind jackson annotation ๋‹ค ๋ฐ›์•„์ ธ์š”.
  • web.xml์—์„œ bean๋“ฑ๋ก์„ ์ถ”๊ฐ€์ ์œผ๋กœ ํ•ด์ค˜์•ผ์ง€ ์“ธ ์ˆ˜ ์žˆ๊ฒŒ ๋ผ์š”.

web.xml



<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>

โœ… Apache Commons FileUpload

  • ํŒŒ์ผ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ด์ค˜์š”

โœ… Tiles Core Library

  • ํ…œํ”Œ๋ฆฟ ๊ธฐ๋Šฅ
  • ํ™”๋ฉด๊ตฌ์„ฑ ๋ ˆ์ด์•„์›ƒ
  • ๋ ˆ์ด์•„์›ƒ ๋’ค์ง‘๋Š” ๊ฒฝ์šฐ, B.jsp๊ฐ€ ์—†์–ด์ง„๋‹ค๋ฉด ์ „์ˆ˜ ๋“ค์–ด๊ฐ€์„œ import ๋ณ€๊ฒฝํ•ด์•ผ ํ•ด์š”.
  • ์ˆ˜์ • ๋˜๋Š” ๋ ˆ์ด์•„์›ƒ ๋ฐ”๊ฟ€ ๊ฒฝ์šฐ, template.jsp๋งŒ ๋ณ€๊ฒฝํ•˜๋ฉด ๋ผ์š”.

์ด๋Ÿฐ ๋ชจ์–‘์˜ ๋ ˆ์ด์•„์›ƒ์„ ๋งŒ๋“ค๊ฑฐ์˜ˆ์š”

๋ ˆ์ด์•„์›ƒ์„ ๋ชจ๋“  ํ™”๋ฉด์— ์ ์šฉ์‹œํ‚ค๊ธฐ ์œ„ํ•ด์„œ ์ฒซ๋ฒˆ์งธ ๋ฐฉ๋ฒ•, ๋ชจ๋“  jsp์— ๋ ˆ์ด์•„์›ƒ์„ ๋ถ™์—ฌ๋„ฃ๊ธฐ ํ•ด์ฃผ๋Š” ๊ฑฐ์˜ˆ์š”.
๊ทธ๋Ÿฐ๋ฐ ๋งŒ์•ฝ์— c๋ถ€๋ถ„์„ ์ˆ˜์ •ํ•œ๋‹ค๋ฉด์š”?
๋ชจ๋“  jspํŒŒ์ผ์— ์ „์ˆ˜ ๋“ค์–ด๊ฐ€์„œ ํ•˜๋‚˜ ํ•˜๋‚˜ ์ˆ˜์ •ํ•ด์•ผ ํ•ด์š”.

๊ทธ๋ž˜์„œ ๋‘๋ฒˆ์งธ ๋ฐฉ๋ฒ•์ด ๋“ฑ์žฅํ–ˆ์–ด์š”. ๋‘๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ๋ ˆ์ด์•„์›ƒ์„ A.jsp , B.jsp , c.jsp ๋ฅผ ๋”ฐ๋กœ ๋งŒ๋“ค์–ด์„œ ๋ชจ๋“  jsp ํŒŒ์ผ๋“ค์— importํ•˜๋Š” ๊ฑฐ์˜ˆ์š”.
๊ทธ๋Ÿผ ๋งŒ์•ฝ ์–ด๋–ค ๋ ˆ์ด์•„์›ƒ์„, ์˜ˆ๋ฅผ ๋“ค์–ด b๋ ˆ์ด์•„์›ƒ์„ ์‚ญ์ œํ•œ๋‹ค๋ฉด์š”?
๊ทธ๋Ÿผ ๋ชจ๋“  jspํŒŒ์ผ๋“ค์„ ์ „์ˆ˜ ๋“ค์–ด๊ฐ€์„œ ํ•˜๋‚˜ ํ•˜๋‚˜ ์‚ญ์ œํ•ด์•ผ ํ•  ๊ฑฐ์˜ˆ์š”.

๊ทธ๋ž˜์„œ ์„ธ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์ด ๋“ฑ์žฅํ–ˆ์–ด์š”.
๋‘๋ฒˆ์งธ ๋ฐฉ๋ฒ•๊ณผ ๋ฐ˜๋Œ€๋กœ template.jsp์— ๋ชจ๋“  jspํŒŒ์ผ๋“ค์„ importํ•˜๋Š” ๊ฑฐ์˜ˆ์š”.
๊ทธ๋Ÿผ ์–ด๋–ค ์ˆ˜์ •์ด ์žˆ๋˜ ๊ฐ„์— template.jsp๋งŒ ๊ณ ์น˜๋ฉด ๋ผ์š”.
์ด ๋ฐฉ๋ฒ•์œผ๋กœ ํ•˜๊ธฐ ์œ„ํ•ด์„œ tiles ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์“ฐ๋Š” ๊ฑฐ์˜ˆ์š”.

๐Ÿ”น ์ „์ฒด์ฝ”๋“œ

๐Ÿ‘†๋งํฌ๋ฅผ ๋ˆ„๋ฅด๋ฉด ์†Œ์Šค๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์–ด์š”.

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>first</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <spring-version>4.3.30.RELEASE</spring-version>
    </properties>

    <dependencies> <!--๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋“ค-->

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring-version}</version>
        </dependency>

        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>

        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.2</version>
            <scope>provided</scope>
        </dependency>

        <!--getter setter ์•ˆ์จ๋„ ๋œ๋‹ค. ์ž๋™์œผ๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค.-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.20</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.25</version>
        </dependency>

        <!--DAO๋ฅผ ๋งŒ๋“ค์ง€ ์•Š์•„๋„ ๋œ๋‹ค.-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.7</version>
        </dependency>

        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>2.0.6</version>
        </dependency>

        <!--connection pool = Hikari-->
        <dependency>
            <groupId>com.zaxxer</groupId>
            <artifactId>HikariCP</artifactId>
            <version>4.0.3</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>${spring-version}</version>
        </dependency>

        <!--jbcrypt๊ฐ€ ์ž๋ฐ”์šฉ, bcrypt๋Š” ๋‹ค๋ฅธ ์–ธ์–ด์šฉ-->
        <dependency>
            <groupId>org.mindrot</groupId>
            <artifactId>jbcrypt</artifactId>
            <version>0.4</version>
        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.12.3</version>
        </dependency>

    </dependencies>

</project>

profile
๋ช‡ ๋ฒˆ์„ ๋„˜์–ด์ ธ๋„ ์•ž์œผ๋กœ ๊ณ„์† ๋‚˜์•„๊ฐ€์ž

0๊ฐœ์˜ ๋Œ“๊ธ€