修改pom.xml 新增QueryDSL依赖,修改实现Tracker代码

Change-Id: I3dfb6d7c1fdb7922bc78f53b9e88438cee425df6
diff --git a/src/main/java/tracker/Tracker.java b/src/main/java/tracker/Tracker.java
index e1165b2..8addf61 100644
--- a/src/main/java/tracker/Tracker.java
+++ b/src/main/java/tracker/Tracker.java
@@ -1,5 +1,84 @@
 package tracker;
 
-// public class Tracker implements TrackerInterface {
-    
-// }
+import java.io.File;
+import javax.persistence.EntityManager;
+import javax.persistence.EntityManagerFactory;
+import javax.persistence.EntityTransaction;
+import javax.persistence.Persistence;
+import com.querydsl.jpa.impl.JPAUpdateClause;
+import object.QUserPT;
+import object.UserPT;
+import object.TTorent;
+import object.TransRecord;
+
+public class Tracker implements TrackerInterface {
+    private static final EntityManagerFactory emf =
+        Persistence.createEntityManagerFactory("myPersistenceUnit");
+
+    @Override
+    public boolean AddUpLoad(String userid, int upload) {
+        EntityManager em = emf.createEntityManager();
+        EntityTransaction tx = em.getTransaction();
+        try {
+            tx.begin();
+            QUserPT q = QUserPT.userPT;
+            long updated = new JPAUpdateClause(em, q)
+                .where(q.userid.eq(userid))
+                .set(q.upload, q.upload.add(upload))
+                .execute();
+            tx.commit();
+            return updated > 0;
+        } catch(Exception e) {
+            if (tx.isActive()) tx.rollback();
+            return false;
+        } finally {
+            em.close();
+        }
+    }
+
+    @Override
+    public boolean ReduceUpLoad(String userid,int upload){
+        return false;
+    };//给用户减上传量,返回0成功,返回1失败;
+
+    @Override
+    public boolean AddDownload(String userid,int download){
+        return false;
+    };//给用户增加下载量,返回0成功,返回1失败;
+
+    @Override
+    public boolean ReduceDownload(String userid,int download){
+        return false;
+    };//给用户减少下载量,返回0成功,返回1失败;
+
+    @Override
+    public boolean AddMagic(String userid,int magic){
+        return false;
+    };//给用户增加魔力值,返回0成功,返回1失败;
+
+    @Override
+    public boolean ReduceMagic(String userid,int magic){
+        return false;
+    };//给用户减少魔力值,返回0成功,返回1失败;
+
+    @Override
+    public TTorent ReadTorrent(File torrent){
+        return new TTorent();
+    };//传入torrent文件,解析后返回TTorent类
+
+    @Override
+    public int SaveTorrent(TTorent seed,String seedid){
+        return 0;
+    };//保存seedid对应的ttorent信息
+
+    @Override
+    public File GetTTorent(String seedid,String userid){
+        return null;
+    };//根据种子id获得ttorent信息然后构建Ttorent文件并返回,同时记录用户的下载行为
+
+
+    @Override
+    public int AddRecord(String seedid,TransRecord rd){
+        return 0;
+    };//新增一个seedid对应的种子的传输任务记录
+}