package restful.api;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.util.Base64;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import dm.jdbc.filter.stat.json.JSONObject;
import restful.bean.Result.ResultCode;
import restful.bean.Token.Token;
import restful.database.EM;
import restful.entity.GameEntity;
import restful.entity.UserEntity;
import restful.utils.AsyncFun;
import restful.utils.ChatTools;
import restful.utils.CookieTools;
import restful.utils.FileUtil;
import restful.utils.ImageBase64Code;
import restful.utils.InterfaceTools;
import restful.utils.Logging;
import restful.utils.MD5Encryption;
import restful.websocket.WebSocketProcess;
@Path("/api")
public class Interface {
@Context
private HttpServletRequest request;
@Context
private HttpServletResponse response;
@Resource
private final static InterfaceTools tools = new InterfaceTools();
@GET
@Path("/hello")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String hello() {
// System.out.println(new Date()+request.getSession().toString());
// System.out.println(request.getSession().getAttribute("hello"));
// request.getSession().setAttribute("hello","hello");
tools.addRe(response);
CookieTools.addCookie("hello", "jxufe", "/", 60 * 60 * 24 * 7, response);
return "hello";
}
@GET
@Path("/checkCookieAPI")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String checkCookieAPI(@QueryParam("username") String username) {
tools.addRe(response);
return Check(username, request);
}
@GET
@Path("/getAllUsers")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String getAllUsers(@QueryParam("username") String username) {
tools.addRe(response);
String check = Check(username, request);
if (!check.equals("ok")) {
return check;
}
List<UserEntity> users = EM.getEntityManager().createNamedQuery("UserEntity.findUserAll", UserEntity.class)
.getResultList();
String json = tools.makeJSON(users);
return tools.makeReturn(json);
}
@GET
@Path("/add")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String add(@QueryParam("Name") String NAME, @QueryParam("PASSWORD") String PASSWORD,
@QueryParam("NICKNAME") String NICKNAME, @QueryParam("SEX") String SEX) {
tools.addRe(response);
List<UserEntity> result = EM.getEntityManager().createNamedQuery("UserEntity.findUserByName", UserEntity.class)
.setParameter("NAME", NAME).getResultList();
if (result.isEmpty()) {
UserEntity userentity = new UserEntity(NAME, NICKNAME, PASSWORD, SEX);
// System.out.println(userentity.show());
tools.commitDB(userentity);
String json = tools.makeJSON(userentity);
return tools.makeReturn(json);
} else
return tools.makeErReturn(ResultCode.USER_HAS_EXISTED);
}
@GET
@POST
@Path("/update")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String update(UserEntity userentity) {
tools.addRe(response);
return " ";
}
@GET
@POST
@Path("/delete")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String delete(UserEntity userentity) {
tools.addRe(response);
tools.deleteDB(userentity);
return tools.makeReturn();
}
@GET
@Path("/login")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String denglu(@QueryParam("userName") String NAME, @QueryParam("password") String PASSWORD) {
tools.addRe(response);
List<UserEntity> result = EM.getEntityManager().createNamedQuery("UserEntity.findUserByName", UserEntity.class)
.setParameter("NAME", NAME).getResultList();
if (result.isEmpty())
return tools.makeErReturn(ResultCode.USER_NOT_EXISTED);
else {
UserEntity userentity = result.get(0);
if (userentity.checkPass(PASSWORD)) {
// HttpServletRequest req = (HttpServletRequest) request;
// userentity.setTOKEN(req.getSession().toString());
String token = Token.createToken(NAME);
userentity.setTOKEN(token);
userentity.setLOGINTIME(new Date());
tools.commitDB(userentity);
CookieTools.addCookie("token", token, "/", 60 * 60 * 24 * 7, response);
return tools.makeReturn(tools.makeJSON(userentity));
} else {
return tools.makeErReturn(ResultCode.USER_PWD_ERROR);
}
}
}
@POST
@Path("/updateHead")
// @Consumes("application/json;charset=UTF-8")
// @Produces("application/json;charset=UTF-8")
public String updateHead(
// @FormParam("image") String image64,
// @FormParam("userName") String userName,
Map<String, Object> jsonParam) {
tools.addRe(response);
JSONObject jo = new JSONObject(jsonParam);
// System.out.println(jo);
String image64 = jo.getString("image");
String userName = jo.getString("userName");
String check = Check(userName, request);
if (!check.equals("ok")) {
return check;
}
// System.out.println(image64);
// System.out.println(userName);
UserEntity testPath = new UserEntity();
String classPath = testPath.getClass().getResource("/").getPath();
String imagePath = classPath.replaceAll("WEB-INF/classes/", "images/headIcons/");
if (userName == null || image64 == null)
return tools.makeErReturn(ResultCode.PARAM_IS_MISS);
File file = new File(imagePath);
if (!FileUtil.canWrite(file)) {
String msg = "headIcons文件夹无写入权限,请检查";
System.out.println(msg);
Logging.Log(this.getClass().getName(), msg, userName);
}
// System.out.println(imagePath+userName+".png");
ImageBase64Code.GenerateImage(image64, imagePath + userName + ".png");
return tools.makeReturn();
}
@GET
@Path("/getUser")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String getUser(@QueryParam("userName") String NAME) {
tools.addRe(response);
String check = Check(NAME, request);
if (!check.equals("ok")) {
return check;
}
List<UserEntity> result = EM.getEntityManager().createNamedQuery("UserEntity.findUserByName", UserEntity.class)
.setParameter("NAME", NAME).getResultList();
if (result.isEmpty())
return tools.makeErReturn(ResultCode.USER_NOT_EXISTED);
else {
UserEntity userentity = result.get(0);
// if(userentity.checkPass(PASSWORD)) {
//// HttpServletRequest req = (HttpServletRequest) request;
//// userentity.setTOKEN(req.getSession().toString());
// userentity.setLOGINTIME(new Date());
// tools.commitDB(userentity);
return tools.makeReturn(tools.makeJSON(userentity));
// }
// else
// {
// return tools.makeErReturn(ResultCode.USER_PWD_ERROR);
// }
}
}
@GET
@Path("/CPWD")
@Consumes("application/json;charset=UTF-8")
@Produces("application/json;charset=UTF-8")
public String CPWD(@QueryParam("userName") String NAME, @QueryParam("Opassword") String Opassword,
@QueryParam("Npassword") String Npassword, @QueryParam("fromUser") String fromUser) {
tools.addRe(response);
if (fromUser != null) {
String check = Check(fromUser, request);
if (!check.equals("ok")) {
return check;
}
List<UserEntity> result = EM.getEntityManager()
.createNamedQuery("UserEntity.findUserByName", UserEntity.class).setParameter("NAME", fromUser)
.getResultList();
if (result.isEmpty())
return tools.makeErReturn(ResultCode.PARAM_IS_INVALID);
UserEntity userentity = result.get(0);
if (userentity.getADMIN() != 1)
return tools.makeErReturn(ResultCode.USER_PER_LOW);
List<UserEntity> result1 = EM.getEntityManager()
没有合适的资源?快使用搜索试试~ 我知道了~
基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip
共278个文件
jar:146个
class:33个
java:32个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 112 浏览量
2022-12-29
13:52:04
上传
评论
收藏 51.95MB ZIP 举报
温馨提示
基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip基于JavaScript开发的网页五子棋对战系统源码( 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
收起资源包目录
基于JavaScript开发的网页五子棋对战系统源码(课程大作业).zip (278个子文件)
Interface.class 18KB
WebSocketProcess.class 6KB
UserEntity.class 6KB
InterfaceTools.class 5KB
DESEncryption.class 4KB
MD5Encryption.class 3KB
ResultCode.class 3KB
GameEntity.class 3KB
Logging.class 3KB
ImageBase64Code.class 3KB
FileUtil.class 3KB
BeautifyReasult.class 3KB
Token.class 3KB
SessionFilter$HeaderRequestWrapper.class 3KB
LogEntity.class 3KB
ResResult.class 2KB
SessionFilter.class 2KB
CookieTools.class 2KB
ResponseHead.class 2KB
ChatTools.class 2KB
GetHttpSessionConfigurator.class 1KB
EM.class 1KB
Object2JSON.class 1KB
GetClassName.class 1KB
GetProperties.class 1KB
DMServer.class 1KB
RequestListener.class 835B
IdEntity.class 792B
GetClassName$2.class 753B
Talk.class 698B
CommonTools.class 634B
GetClassName$1.class 613B
ChatUser.class 537B
.classpath 1KB
org.eclipse.wst.common.component 452B
org.eclipse.wst.jsdt.ui.superType.container 49B
main.css 0B
.gitattributes 66B
.gitignore 104B
.gitignore 104B
.gitignore 11B
.gitignore 10B
index.html 82KB
gobang.iml 458B
五子棋.iml 458B
hibernate-core-4.2.0.Final.jar 4.39MB
hibernate-core-4.2.0.Final.jar 4.39MB
ehcache-core-2.6.11.jar 1.29MB
ehcache-core-2.6.11.jar 1.29MB
jackson-databind-2.6.3.jar 1.12MB
jackson-databind-2.6.3.jar 1.12MB
DmJdbcDriver18.jar 907KB
DmJdbcDriver18.jar 907KB
spring-context-4.0.0.M2.jar 906KB
jaxb-impl-2.2.7.jar 898KB
jaxb-impl-2.2.7.jar 898KB
resteasy-jaxrs-3.0.18.Final.jar 865KB
resteasy-jaxrs-3.0.18.Final.jar 865KB
spring-core-4.0.0.M2.jar 855KB
jackson-mapper-asl-1.9.12.jar 762KB
jackson-mapper-asl-1.9.12.jar 762KB
javassist-3.15.0-GA.jar 633KB
javassist-3.15.0-GA.jar 633KB
spring-webmvc-4.0.0.M2.jar 627KB
spring-beans-4.0.0.M2.jar 617KB
spring-web-4.0.0.M2.jar 615KB
httpclient-4.3.6.jar 578KB
httpclient-4.3.6.jar 578KB
commons-collections-3.2.jar 558KB
commons-collections-3.2.jar 558KB
mail-1.4.7.jar 509KB
hibernate-entitymanager-4.2.0.Final.jar 470KB
hibernate-entitymanager-4.2.0.Final.jar 470KB
hibernate-validator-4.3.1.Final.jar 466KB
hibernate-validator-4.3.1.Final.jar 466KB
antlr-2.7.7.jar 435KB
antlr-2.7.7.jar 435KB
spring-test-4.0.0.M2.jar 420KB
spring-jdbc-4.0.0.M2.jar 407KB
spring-aop-4.0.0.M2.jar 340KB
apache-mime4j-0.6.jar 337KB
spring-data-commons-1.5.0.RELEASE.jar 311KB
commons-lang3-3.1.jar 308KB
dom4j-1.6.1.jar 307KB
dom4j-1.6.1.jar 307KB
spring-orm-4.0.0.M2.jar 305KB
FastInfoset-1.2.12.jar 287KB
FastInfoset-1.2.12.jar 287KB
httpcore-4.3.3.jar 276KB
httpcore-4.3.3.jar 276KB
commons-lang-2.4.jar 256KB
commons-lang-2.4.jar 256KB
jackson-core-2.6.3.jar 253KB
jackson-core-2.6.3.jar 253KB
spring-tx-4.0.0.M2.jar 242KB
spring-data-jpa-1.3.0.RELEASE.jar 227KB
commons-codec-1.6.jar 227KB
commons-codec-1.6.jar 227KB
jackson-core-asl-1.9.12.jar 227KB
jackson-core-asl-1.9.12.jar 227KB
共 278 条
- 1
- 2
- 3
资源评论
Make程序设计
- 粉丝: 5725
- 资源: 3570
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功