Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
d30bf82
실습 시작을 위한 소스
javajigi Dec 8, 2015
b41eb45
filter url 경로 추가함.
javajigi Dec 8, 2015
746305d
freemarker로 회원가입 기능 구현 완료함.
javajigi Dec 15, 2015
f258e68
회원가입 단계까지 구현 완료함.
javajigi Jan 12, 2016
2221076
free marker 제거하고 jackson 라이브러리 추가함.
javajigi Jan 12, 2016
0a56791
새로운 html로 적용완료함.
javajigi Feb 4, 2016
4e0d700
/user 추가함.
javajigi Feb 26, 2016
518518d
/user 추가함.
javajigi Feb 26, 2016
3bfd92c
회원가입/사용자 목록 기능 개선함.
javajigi Feb 26, 2016
512a436
web.xml이 없어서 빌드 가능하도록 수정함.
javajigi Mar 9, 2016
94dba41
라이브러리 변경, 버전 업그레이드함.
javajigi Mar 24, 2016
93d869f
cherry pick 파일 추가함
javajigi Mar 24, 2016
6dad60f
cherry pick 작업 완료함.
javajigi Mar 24, 2016
e2322a1
cherry-pick 파일 삭제함.
javajigi Mar 24, 2016
c923a34
cherry pick을 진행하는 파일 추가함.
javajigi Mar 24, 2016
4f35747
src/main/java에 있던 WebServerLauncher를 src/test/java로 이동함.
javajigi Jul 12, 2016
4163679
모든 소스 코드가 tab을 사용하지 않고 space를 사용하도록 수정함.
javajigi Jul 18, 2016
3fa2ee8
포트 수정
LimFull Sep 30, 2019
3e72e17
update.jsp 수정 중
LimFull Sep 30, 2019
7bc6cac
git rm -r --cached tomcat*
LimFull Oct 1, 2019
7a80609
user 객체 넘김
LimFull Oct 1, 2019
24b820d
개인정보 수정 화면에서 요청
LimFull Oct 3, 2019
0627358
로그인
LimFull Oct 3, 2019
c7df875
네비게이션 jspf
LimFull Oct 3, 2019
b77df29
로그인, 로그아웃 서블릿 연결
LimFull Oct 4, 2019
5ed4a5e
form
LimFull Oct 6, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,6 @@
/target/
/.classpath
/.project
/jwp-basic.iml
/.idea/
/tomcat.8080/
2 changes: 0 additions & 2 deletions README.md

This file was deleted.

63 changes: 31 additions & 32 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

<org.springframework.version>3.2.9.RELEASE</org.springframework.version>
<org.springframework.version>4.2.5.RELEASE</org.springframework.version>
<tomcat.version>8.0.15</tomcat.version>
</properties>

Expand All @@ -24,12 +24,24 @@
</dependency>

<!-- servlet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>

<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>18.0</version>
</dependency>

<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
Expand All @@ -41,9 +53,9 @@
<version>3.3.2</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.2.2</version>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
Expand All @@ -56,24 +68,25 @@
<version>${org.springframework.version}</version>
</dependency>

<!-- logger -->
<dependency>
<groupId>org.reflections</groupId>
<artifactId>reflections</artifactId>
<version>0.9.10</version>
</dependency>

<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.23</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.4</version>
</dependency>


