java ajax登录_ajax实现用户登陆,退出,java做后端

packagebussiness;importjava.io.UnsupportedEncodingException;importjava.net.URLDecoder;importjava.net.URLEncoder;importjava.sql.SQLException;importjavax.servlet.http.Cookie;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importorg.apache.commons.dbutils.QueryRunner;importorg.apache.commons.dbutils.handlers.BeanHandler;importorg.json.JSONObject;public classuserOperation {//定义全局变量

protectedHttpServletResponse response;protectedHttpServletRequest request;private final static String URL_CODE = "UTF-8"; //解决cookie存中文乱码

/** 统一获取数据的入口*/

public String getData(HttpServletRequest req, HttpServletResponse resp) throwsSQLException {

request=req;

response=resp;if ("userLoginCheck".equals(flags))returnuserLoginCheck();else if("userLoginOut".equals(flags))returnuserLoginOut();return "";

}/** 自定义用户注销*/

privateString userLoginOut() {

JSONObject jsonObject= newJSONObject();

addCookie(response,"userName","");

jsonObject.put("message", "userLoginOutSuccess");returnjsonObject.toString();

}/** 自定义用户登录函数*/

privateString userLoginCheck() {

JSONObject jsonObject= newJSONObject();try{

QueryRunner qr= newQueryRunner(DataSourceUtils.getDataSource());

String sql= "select * from http_login where name='" +name+ "' and password='" + password + "'";

userOperation user= qr.query(sql, new BeanHandler(userOperation.class));if(user!=null){

jsonObject.put("statusCode", 200);

jsonObject.put("referer", "index.html");

jsonObject.put("message", "用户登录成功。");//存储登录信息

addCookie(response,"userName",user.getName());

}else{

jsonObject.put("statusCode", 404);

jsonObject.put("referer", "/");

jsonObject.put("message", "用户或密码错误.");

}

}catch(SQLException e) {

e.printStackTrace();

}returnjsonObject.toString();

}/** addCookie,setCookie函数*/

private voidaddCookie(HttpServletResponse resp, String key, String value){try{

Cookie cookie= newCookie(key, URLEncoder.encode(value, URL_CODE));

cookie.setPath("/");

resp.addCookie(cookie);

}catch(UnsupportedEncodingException e) {

e.printStackTrace();

}

}privateString getCookie(HttpServletRequest req, String key){

Cookie[] cookies=req.getCookies();if (cookies != null) {try{for(Cookie cookie : cookies) {if(cookie.getName().equals(key))returnURLDecoder.decode(cookie.getValue(), URL_CODE);

}

}catch(UnsupportedEncodingException e) {

e.printStackTrace();

}

}return null;

}//实体bean参数以及getter/setter

privateString name;privateString password;privateString flags;publicString getFlags() {returnflags;

}public voidsetFlags(String flags) {this.flags =flags;

}publicString getName() {returnname;

}public voidsetName(String name) {this.name =name;

}publicString getPassword() {returnpassword;

}public voidsetPassword(String password) {this.password =password;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值