diff --git a/README.md b/README.md
new file mode 100644
index 0000000..b354862
--- /dev/null
+++ b/README.md
@@ -0,0 +1,5 @@
+# Java
+Java Project Or Small Demo Or Java Knowledge Or Java Application
+
+
+1.JavaWeb3层架构的简单演示
diff --git a/Three_Layer_Architecture/.classpath b/Three_Layer_Architecture/.classpath
new file mode 100644
index 0000000..61be3b6
--- /dev/null
+++ b/Three_Layer_Architecture/.classpath
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Three_Layer_Architecture/.project b/Three_Layer_Architecture/.project
new file mode 100644
index 0000000..cdfbc6c
--- /dev/null
+++ b/Three_Layer_Architecture/.project
@@ -0,0 +1,31 @@
+
+
+ Three_Layer_Architecture
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.wst.common.project.facet.core.builder
+
+
+
+
+ org.eclipse.wst.validation.validationbuilder
+
+
+
+
+
+ org.eclipse.jem.workbench.JavaEMFNature
+ org.eclipse.wst.common.modulecore.ModuleCoreNature
+ org.eclipse.wst.common.project.facet.core.nature
+ org.eclipse.jdt.core.javanature
+ org.eclipse.wst.jsdt.core.jsNature
+
+
diff --git a/Three_Layer_Architecture/.settings/.jsdtscope b/Three_Layer_Architecture/.settings/.jsdtscope
new file mode 100644
index 0000000..92e666d
--- /dev/null
+++ b/Three_Layer_Architecture/.settings/.jsdtscope
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Three_Layer_Architecture/.settings/org.eclipse.jdt.core.prefs b/Three_Layer_Architecture/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0c68a61
--- /dev/null
+++ b/Three_Layer_Architecture/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Three_Layer_Architecture/.settings/org.eclipse.wst.common.component b/Three_Layer_Architecture/.settings/org.eclipse.wst.common.component
new file mode 100644
index 0000000..46080ea
--- /dev/null
+++ b/Three_Layer_Architecture/.settings/org.eclipse.wst.common.component
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/Three_Layer_Architecture/.settings/org.eclipse.wst.common.project.facet.core.xml b/Three_Layer_Architecture/.settings/org.eclipse.wst.common.project.facet.core.xml
new file mode 100644
index 0000000..f270c78
--- /dev/null
+++ b/Three_Layer_Architecture/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/Three_Layer_Architecture/.settings/org.eclipse.wst.jsdt.ui.superType.container b/Three_Layer_Architecture/.settings/org.eclipse.wst.jsdt.ui.superType.container
new file mode 100644
index 0000000..3bd5d0a
--- /dev/null
+++ b/Three_Layer_Architecture/.settings/org.eclipse.wst.jsdt.ui.superType.container
@@ -0,0 +1 @@
+org.eclipse.wst.jsdt.launching.baseBrowserLibrary
\ No newline at end of file
diff --git a/Three_Layer_Architecture/.settings/org.eclipse.wst.jsdt.ui.superType.name b/Three_Layer_Architecture/.settings/org.eclipse.wst.jsdt.ui.superType.name
new file mode 100644
index 0000000..05bd71b
--- /dev/null
+++ b/Three_Layer_Architecture/.settings/org.eclipse.wst.jsdt.ui.superType.name
@@ -0,0 +1 @@
+Window
\ No newline at end of file
diff --git a/Three_Layer_Architecture/WebContent/META-INF/MANIFEST.MF b/Three_Layer_Architecture/WebContent/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..254272e
--- /dev/null
+++ b/Three_Layer_Architecture/WebContent/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
diff --git a/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/dao/UserDao.class b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/dao/UserDao.class
new file mode 100644
index 0000000..c6ad411
Binary files /dev/null and b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/dao/UserDao.class differ
diff --git a/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/domain/User.class b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/domain/User.class
new file mode 100644
index 0000000..0f3504a
Binary files /dev/null and b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/domain/User.class differ
diff --git a/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/servcie/UserService.class b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/servcie/UserService.class
new file mode 100644
index 0000000..5c22d7b
Binary files /dev/null and b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/servcie/UserService.class differ
diff --git a/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/web/servlet/UserServlet.class b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/web/servlet/UserServlet.class
new file mode 100644
index 0000000..d003ded
Binary files /dev/null and b/Three_Layer_Architecture/WebContent/WEB-INF/classes/com/cyc/web/servlet/UserServlet.class differ
diff --git a/Three_Layer_Architecture/WebContent/WEB-INF/lib/jstl.jar b/Three_Layer_Architecture/WebContent/WEB-INF/lib/jstl.jar
new file mode 100644
index 0000000..a02abec
Binary files /dev/null and b/Three_Layer_Architecture/WebContent/WEB-INF/lib/jstl.jar differ
diff --git a/Three_Layer_Architecture/WebContent/WEB-INF/lib/standard.jar b/Three_Layer_Architecture/WebContent/WEB-INF/lib/standard.jar
new file mode 100644
index 0000000..bc528ac
Binary files /dev/null and b/Three_Layer_Architecture/WebContent/WEB-INF/lib/standard.jar differ
diff --git a/Three_Layer_Architecture/WebContent/index.jsp b/Three_Layer_Architecture/WebContent/index.jsp
new file mode 100644
index 0000000..f46345a
--- /dev/null
+++ b/Three_Layer_Architecture/WebContent/index.jsp
@@ -0,0 +1,13 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+
+
+
+
+Insert title here
+
+
+ 点击查看
+
+
\ No newline at end of file
diff --git a/Three_Layer_Architecture/WebContent/show.jsp b/Three_Layer_Architecture/WebContent/show.jsp
new file mode 100644
index 0000000..02b8039
--- /dev/null
+++ b/Three_Layer_Architecture/WebContent/show.jsp
@@ -0,0 +1,14 @@
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+
+
+
+
+Insert title here
+
+
+ 用户名: ${user.getUsername() }
+ 密码:${user.getPassword() }
+
+
\ No newline at end of file
diff --git a/Three_Layer_Architecture/src/com/cyc/dao/UserDao.java b/Three_Layer_Architecture/src/com/cyc/dao/UserDao.java
new file mode 100644
index 0000000..95282ea
--- /dev/null
+++ b/Three_Layer_Architecture/src/com/cyc/dao/UserDao.java
@@ -0,0 +1,9 @@
+package com.cyc.dao;
+
+import com.cyc.domain.User;
+
+public class UserDao {
+ public User findUser() {
+ return new User("Jack", "123456");
+ }
+}
diff --git a/Three_Layer_Architecture/src/com/cyc/domain/User.java b/Three_Layer_Architecture/src/com/cyc/domain/User.java
new file mode 100644
index 0000000..9287633
--- /dev/null
+++ b/Three_Layer_Architecture/src/com/cyc/domain/User.java
@@ -0,0 +1,39 @@
+package com.cyc.domain;
+
+/**
+ * ȡݴ洢
+ *
+ * @author cyc
+ *
+ */
+public class User {
+ private String username = null;
+ private String password = null;
+
+ public User() {
+
+ }
+
+ public User(String username, String password) {
+ super();
+ this.username = username;
+ this.password = password;
+ }
+
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+}
diff --git a/Three_Layer_Architecture/src/com/cyc/servcie/UserService.java b/Three_Layer_Architecture/src/com/cyc/servcie/UserService.java
new file mode 100644
index 0000000..ab79893
--- /dev/null
+++ b/Three_Layer_Architecture/src/com/cyc/servcie/UserService.java
@@ -0,0 +1,12 @@
+package com.cyc.servcie;
+
+import com.cyc.dao.UserDao;
+import com.cyc.domain.User;
+
+public class UserService {
+ private UserDao userDao = new UserDao();
+
+ public User find() {
+ return userDao.findUser();
+ }
+}
diff --git a/Three_Layer_Architecture/src/com/cyc/web/servlet/UserServlet.java b/Three_Layer_Architecture/src/com/cyc/web/servlet/UserServlet.java
new file mode 100644
index 0000000..876ee54
--- /dev/null
+++ b/Three_Layer_Architecture/src/com/cyc/web/servlet/UserServlet.java
@@ -0,0 +1,46 @@
+package com.cyc.web.servlet;
+
+import java.io.IOException;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import com.cyc.domain.User;
+import com.cyc.servcie.UserService;
+
+/**
+ * Servlet implementation class UserServlet
+ */
+@WebServlet("/UserServlet")
+public class UserServlet extends HttpServlet {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * Default constructor.
+ */
+ public UserServlet() {
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
+ */
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ // TODO Auto-generated method stub
+ UserService us = new UserService();
+ User user = us.find();
+ request.setAttribute("user", user);
+ request.getRequestDispatcher("/show.jsp").forward(request, response);
+ }
+
+ /**
+ * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
+ */
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ // TODO Auto-generated method stub
+ doGet(request, response);
+ }
+
+}