-
创建时间
18年11月13日
-
最后回复
18年11月14日
-
23
回复
-
6.1K
浏览
-
4
用户
-
1
赞
-
1
链接
是用 lean up 启动的么?
package com.jinju.supper.check;
import com.avos.avoscloud.*;
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;
import java.util.ArrayList;
/**
* @author hqt
*/
@WebServlet(name = "ShopServlet", urlPatterns = {"/shopList"} ,loadOnStartup = 1)
public class ShopServletIsBo extends HttpServlet {
private static final long serialVersionUID = 1L;
/***
* 查询功能
* @param request
* @param response
* @throws ServletException
* @throws IOException
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
/* String offsetParam = request.getParameter("offset");
int offset = 0;
if (!AVUtils.isBlankString(offsetParam)) {
offset = Integer.parseInt(offsetParam);
}*/
try {
AVQuery<Shop> shopAVQuery = AVObject.getQuery(Shop.class);
// shopAVQuery.skip(offset);
request.setAttribute("shops",shopAVQuery.find());
} catch (AVException e) {
if (e.getCode() == AVException.OBJECT_NOT_FOUND) {
// 该错误的信息为:{ code: 101, message: 'Class or object doesn\'t exists.' },说明 Todo
// 数据表还未创建,所以返回空的
// Todo 列表。
// 具体的错误代码详见:https://leancloud.cn/docs/error_code.html
request.setAttribute("todos", new ArrayList<>());
} else {
throw new RuntimeException(e);
}
}
request.getRequestDispatcher("/shop.jsp").forward(request,response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
this.doGet(request,response);
}
}
package com.jinju.supper.check;
import com.alibaba.fastjson.JSON;
import com.avos.avoscloud.AVClassName;
import com.avos.avoscloud.AVObject;
import java.util.HashMap;
import java.util.Map;
@AVClassName("Shop")
public class Shop extends AVObject {
@Override
public String toString() {
Map map = new HashMap();
map.put("objectId", this.getObjectId());
map.put("createdAt", this.getCreatedAt());
return JSON.toJSONString(map);
}
}
package com.jinju.supper.check;
import com.avos.avoscloud.AVException;
import com.avos.avoscloud.AVObject;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
* @author hqt
*
*/
@WebServlet(name = "shopCheckServlet" ,urlPatterns = {"/shopCheck"} ,loadOnStartup = 1)
public class ShopCheckServlet extends HttpServlet {
/**
* 审核功能,
* @param request
* @param response
* @throws IOException
*/
protected void doGet(HttpServletResponse response, HttpServletRequest request) throws IOException {
this.doPost(response,request);
}
protected void doPost(HttpServletResponse response, HttpServletRequest request) throws IOException {
String isPass = request.getParameter("isPass");
String objectId = request.getParameter("objectId");
if(isPass ==null ||isPass ==""){
try {
AVObject shop= AVObject.createWithoutData("Shop",objectId);
shop.put("isPass",1);
shop.save();
} catch (AVException e) {
e.printStackTrace();
}
}else {
response.sendRedirect("/shopCheck");
}
response.sendRedirect("/shopCheck");
}
}
package cn.leancloud.demo.todo;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import com.avos.avoscloud.AVCloud;
import com.avos.avoscloud.AVObject;
import com.avos.avoscloud.internal.impl.JavaRequestSignImplementation;
import cn.leancloud.LeanEngine;
@WebListener
public class AppInitListener implements ServletContextListener {
private static final Logger logger = LogManager.getLogger(AppInitListener.class);
private String appId = System.getenv("LEANCLOUD_APP_ID");
private String appKey = System.getenv("LEANCLOUD_APP_KEY");
private String appMasterKey = System.getenv("LEANCLOUD_APP_MASTER_KEY");
private String appEnv = System.getenv("LEANCLOUD_APP_ENV");
private String haveStaging = System.getenv("LEAN_CLI_HAVE_STAGING");
@Override
public void contextDestroyed(ServletContextEvent arg0) {}
@Override
public void contextInitialized(ServletContextEvent arg0) {
logger.info("LeanEngine app init.");
// 注册子类化
AVObject.registerSubclass(Todo.class);
if ("development".equals(appEnv) && "true".equals(haveStaging) || "stage".equals(appEnv)) {
AVCloud.setProductionMode(false);
}
// 初始化AVOSCloud,请保证在整个项目中间只初始化一次
LeanEngine.initialize(appId, appKey, appMasterKey);
// 在请求签名中使用masterKey以激活云代码的最高权限
JavaRequestSignImplementation.instance().setUseMasterKey(true);
// 打开 debug 日志
// AVOSCloud.setDebugLogEnabled(true);
// 向云引擎注册云函数
LeanEngine.register(Cloud.class);
}
}
这个 监听类 也得写吗?要写的话 下面俩属性是干嘛的,
监听类 我也写了,
package com.jinju.supper.check;
import cn.leancloud.LeanEngine;
import com.avos.avoscloud.AVCloud;
import com.avos.avoscloud.AVOSCloud;
import com.avos.avoscloud.AVObject;
import com.avos.avoscloud.internal.impl.JavaRequestSignImplementation;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
@WebListener
public class ServletListnerIndex implements ServletContextListener {
private static final Logger logger = LogManager.getLogger(ServletListnerIndex.class);
private String appId = System.getenv("Tloasd");
private String appKey = System.getenv("fqgNs5hnasd0");
private String appMasterKey = System.getenv("k52H6HHAasd");
这3个我是从云端复制下来的
private String appEnv = System.getenv("LEANCLOUD_APP_ENV");
private String haveStaging = System.getenv("LEAN_CLI_HAVE_STAGING");
@Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
//注册 子类化
AVObject.registerSubclass(Shop.class);
if ("development".equals(appEnv) && "true".equals(haveStaging) || "stage".equals(appEnv)) {
AVCloud.setProductionMode(false);
}
// 初始化AVOSCloud,请保证在整个项目中间只初始化一次
LeanEngine.initialize(appId, appKey, appMasterKey);
// 在请求签名中使用masterKey以激活云代码的最高权限
JavaRequestSignImplementation.instance().setUseMasterKey(true);
// 打开 debug 日志
AVOSCloud.setDebugLogEnabled(true);
// 向云引擎注册云函数
LeanEngine.register(ShopCheckServlet.class);
LeanEngine.register(ShopServletIsBo.class);
}
@Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
}
}