controller里面将String的字符串转化为json格式

xiaoxiao2021-02-28  76

<!-- 添加 JSON 支持 --> <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>${json-lib.version}</version> <classifier>jdk15</classifier> </dependency> <!-- json 解析 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.30</version> </dependency> import com.alibaba.fastjson.JSON; //import com.yanshu.sso.code.SupperJason; import com.yanshu.sso.dao.UserDao; import com.yanshu.sso.pojo.User; import com.yanshu.sso.util.StringUtil; import com.yanshu.sso.util.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.util.List;

import com.yanshu.sso.util.*;

//编写统一是登录接口--单点登录:只要在一边登录成功,即可以自动登录到另一个程序中--效率安全 //@GetMapping(value = "/username",produces="application/json;charset=UTF-8", method = { RequestMethod.POST, RequestMethod.GET } ) @RequestMapping(value = "/username",produces="application/json;charset=UTF-8", method = { RequestMethod.POST, RequestMethod.GET } ) @ResponseBody public String selectUserName(@RequestParam("name")String name,@RequestParam("pwd")String pwd ) { String result = null; User user = null; NumUtil numUtil=new NumUtil(); if (StringUtil.isNullorEmpty(name)) { //没有填写返回的是1 numUtil.setReminder("该账户不在在"); numUtil.setStatus(1); return JSON.toJSONString(numUtil); } else { user=userDao.findByName(name); //为了避免空指针异常的问题 在这用实体直接接受参数 //user.getName(); if(user==null) { //用户名称填写了但是数据库中没有返回的是1错误 numUtil.setReminder("该账户不在在"); numUtil.setStatus(1); return JSON.toJSONString(numUtil); } else { //用户名称填写了并且正确返回的是2 user=userDao.findByNameAndPwd(name,pwd); if (user!=null) { numUtil.setReminder("账户和密码正确"); numUtil.setStatus(3); return JSON.toJSONString(numUtil); } else { //账号正确,密码错误 numUtil.setReminder("账号正确,密码错误"); numUtil.setStatus(2); return JSON.toJSONString(numUtil); } } } } @RequestMapping(value = "/findname",produces="application/json;charset=UTF-8", method = { RequestMethod.POST, RequestMethod.GET } ) @ResponseBody public String findUserName(@RequestParam("name")String name,@RequestParam("pwd")String pwd ,HttpServletRequest request, HttpServletResponse response) { String result = null; User user = null; NumUtil numUtil=new NumUtil(); System.out.println("LoginB.service------------------------userName:"+name+" -----passWord:"+pwd); if (StringUtil.isNullorEmpty(name)) { //没有填写返回的是1 numUtil.setReminder("--该账户不在在--"); numUtil.setStatus(1); return JSON.toJSONString(numUtil); } else { user=userDao.findByName(name); //为了避免空指针异常的问题 在这用实体直接接受参数 //user.getName(); if(user==null) { //用户名称填写了但是数据库中没有返回的是1错误 numUtil.setReminder("--该账户不在在--"); numUtil.setStatus(1); return JSON.toJSONString(numUtil); } else { //用户名称填写了并且正确返回的是2 user=userDao.findByNameAndPwd(name,pwd); if (user!=null) { /** * 让其有效期为两分钟 */ Cookie saveNameCookie=new Cookie("userName", name);//设置键和值 Cookie SavePasswordCookie=new Cookie("password", pwd);//设置键和值 saveNameCookie.setPath("/"); SavePasswordCookie.setPath("/"); saveNameCookie.setMaxAge(60*60); SavePasswordCookie.setMaxAge(60*60); response.addCookie(saveNameCookie); response.addCookie(SavePasswordCookie); HttpSession session=request.getSession(true); // HttpSession session= request.getSession(true); session.setMaxInactiveInterval(60*2); numUtil.setReminder("--账户和密码正确--"); numUtil.setStatus(3); return JSON.toJSONString(numUtil); } else { //账号正确,密码错误 numUtil.setReminder("--账号正确,密码错误--"); numUtil.setStatus(2); return JSON.toJSONString(numUtil); } } } } @GetMapping(value = "/pwd") @ResponseBody public String selectUserPwd(@RequestParam("pwd") String pwd) { String result = null; User user = null; if("".equals(pwd)) { result="4"; } else { user=userDao.findByPwd(pwd); if(user==null) { //用户名称填写了但是数据库中没有返回的是2 result="4"; } else { //用户名称填写了并且正确返回的是1 result="3"; } } return result; } /** * 编写的是同域的sso(单点登录) * 编写统一是登录接口 * 编写登录校验证接口 * 编写demo1和demo2主页 * 实现demo1和demo2之间的sso * @param name * @param pwd * @param response * @param request * @return */ @GetMapping("/usershow") public String selectUser(@RequestParam(value="name",required =false ) String name, @RequestParam(value = "pwd",required = false) String pwd, HttpServletResponse response, HttpServletRequest request) { User user = null; String result = null; System.out.println(name); System.out.println(pwd); User y = null; String sf = ""; List<User> list = userDao.findAll(); System.out.println("list==" + list.size()); for (User use : list) { System.out.println("-------" + use.getName()); sf = use.getName(); System.out.println("ssss=" + sf); y = userDao.findByName(name); System.out.println(y.getName());// om if (StringUtils.isNullorEmpty(name) ||y==null) { return "1";//账号错误 } else { String ym = y.getPwd(); if (ym.equals(pwd)) { return "3"; //都对 } else { return "2"; //密码错误 账号真确 } } } return "null"; } }

转载请注明原文地址: https://www.6miu.com/read-39585.html

最新回复(0)