diff --git a/.idea/artifacts/GDMS_war_exploded.xml b/.idea/artifacts/GDMS_war_exploded.xml
index 7c2d977..6b1fe0c 100644
--- a/.idea/artifacts/GDMS_war_exploded.xml
+++ b/.idea/artifacts/GDMS_war_exploded.xml
@@ -7,9 +7,6 @@
-
-
-
diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml
new file mode 100644
index 0000000..c00abce
--- /dev/null
+++ b/.idea/dataSources.xml
@@ -0,0 +1,19 @@
+
+
+
+
+ mariadb
+ true
+ org.mariadb.jdbc.Driver
+ jdbc:mariadb://localhost:3306/gdms
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/dictionaries/zhai_.xml b/.idea/dictionaries/zhai_.xml
index def2846..02285b8 100644
--- a/.idea/dictionaries/zhai_.xml
+++ b/.idea/dictionaries/zhai_.xml
@@ -1,6 +1,8 @@
+ gdms
+ mariadb
synchronizable
diff --git a/GDMS.iml b/GDMS.iml
index 429fca0..4bde68d 100644
--- a/GDMS.iml
+++ b/GDMS.iml
@@ -19,14 +19,16 @@
-
+
+
-
+
+
\ No newline at end of file
diff --git a/deployment/context.xml b/deployment/context.xml
new file mode 100644
index 0000000..9e9d9af
--- /dev/null
+++ b/deployment/context.xml
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/deployment/deploy.txt b/deployment/deploy.txt
new file mode 100644
index 0000000..4002c30
--- /dev/null
+++ b/deployment/deploy.txt
@@ -0,0 +1,4 @@
+0 windows home 1809
+1 java jdk10 默认路径
+2 tomcat8.5 默认路径
+3
\ No newline at end of file
diff --git a/deployment/init.sql b/deployment/init.sql
new file mode 100644
index 0000000..e379d84
--- /dev/null
+++ b/deployment/init.sql
@@ -0,0 +1 @@
+CREATE DATABASE `GDMS`;
\ No newline at end of file
diff --git a/deployment/mariadb-java-client-2.3.0.jar b/deployment/mariadb-java-client-2.3.0.jar
new file mode 100644
index 0000000..cbfa673
Binary files /dev/null and b/deployment/mariadb-java-client-2.3.0.jar differ
diff --git a/webpage/photo/学校发布选题.png b/documents/shortcut-webpage/photo/学校发布选题.png
similarity index 100%
rename from webpage/photo/学校发布选题.png
rename to documents/shortcut-webpage/photo/学校发布选题.png
diff --git a/webpage/photo/学校端首页.png b/documents/shortcut-webpage/photo/学校端首页.png
similarity index 100%
rename from webpage/photo/学校端首页.png
rename to documents/shortcut-webpage/photo/学校端首页.png
diff --git a/webpage/photo/学生选题.png b/documents/shortcut-webpage/photo/学生选题.png
similarity index 100%
rename from webpage/photo/学生选题.png
rename to documents/shortcut-webpage/photo/学生选题.png
diff --git a/webpage/photo/登陆界面.png b/documents/shortcut-webpage/photo/登陆界面.png
similarity index 100%
rename from webpage/photo/登陆界面.png
rename to documents/shortcut-webpage/photo/登陆界面.png
diff --git a/webpage/photo/老师的课题列表.png b/documents/shortcut-webpage/photo/老师的课题列表.png
similarity index 100%
rename from webpage/photo/老师的课题列表.png
rename to documents/shortcut-webpage/photo/老师的课题列表.png
diff --git a/webpage/photo/老师端学生列表.png b/documents/shortcut-webpage/photo/老师端学生列表.png
similarity index 100%
rename from webpage/photo/老师端学生列表.png
rename to documents/shortcut-webpage/photo/老师端学生列表.png
diff --git a/src/core/process/APSet.java b/src/core/process/APSet.java
deleted file mode 100644
index a927166..0000000
--- a/src/core/process/APSet.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package core.process;
-
-public class APSet {
-}
diff --git a/src/core/process/CompoundProcess.java b/src/core/process/CompoundProcess.java
deleted file mode 100644
index c4636be..0000000
--- a/src/core/process/CompoundProcess.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package core.process;
-
-import java.util.List;
-
-public class CompoundProcess extends Process {
- private List processes;
- public CompoundProcess(String info) {
- super(info);
- }
-
-}
diff --git a/src/core/process/Condition.java b/src/core/process/Condition.java
new file mode 100644
index 0000000..4d62665
--- /dev/null
+++ b/src/core/process/Condition.java
@@ -0,0 +1,23 @@
+package core.process;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class Condition {
+ private List processes;
+ public Process get(int index){
+ return processes.get(index);
+ }
+ public Condition(List processes){
+ this.processes=processes;
+ }
+ public Condition(){
+ processes = new ArrayList<>();
+ }
+ public void add(Process process){
+ this.processes.add(process);
+ }
+ public void add(List processes){
+ this.processes.addAll(processes);
+ }
+}
diff --git a/src/core/process/LastProcess.java b/src/core/process/LastProcess.java
new file mode 100644
index 0000000..316e405
--- /dev/null
+++ b/src/core/process/LastProcess.java
@@ -0,0 +1,8 @@
+package core.process;
+
+public class LastProcess extends Process{
+
+ public LastProcess(String info) {
+ super(info);
+ }
+}
diff --git a/src/core/process/ProcessManagement.java b/src/core/process/ProcessManagement.java
index f7d1e1e..dbffd13 100644
--- a/src/core/process/ProcessManagement.java
+++ b/src/core/process/ProcessManagement.java
@@ -1,10 +1,25 @@
package core.process;
import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
public class ProcessManagement {
- private CompoundProcess processes;
+ private List processes;
+ private Map> lastProcesses;
public void setProcessesByJson(File file){
//todo
}
+ public Process getAtomProcess(int index){
+ return processes.get(index);
+ }
+ public Condition getCondition(String userType, List index){
+ Condition condition = new Condition(lastProcesses.get(userType));
+ for(int i:index){
+ condition.add(getAtomProcess(i));
+ }
+ return condition;
+ }
+
}
diff --git a/src/core/user/User.java b/src/core/user/User.java
index 494f8fb..0f81d10 100644
--- a/src/core/user/User.java
+++ b/src/core/user/User.java
@@ -1,11 +1,9 @@
package core.user;
-import core.process.APSet;
-import core.process.ProcessManagement;
+import core.process.Condition;
import core.user.userFun.AccountManageable;
import core.user.userFun.ProcessConfigurable;
-import java.io.File;
import java.util.List;
public abstract class User implements AccountManageable, ProcessConfigurable{
@@ -13,7 +11,7 @@ public abstract class User implements AccountManageable, ProcessConfigurable{
private String id;
private String password;
private List permissions = null;
- private APSet condition;
+ private Condition condition;
public void addPermission(String permission){
if(!permissions.contains(permission))
permissions.add(permission);
diff --git a/src/dao/DBManagement.java b/src/dao/DBManagement.java
new file mode 100644
index 0000000..e597616
--- /dev/null
+++ b/src/dao/DBManagement.java
@@ -0,0 +1,43 @@
+package dao;
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.Properties;
+
+import org.apache.tomcat.jdbc.pool.DataSource;
+import org.apache.tomcat.jdbc.pool.PoolProperties;
+
+
+public class DBManagement {
+
+ static final String driverClassName="org.mariadb.jdbc.Driver";
+ static final String url="jdbc:mariadb://localhost:3306/gdms";
+ static final String username="gdms";
+ static final String password="GDMS";
+
+ public static DataSource dataSource = new DataSource();
+
+ public void init(){
+ PoolProperties poolProperties = new PoolProperties();
+ poolProperties.setUrl(url);
+ poolProperties.setDriverClassName(driverClassName);
+ poolProperties.setUsername(username);
+ poolProperties.setPassword(password);
+ dataSource.setPoolProperties(poolProperties);
+ }
+ public static Connection getConnection(){
+ try {
+ Class.forName(driverClassName);
+ } catch (ClassNotFoundException e) {
+ e.printStackTrace();
+ }
+ try {
+ return DriverManager.getConnection(url,username,password);
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+}
diff --git a/src/dao/Utils.java b/src/dao/Utils.java
index d32e4f7..8f22aa1 100644
--- a/src/dao/Utils.java
+++ b/src/dao/Utils.java
@@ -1,4 +1,6 @@
package dao;
public interface Utils {
+
+
}
diff --git a/src/gdms/test.java b/src/gdms/test.java
index 48ec04b..615ee8d 100644
--- a/src/gdms/test.java
+++ b/src/gdms/test.java
@@ -1,16 +1,49 @@
package gdms;
import core.user.Student;
import core.user.User;
+import dao.DBManagement;
+import org.apache.tomcat.jdbc.pool.DataSource;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
import java.lang.reflect.InvocationTargetException;
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class test {
- public static void main(String argc[]){
- String sTest = "-a add -s set -d delete";
- Map test = core.operation.utils.util.string2MapOptions(sTest);
- System.out.println(test);
+ public test(){
+ Connection con = null;
+ try{
+ con = DBManagement.getConnection();
+ Statement stmt = con.createStatement(); //创建Statement对象
+ System.out.print("成功连接到数据库!");
+ String sql = "select * from test";
+ ResultSet rs = stmt.executeQuery(sql);
+ rs.next();
+ System.out.println(rs.getString("name"));
+ rs.close();
+ stmt.close();
+ con.close();
+ }catch (Exception e){
+ e.printStackTrace();
+ }finally {
+ if(con!=null) {
+ try {
+ con.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ }
+ public static void main(String argc[]) throws NamingException, SQLException {
+ new test();
}
}
diff --git a/src/init/Init.java b/src/init/Init.java
new file mode 100644
index 0000000..dfc60d4
--- /dev/null
+++ b/src/init/Init.java
@@ -0,0 +1,26 @@
+package init;
+
+import dao.DBManagement;
+import gdms.test;
+
+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 java.io.IOException;
+
+@WebServlet(name = "Init")
+public class Init extends HttpServlet {
+ public void init(){
+ new DBManagement().init();
+ new test();
+ }
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+
+ }
+
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+
+ }
+}
diff --git a/web/WEB-INF/lib/mariadb-java-client-2.3.0.jar b/web/WEB-INF/lib/mariadb-java-client-2.3.0.jar
new file mode 100644
index 0000000..cbfa673
Binary files /dev/null and b/web/WEB-INF/lib/mariadb-java-client-2.3.0.jar differ
diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml
index d80081d..3d93697 100644
--- a/web/WEB-INF/web.xml
+++ b/web/WEB-INF/web.xml
@@ -3,4 +3,13 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
+
+ Init
+ init.Init
+ 1
+
+
+ Init
+ /init
+
\ No newline at end of file