<!-- tomcat -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
Expand All @@ -92,24 +105,6 @@
<version>${tomcat.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper</artifactId>
<version>${tomcat.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper-el</artifactId>
<version>${tomcat.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
<version>${tomcat.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>

<build>
Expand All @@ -131,11 +126,15 @@
<version>2.4</version>
<configuration>
<warSourceDirectory>webapp</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.9</version>
<configuration>
<downloadSources>true</downloadSources>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand Down
24 changes: 24 additions & 0 deletions src/main/java/core/db/DataBase.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package core.db;

import java.util.Collection;
import java.util.Map;

import com.google.common.collect.Maps;

import next.model.User;

public class DataBase {
private static Map<String, User> users = Maps.newHashMap();

public static void addUser(User user) {
users.put(user.getUserId(), user);
}

public static User findUserById(String userId) {
return users.get(userId);
}

public static Collection<User> findAll() {
return users.values();
}
}
44 changes: 22 additions & 22 deletions src/main/java/core/jdbc/ConnectionManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,28 +5,28 @@

import javax.sql.DataSource;

import org.apache.commons.dbcp.BasicDataSource;
import org.apache.commons.dbcp2.BasicDataSource;

public class ConnectionManager {
private static final String DB_DRIVER = "org.h2.Driver";
private static final String DB_URL = "jdbc:h2:~/jwp-basic;AUTO_SERVER=TRUE";
private static final String DB_USERNAME = "sa";
private static final String DB_PW = "";
public static DataSource getDataSource() {
BasicDataSource ds = new BasicDataSource();
ds.setDriverClassName(DB_DRIVER);
ds.setUrl(DB_URL);
ds.setUsername(DB_USERNAME);
ds.setPassword(DB_PW);
return ds;
}
public static Connection getConnection() {
try {
return getDataSource().getConnection();
} catch (SQLException e) {
throw new IllegalStateException(e);
}
}
private static final String DB_DRIVER = "org.h2.Driver";
private static final String DB_URL = "jdbc:h2:~/jwp-basic;AUTO_SERVER=TRUE";
private static final String DB_USERNAME = "sa";
private static final String DB_PW = "";

public static DataSource getDataSource() {
BasicDataSource ds = new BasicDataSource();
ds.setDriverClassName(DB_DRIVER);
ds.setUrl(DB_URL);
ds.setUsername(DB_USERNAME);
ds.setPassword(DB_PW);
return ds;
}

public static Connection getConnection() {
try {
return getDataSource().getConnection();
} catch (SQLException e) {
throw new IllegalStateException(e);
}
}
}
34 changes: 0 additions & 34 deletions src/main/java/core/web/AbstractBaseServlet.java

This file was deleted.

30 changes: 15 additions & 15 deletions src/main/java/core/web/filter/CharacterEncodingFilter.java
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,25 @@
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;

@WebFilter
@WebFilter("/*")
public class CharacterEncodingFilter implements Filter {
private static final String DEFAULT_ENCODING = "UTF-8";
private static final String DEFAULT_ENCODING = "UTF-8";

@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}

@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(DEFAULT_ENCODING);
response.setCharacterEncoding(DEFAULT_ENCODING);
chain.doFilter(request, response);
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
request.setCharacterEncoding(DEFAULT_ENCODING);
response.setCharacterEncoding(DEFAULT_ENCODING);
chain.doFilter(request, response);

}
}

@Override
public void destroy() {
}
@Override
public void destroy() {
}

}
101 changes: 49 additions & 52 deletions src/main/java/next/dao/UserDao.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,62 +9,59 @@
import next.model.User;

public class UserDao {
public void insert(User user) throws SQLException {
Connection con = null;
PreparedStatement pstmt = null;
try {
con = ConnectionManager.getConnection();
String sql = "INSERT INTO USERS VALUES (?, ?, ?, ?)";
pstmt = con.prepareStatement(sql);
pstmt.setString(1, user.getUserId());
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getName());
pstmt.setString(4, user.getEmail());
public void insert(User user) throws SQLException {
Connection con = null;
PreparedStatement pstmt = null;
try {
con = ConnectionManager.getConnection();
String sql = "INSERT INTO USERS VALUES (?, ?, ?, ?)";
pstmt = con.prepareStatement(sql);
pstmt.setString(1, user.getUserId());
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getName());
pstmt.setString(4, user.getEmail());

pstmt.executeUpdate();
} finally {
if (pstmt != null) {
pstmt.close();
}
pstmt.executeUpdate();
} finally {
if (pstmt != null) {
pstmt.close();
}

if (con != null) {
con.close();
}
}
}
if (con != null) {
con.close();
}
}
}

public User findByUserId(String userId) throws SQLException {
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
con = ConnectionManager.getConnection();
String sql = "SELECT userId, password, name, email FROM USERS WHERE userid=?";
pstmt = con.prepareStatement(sql);
pstmt.setString(1, userId);
public User findByUserId(String userId) throws SQLException {
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
con = ConnectionManager.getConnection();
String sql = "SELECT userId, password, name, email FROM USERS WHERE userid=?";
pstmt = con.prepareStatement(sql);
pstmt.setString(1, userId);

rs = pstmt.executeQuery();
rs = pstmt.executeQuery();

User user = null;
if (rs.next()) {
user = new User(
rs.getString("userId"),
rs.getString("password"),
rs.getString("name"),
rs.getString("email"));
}
User user = null;
if (rs.next()) {
user = new User(rs.getString("userId"), rs.getString("password"), rs.getString("name"),
rs.getString("email"));
}

return user;
} finally {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (con != null) {
con.close();
}
}
}
return user;
} finally {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (con != null) {
con.close();
}
}
}
}
Loading