HttpServletRequest request .getSession() 报错,报错内容是获取不到Redis连接

HttpServletRequest request .getSession() 报错,报错内容是获取不到Redis连接,但是操作Redis没有任何问题。(框架是Spring + SpringMVC)
报错语句,如图

图片说明

报错详情,如图
图片说明

报错内容:

java.util.NoSuchElementException: Unable to validate object

[redis.clients.jedis.util.Pool.getResource(Pool.java:53), redis.clients.jedis.JedisPool.getResource(JedisPool.java:234), redis.clients.jedis.JedisPool.getResource(JedisPool.java:15), tomcat.request.session.data.cache.impl.redis.RedisManager.setnx(RedisManager.java:51), tomcat.request.session.data.cache.impl.redis.RedisCache.setnx(RedisCache.java:36), tomcat.request.session.redis.SessionManager.createSession(SessionManager.java:100), tomcat.request.session.redis.SessionManager.createSession(SessionManager.java:28), org.apache.catalina.connector.Request.doGetSession(Request.java:2981), org.apache.catalina.connector.Request.getSession(Request.java:2374), org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:908), sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method), sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62), sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43), java.lang.reflect.Method.invoke(Method.java:498), org.springframework.beans.factory.support.AutowireUtils$ObjectFactoryDelegatingInvocationHandler.invoke(AutowireUtils.java:307), com.sun.proxy.$Proxy105.getSession(Unknown Source), com.dsh.live.login.controller.LoginController.userLogin(LoginController.java:64), sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method), sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62), sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43), java.lang.reflect.Method.invoke(Method.java:498), org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:222), org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137), org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110), org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:814), org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:737), org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85), org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959), org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893), org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:969), org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:871), javax.servlet.http.HttpServlet.service(HttpServlet.java:660), org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:845), javax.servlet.http.HttpServlet.service(HttpServlet.java:741), org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231), org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166), org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53), org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193), org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166), org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121), org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107), org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193), org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166), org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199), org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96), tomcat.request.session.redis.SessionHandlerValve.invoke(SessionHandlerValve.java:29), org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137), org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81), org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651), org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87), org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342), org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:409), org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66), org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754), org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376), org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49), java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142), java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617), org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61), java.lang.Thread.run(Thread.java:745)]

2个回答

检查下 Redis 连接的配置信息。

qq_38243173
星空下的西瓜地 redis连接没有问题,其他环境整个服务都是好的,当前项目也是可以正常使用redis
5 个月之前 回复

猜测你们的session是存在redis里面,后台部署是集群模式;
这种情况下,获取session要从redis中取出来
检查redis配置或者配置redis连接池

qq_38243173
星空下的西瓜地 谢谢回答,session没有放redis里面,还没有用集群的方式部署。
5 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mvc启动报错(baseController注入的request是null)
自己学习spingboot,搭建的mvc项目,我的想法是: 登录的时候保存loginUser,然后在BaseController获取loginUser,所有的controller继承BaseController,这样在其他的controller中就可以直接使用loginUser。 现在项目启动报错,request是null, 希望帮忙看一下我这么写是有什么问题?或者有没有别的办法可以实现我想要的结果 ``` public class BaseController { private static Logger log = LoggerFactory.getLogger(BaseController.class); @Autowired(required = false) private HttpServletRequest request; public LoginUser loginUser = (LoginUser) request.getSession().getAttribute("loginUser"); public void saveLoginUserInBase(LoginUser loginUser){ request.getSession().setAttribute("loginUser",loginUser); } } ```
HttpServletRequest
我的web工程已经导入了一个Servlet 架包了,但是在 HttpServletRequest request=ServletActionContext.getRequest(); 还是报错:Type mismatch: cannot convert from HttpServletRequest to HttpServletRequest ,我就根据提示强转:HttpServletRequest request=(HttpServletRequest) ServletActionContext.getRequest(); 但是这样根本做不到:javax.servlet.http.HttpSession session = request.getSession(true); 我的JDK是1.7,是不是版JDK版本的问题呢!
javaweb转发forward报错
工具eclipse——本意是通过filter过滤,如下: ``` public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; if (req.getSession().getAttribute("hotproductlist") != null) { chain.doFilter(req, response); } else { req.getRequestDispatcher(req.getContextPath() + "/findHotProduct").forward(req, response); } } ``` 这里一切正常,但是servlet的forward报错: ``` public void doGet(HttpServletRequest request, HttpServletRequest response) throws ServletException, IOException { ProductService service=new ProductService(); List<Product> hotproductlist=new ArrayList<Product>(); hotproductlist=service.findHotProduct(); request.getSession().setAttribute("hotproductlist", hotproductlist); request.getRequestDispatcher(request.getContextPath()+"/index.jsp").forward(request, response);; } ``` 这里的forward报错The method forward(ServletRequest, ServletResponse) in the type RequestDispatcher is not applicable for the arguments (HttpServletRequest, HttpServletRequest) 我觉得是编译器的原因,但是怎么都弄不好,求大佬们指点!!!
ajax 报错,400 bad request
前台页面: function getCityTList() { //更改用户权限 var provinceId=$("#selectedProvinceId").find("option:selected").val(); if (provinceId !=null) { $.post("<%=basePath%>pstnTerminal/setPstnUserPriv.do", { "provinceId" : provinceId }, function() { alert(ok); }); } } 后台代码: @RequestMapping(value="/setPstnUserPriv", method = RequestMethod.POST) @ResponseBody public void setPstnUserPriv(HttpServletRequest request,HttpServletResponse response,String provinceId){ User user=(User) request.getSession().getAttribute("userInfo"); if(!provinceId.equals("")&&!provinceId.equals("-1")){//如果选择了省就将权限降级例外情况都是全国 user.setJG_CODE(provinceId);;//将其机构代码变为省的编码 Orga orga = orgaService.getOrgaByCode(user.getJG_CODE()); if(null != orga){ user.setOrga(orga); } //改掉原来的 request.getSession().setAttribute("userInfo", user); } } 浏览器报错: jquery-1.8.3.js:8434 POST http://localhost:8080/HS/%3C%=basePath%%3Epst nTerminal/setPstnUserPriv.do 400 (Bad Request) jquery-1.8.3.js:8434
timer定时器报空指针异常为什么?
今天想到用timer写一个定时清空session值得定时器,但报空指针。 代码如下: ``` public void removeYZM( HttpServletRequest request, String code) { Timer timer = new Timer(); System.out.println("验证码:------"+request.getSession().getAttribute(code)); timer.schedule(new TimerTask() { public void run() { // 删除session中存的验证码 request.getSession().removeAttribute(code); timer.cancel(); } }, 1 * 60 * 1000); } ``` 报错信息 ``` Exception in thread "Timer-1" java.lang.NullPointerException at com.temp.ssm.controller.UserClientController$1.run(UserClientController.java:51) at java.util.TimerThread.mainLoop(Timer.java:555) at java.util.TimerThread.run(Timer.java:505) ```
web.xml的配置好像不对,运行项目控制台总是报错说找不到类,是不是路径错了
LoginAction.java: package campsg.qunawan.action; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.catalina.mbeans.UserMBean; public class LoginAction extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("执行LoginAction方法"); doPost(request,response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String method = request.getParameter("method"); if("login".equals(method)){//登录 String username = request.getParameter("username"); String password = request.getParameter("password"); if(username==null||"".equals(username.trim())||password==null||"".equals(password.trim())){ System.out.println("用户名或密码不能为空!"); response.sendRedirect("login.html"); return; } boolean isValid = false; if(isValid){ System.out.println("登录成功!"); request.getSession().setAttribute("username", username); response.sendRedirect("index.html"); return; }else{ System.out.println("用户名或密码错误,登录失败!"); response.sendRedirect("login.html"); return; } }else if("logout".equals(method)){//退出登录 System.out.println("退出登录!"); request.getSession().removeAttribute("username"); response.sendRedirect("login.html"); return; } } } ![图片说明](https://img-ask.csdn.net/upload/201612/16/1481849480_663914.png) ![图片说明](https://img-ask.csdn.net/upload/201612/16/1481849494_867200.png) ![图片说明](https://img-ask.csdn.net/upload/201612/16/1481849783_238355.png)
java 写的登录验证问题
public class LoginCheck extends HttpServlet { /** * Constructor of the object. */ public LoginCheck() { super(); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("UTF-8"); request.setCharacterEncoding("utf-8"); response.setContentType("text/html; charset=utf-8"); PrintWriter out = response.getWriter(); String userid = request.getParameter("userid"); String password = request.getParameter("password"); System.out.println(userid+password+"===================="); if(request.getSession().getAttribute("loginUser")!=null){ request.getRequestDispatcher("/index.html").forward(request, response); }else{ Integer loginuserid=Integer.parseInt(userid); Management managementlogin = null ; ManagementService managementServicelogin = new ManagementService(); managementlogin = managementServicelogin.getoneManagementbyID(loginuserid); if(!(managementlogin.getName() == null) ){ String Chechpwd = managementlogin.getPwd(); if(Chechpwd.equals(password)){ request.getSession().setAttribute("loginUser", managementlogin); request.getRequestDispatcher("/index.html").forward(request, response); }else{ request.getRequestDispatcher("/login.jsp").forward(request, response); } }else{ request.getRequestDispatcher("/login.jsp").forward(request, response); } } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); } } ``` 当输入正确的用户ID和密码时候,成功登录,当输入一个错误的用户id时候报错:type Exception report message description The server encountered an internal error that prevented it from fulfilling this request. exception java.lang.NullPointerException com.jclg.control.LoginCheck.doGet(LoginCheck.java:41) com.jclg.control.LoginCheck.doPost(LoginCheck.java:66) javax.servlet.http.HttpServlet.service(HttpServlet.java:643) javax.servlet.http.HttpServlet.service(HttpServlet.java:723) note The full stack trace of the root cause is available in the Apache Tomcat/6.0.43 logs. ```
求助 java 导入Excel日志本地可以 服务器报错
源代码 服务器报错 jxl.read.biff.biffexception: the input file was not found private String importUserlog(HttpServletRequest request,Parameters params) throws Exception{ String userName = ((Parameters) (request.getSession().getAttribute("_current"))).getString("managerName"); MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; MultipartFile excelFile = multipartRequest.getFile("Filedata"); //String tempPath = request.getSession().getServletContext().getRealPath("/")+"/template/"+"rzgl/"+"viewJournal/"+"userlog.xls";//未加密前的文件 //File tempPath = new File(request.getSession().getServletContext().getRealPath("/")+"//template//rzgl//viewJournal//userlog.xls"); File tempPath1 = new File(request.getSession().getServletContext().getRealPath("/")+"/template/rzgl/viewJournal/userlog.xls"); System.out.println(tempPath1+"-------------------用户日志导入"); if(tempPath1.exists()&&tempPath1.length()>0) tempPath1.delete(); FileUtils.copyInputStreamToFile(excelFile.getInputStream(), tempPath1); if(!tempPath1.exists()){ request.setAttribute("error", "文件不存在!"); return "rzgl/viewJournal/upload"; } Workbook book = Workbook.getWorkbook(tempPath1); Sheet sheet = book.getSheet(0); int num=0; for(int i = 1; i < sheet.getRows(); i ++){ Loginfo info = new Loginfo(); if(sheet.getCell(0, i).getContents().trim().equals("")&&sheet.getCell(1, i).getContents().trim().equals("")&&sheet.getCell(2, i).getContents().trim().equals("")){ continue; } info.setLoginName(sheet.getCell(0, i).getContents().trim()); info.setLogTime(sheet.getCell(1, i).getContents().trim()); info.setLogIp(sheet.getCell(2, i).getContents().trim()); info.setLogInfo(sheet.getCell(3, i).getContents().trim()); info.setActionObject(sheet.getCell(4, i).getContents().trim()); info.setActionType(sheet.getCell(5, i).getContents().trim()); info.setTerminal(sheet.getCell(6, i).getContents().trim()); info.setStauts("1"); try{ int temp = logService.addUserInfo(info); if(temp>0) num++; }catch(Exception e){ e.printStackTrace(); } } int err = sheet.getRows()-num-1; if(tempPath1.exists())tempPath1.delete();//删除解密前的原文件 this.tempsuccess = num; this.temperror = err; book.close(); Manager user = new Manager(); user.setLoginName(userName); user.setLogIp(request.getRemoteAddr()); user.setLogInfo(userName+"导入用户日志:成功"+num+"条,失败"+err+"条"); user.setObjectId("用户日志"); user.setActionType("导入"); recordService.addRecord(user); return helper(request,num,err); 看了网上了 没解决
第一个控制器将登陆后将账户密码存入session,但是第二个控制器无法找到参数
第一个控制器 @Resource(name = "userServiceImpl") private UserServiceImpl users; @RequestMapping(value = "/entity") public String entity(HttpServletRequest request, HttpServletResponse response) { // 获取session HttpSession session = request.getSession(); // 获取账户和密码 String account = request.getParameter("account"); String codes = request.getParameter("codes"); // 新建一个哈希map集合接受账户和密码的集合 HashMap entity = new HashMap(); entity = users.selectEntityUser(); session.setAttribute("account", account); session.setAttribute("codes", codes); /*session.setAttribute("account", request.getParameter("account")); session.setAttribute("codes", request.getParameter("codes")); */// 判断账户是否匹配,并且根据用户名获取密码,并判断是否匹配 if (entity.containsKey(account) && entity.get(account).equals(codes)) { // 登陆成功 return "success"; } else { // 登陆失败返回首页 String msg = "用户名或密码错误"; session.setAttribute("msgs", msg); return "index"; } } 第二个控制器 @RequestMapping(value = "/information") public <Account> void information(HttpServletRequest request, HttpServletResponse response) { request.getSession().getAttribute("account"); //调用工具包 JosnUntils josn=new JosnUntils(); //获取sesion HttpSession session= request.getSession(); //获取存取的session值账户和密码并且强制装换 String account=String.valueOf(session.getAttribute("account")); //强制转换 String codes=String.valueOf(session.getAttribute("codes")); //获取一个对象将对象打包成josn传到jsp上面 User user= users.information(account, codes); //转化为josn String use=josn.toJosn(user); //存入 session.setAttribute("information", use); //返回页面 } 报错为:HTTP Status 500 - Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'account' not found. Available parameters are [1, 0, param1, param2] 具体:type Exception report message Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'account' not found. Available parameters are [1, 0, param1, param2]
这个为什么没办法插入到数据库?
servlet里调用impl中的方法 public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ //将订单写入数据库 int count = 1; HttpSession ses = request.getSession(); List<Member> member = (List<Member>) ses.getAttribute("member"); HashMap<Integer, Product> shopCart = (HashMap<Integer, Product>) ses.getAttribute("SelectedGoods"); Order order = new Order(); for (HashMap.Entry<Integer, Product> entry : shopCart.entrySet()) { for (int i = 0; i < member.size(); i++) { order.setAddress(member.get(i).getAddress()); order.setMname(member.get(i).getName()); order.setTelephone(member.get(i).getTelephone()); } order.setPname(entry.getValue().getName()); order.setPrice(entry.getValue().getPrice()); order.setNum(entry.getValue().getAmount()); order.setNote(entry.getValue().getNote()); order.setOrderid("o"+count); count++; try { DAOFactory.getOrderDAOInstance().doCreate(order); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } //跳转 request.getRequestDispatcher("psuccess.jsp").forward(request, response); HttpSession session = request.getSession(); session.removeAttribute("SelectedGoods"); } impl中的方法 public boolean doCreate(Order order)throws Exception{ boolean flag = false; String sql = "INSERT INTO order(orderid,mname,address,telephone,pname,note,price,num)VALUES(?,?,?,?,?,?,?,?)"; this.pstmt = this.conn.prepareStatement(sql); /*System.out.println(order.getOrderid()); System.out.println(order.getMname()); System.out.println(order.getAddress()); System.out.println(order.getTelephone()); System.out.println(order.getPname()); System.out.println(order.getNote()); System.out.println(order.getPrice()); System.out.println(order.getNum());*/ this.pstmt.setString(1,order.getOrderid()); this.pstmt.setString(2,order.getMname()); this.pstmt.setString(3,order.getAddress()); this.pstmt.setString(4,order.getTelephone()); this.pstmt.setString(5,order.getPname()); this.pstmt.setString(6,order.getNote()); this.pstmt.setDouble(7,order.getPrice()); this.pstmt.setInt(8,order.getNum()); if(this.pstmt.executeUpdate()>0){ flag = true; } this.pstmt.close(); return flag; } 报错信息: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order(orderid,mname,address,telephone,pname,note,price,num)VALUES('o1','qwe','qw' at line 1
麻烦大家帮我看看这个异常信息怎么处理?
Cannot add or update a child row: a foreign key constraint fails (`xiaonei/photo1`, CONSTRAINT `FKC50C883FA1694277` FOREIGN KEY (`albumId`) REFERENCES `album` (`id`)) public ActionForward oneAlbumUI(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub //System.out.println("oneAlbumUI..."); //这里,我们要完成把图片上传到服务器,并保存记录到Photo对象 //先考虑用户上传一张图片的情况 AlbumForm albumForm = (AlbumForm) form; Admin admin = (Admin) request.getSession().getAttribute("admin"); //Users loginUser = (Users) request.getSession().getAttribute("loginuser"); FormFile photo1 = albumForm.getPhoto1(); if(!"".equals(photo1.getFileName())){ //说明用户上传了第一张图片 //把图片上传上去 //再把信息保存到数据库 String newFileName = MyTools.uploadPhoto(request, photo1, admin.getId()+"", albumForm.getId()); Photo1 myPhoto1 = new Photo1(); myPhoto1.setIndate(new Date()); myPhoto1.setAlbum((Album) albumService1.findById(Album.class, Integer.valueOf(albumForm.getId()))); //该图片属于哪个相册 myPhoto1.setPhoto(newFileName); //这句话就是把信息保存到数据库 albumService1.save(myPhoto1); } } 我在上一页面上调用Action保存了Album的信息,然后跳转到一下个页面调用Action保存Photo信息,但是报错,这是为什么?
到底哪出错了 ,老报错,使用session就可以
<% List<Users> usersli = (List) request.getAttribute("usersli"); Users users; /*Debug*/System.out.println("show_users.jsp"); if (usersli !=null) { for (int i = 0; i < usersli.size(); i++) { users = (Users)usersli.get(i); %> < tr> < td><%=users.getUser()%></td> < td><%=users.getPassword()%></td> < td><%=users.getNumber()%></td> < td><%=users.getRoot()%></td> < td> < form id="form2" name="form2" method="post" action=""> < input type="submit" name="updata" id="updata" value="编辑" /> < input type="submit" name="del" id="del" value="删除" /> < /form> < /td> < /tr> <% } } %> ---------------------------------------------------------------------- SERVLET代码: private void show(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ String root =(String)request.getParameter("chooseroot"); String user = (String)request.getParameter("condition"); /*Debug*/System.out.println("ShowServlet.show(),权限="+root+",条件="+user); UsersDAO usersDAO = new UsersDAO(); List<?> usersli= new ArrayList<Object>(); usersli = usersDAO.show(root,user); //list传递 request.setAttribute("usersli", usersli); request.getRequestDispatcher("../show/show_users.js").forward(request,response); //request.getSession().setAttribute("usersli",usersli ); //response.sendRedirect("../show/show_users.jsp"); }
关于tomcat 报错原因
description The server encountered an internal error () that prevented it from fulfilling this request. exception java.lang.ClassCastException: com.sany.web.session.WebSession cannot be cast to java.lang.String com.sany.web.filter.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:34)》<!---> note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs. /** * */ package com.sany.web.filter; import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import com.sany.util.log.ILogger; public class SetCharacterEncodingFilter implements Filter { private static final ILogger logger = ILogger.getInstance().getILogger(SetCharacterEncodingFilter.class); public void init(FilterConfig arg0) throws ServletException { // TODO Auto-generated method stub } public void doFilter(ServletRequest request, ServletResponse response, FilterChain fileter) throws IOException, ServletException { // TODO Auto-generated method stub request.setCharacterEncoding("GBK"); HttpServletRequest req = (HttpServletRequest) request; // response.setCharacterEncoding("GBK"); try{ fileter.doFilter(request, response); } catch(Exception e){ logger.error((String)req.getSession().getAttribute("user"),"doFilter(ServletRequest request=" + request + ", ServletResponse response=" + response + ") - [方法错误]", e); e.printStackTrace(); } } public void destroy() { // TODO Auto-generated method stub } }
hibernate项目运行一段时间后,JDBC报错
type Exception report message JDBC commit failed description The server encountered an internal error that prevented it from fulfilling this request. exception org.hibernate.TransactionException: JDBC commit failed org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:161) filter.TestFilter.doFilter(TestFilter.java:34) root cause com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Communications link failure during commit(). Transaction resolution unknown. sun.reflect.GeneratedConstructorAccessor21.newInstance(Unknown Source) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) java.lang.reflect.Constructor.newInstance(Constructor.java:526) com.mysql.jdbc.Util.handleNewInstance(Util.java:425) com.mysql.jdbc.Util.getInstance(Util.java:408) com.mysql.jdbc.SQLError.createSQLException(SQLError.java:918) com.mysql.jdbc.SQLError.createSQLException(SQLError.java:897) com.mysql.jdbc.SQLError.createSQLException(SQLError.java:886) com.mysql.jdbc.SQLError.createSQLException(SQLError.java:860) com.mysql.jdbc.ConnectionImpl.commit(ConnectionImpl.java:1559) org.hibernate.transaction.JDBCTransaction.commitAndResetAutoCommit(JDBCTransaction.java:170) org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:146) filter.TestFilter.doFilter(TestFilter.java:34) 项目使用的是hibernate+struts2+Mysql;项目不是跑起来就报错,是运行一段时间后就报错。服务器重启就可以了,但一段时间后又报错。mysql驱动用3.0的时候也是这个情况,不过抱错是No operations allowed after connection closed;现在换成最新的5.o就报这个个错误。求高手解决。。。 事务我直接用了个过滤器 public class TestFilter implements Filter { @Override public void destroy() { // TODO Auto-generated method stub } @Override public void doFilter(ServletRequest requ, ServletResponse respo, FilterChain chain) throws IOException, ServletException { HttpServletRequest request=(HttpServletRequest)requ; request.setCharacterEncoding("utf-8"); Session session=HibernateSessionFactory.getSession(); Transaction tr=session.beginTransaction(); chain.doFilter(request, respo); tr.commit();------报错在这行,34行 HibernateSessionFactory.closeSession(); } @Override public void init(FilterConfig arg0) throws ServletException { // TODO Auto-generated method stub } }
想把用户名存在session中 在方法中加request参数后运行报错 求指教~
我用的是spring+hibernate~ 修改后: public class LoginAction extends SimpleFormController{ private Login login; private String viewPage; private String successPage; //实现onSubmit()方法 public ModelAndView onSubmit(Object command,HttpServletRequest request) throws Exception { //强制转换成User User user = (User)command; Map model = new HashMap(); //进行登录的业务逻辑处理 getLogin().login(user); //存放消息 request.getSession().setAttribute("userName", user.getUsername()); model.put("user", user); model.put("userId", user.getId()); model.put("msg", getLogin().getMsg()); if ("登录成功".equals(getLogin().getMsg())) { //返回到登录成功的页面 return new ModelAndView(getSuccessPage(), model); } return new ModelAndView(getViewPage(), model); } 修改前: public class LoginAction extends SimpleFormController{ private Login login; private String viewPage; private String successPage; //实现onSubmit()方法 public ModelAndView onSubmit(Object command) throws Exception { //强制转换成User User user = (User)command; Map model = new HashMap(); //进行登录的业务逻辑处理 getLogin().login(user); //存放消息 model.put("user", user); model.put("userId", user.getId()); model.put("msg", getLogin().getMsg()); if ("登录成功".equals(getLogin().getMsg())) { //返回到登录成功的页面 return new ModelAndView(getSuccessPage(), model); } return new ModelAndView(getViewPage(), model); } 报错: 严重: Servlet.service() for servlet [dispatcherServlet] in context with path [/mySurvey] threw exception [successView isn't set] with root cause javax.servlet.ServletException: successView isn't set at org.springframework.web.servlet.mvc.SimpleFormController.onSubmit(SimpleFormController.java:416) at org.springframework.web.servlet.mvc.SimpleFormController.onSubmit(SimpleFormController.java:380) at org.springframework.web.servlet.mvc.SimpleFormController.processFormSubmission(SimpleFormController.java:267) at org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:250) at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153) at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:819) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:754) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:399) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:364) at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2476) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2465) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:662)
springmvc 图片上传报错,页面报500,有没有大神遇见过,求帮助!!!!!!!!!
前端是: <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title></title> </head> <body> <form name="Form2" action="http://localhost:8081/jg/merchants/updatespringUpload" method="post" enctype="multipart/form-data"> <h1>使用spring mvc提供的类的方法上传文件</h1> <input type="file" name="file"> <input type="submit" value="upload"/> </form> </body> </html> controller : @RequestMapping(value = "/updatespringUpload") public String springUpload(HttpServletRequest request) throws IllegalStateException, IOException { long startTime=System.currentTimeMillis(); //将当前上下文初始化给 CommonsMutipartResolver (多部分解析器) CommonsMultipartResolver multipartResolver=new CommonsMultipartResolver( request.getSession().getServletContext()); //检查form中是否有enctype="multipart/form-data" if(multipartResolver.isMultipart(request)) { //将request变成多部分request MultipartHttpServletRequest multiRequest=(MultipartHttpServletRequest)request; //获取multiRequest 中所有的文件名 Iterator iter=multiRequest.getFileNames(); while(iter.hasNext()) { //一次遍历所有文件 MultipartFile file=multiRequest.getFile(iter.next().toString()); if(file!=null) { String path="E:/springUpload"+file.getOriginalFilename(); //上传 file.transferTo(new File(path)); } } } long endTime=System.currentTimeMillis(); System.out.println("方法三的运行时间:"+String.valueOf(endTime-startTime)+"ms"); return "/success"; } 报错内容是: HTTP Status 500 - Request processing failed; nested exception is com.alibaba.fastjson.JSONException: toJSON error
servlet2.4监听器里有这个event.getRequest()方法吗?
在实现HttpSessionListener接口 实现sessionDestroyed方法 时报错: 我用的是Tomcat5.5.27中的servlet_api.jar 包,看tomcat说明里说5.5是servlet2.4标准,为什么没有这个方法? 怎么解决?想实现session失效跳转的功能。 public void sessionDestroyed(HttpSessionEvent event){ //下面这句报错,没有event.getRequest的方法 HttpServletRequest request = event.getRequest(); HttpServletResponse response = event.getResponse(); event.getSession().getServletContext().getRequestDispatcher( "/login.jsp ").forward(request,response); [b]问题补充:[/b] 那在监听里如何获得到request和response对象?有办法吗?
web大文件下载,用户点击取消报错
下面是我java后台下的文件下载代码 用户点击弹出下载框的取消按钮时报错(java.net.SocketException: Software caused connection abort: socket write error) @RequestMapping(value = "download") public void download(CareUpload careUpload , HttpServletRequest request, HttpServletResponse response){ String fileSavename = careUpload.getFileSavename();//服务器存储文件名 String path = careUpload.getPath(); //服务器存储路径 String fileRealname = careUpload.getFileRealname();//服务器存储文件上传前名称 String realPath = request.getSession().getServletContext().getRealPath(File.separator); String filePath = path + File.separator + fileSavename; File file = new File(filePath); if (file.exists()) { BufferedInputStream br = null; OutputStream out = null; try { response.reset(); response.setContentType("application/octet-stream");//text/plain response.setHeader("Content-Disposition", "inline;filename=" + new String(fileRealname.getBytes("UTF-8"), "ISO8859-1")); br = new BufferedInputStream(new FileInputStream(file)); out = response.getOutputStream(); byte[] b = new byte[1024]; int len = 0; while ((len = br.read(b)) != -1) { out.write(b, 0, len); } //TODO out.flush(); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { try { if(out != null){ out.close(); } if(br != null){ br.close(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
未赋值的session在jsp报错,求大神帮帮忙吧
想要在页面打开是判定一个session会话,这个session要等到跳转到服务器之后才能赋值。 但是明明我设定了判断是否为空,可是还是报错。 这是我的页面和服务器代码: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>请填写上传表单</title> </head> <body> <% Object o = session.getAttribute("Error1"); if(!o.equals(null)||(!"".equals(o))){ String er = (String)o; %> 操作失败,<%=er %> <% } %> <form action="UploadServlet" method="post"> 关键字:<input type="text" name="keyw"><br/> 简要描述(10个字,可以不写):<input type="text" name="remark"><br/> 文章照片:<input type="file" name="art"/><br/> <input type="submit" value="上传"> <input type="reset" value="重置"/> </form> <input type ="button" value="返回" onclick="location.href='main.jsp'"> </body> </html> package com.hcpolic.servlet; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Iterator; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.hcpolic.entity.Artical; import com.hcpolic.entity.User; import com.hcpolic.rbac.Opreator; import com.hcpolic.rbac.Permission; import com.hcpolic.util.Tools; import org.apache.commons.fileupload.disk.*; import org.apache.commons.fileupload.servlet.*; import org.apache.commons.fileupload.*; public class UploadServlet extends HttpServlet { /** * The doGet method of the servlet. <br> * * This method is called when a form has its tag value method equals to get. * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } /** * The doPost method of the servlet. <br> * * This method is called when a form has its tag value method equals to post. * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); HttpSession session=request.getSession(); User us = (User)request.getSession().getAttribute("user"); String rem = (String)request.getAttribute("remark"); String key = (String)request.getAttribute("keyw"); String er = null; Tools t = new Tools(); ////////////////////////////////保存上传文件至指定文件夹 String savePath = "D:/upload/"; DiskFileItemFactory fac = new DiskFileItemFactory(); fac.setRepository(new File(savePath+"uploadtemp")); ServletFileUpload upload = new ServletFileUpload(fac); upload.setFileSizeMax(1048576); try { List<FileItem> it = upload.parseRequest(request); Iterator<FileItem> iter = it.iterator(); while(iter.hasNext()){ FileItem item = iter.next(); String fieldName = item.getFieldName(); if(!item.isFormField()){ File saveFile = null; InputStream input = null; OutputStream output = null; savePath = savePath + File.separator+String.valueOf(t.randomId(9,6))+"."+item.getName().split("\\.")[1]; input = item.getInputStream(); output = new FileOutputStream(new File(savePath)); byte data[] = new byte[512]; int temp = 0; while((temp = input.read(data,0,512))!=-1){ output.write(data); } input.close(); output.close(); } } } catch (FileUploadException e) { // TODO Auto-generated catch block e.printStackTrace(); } //////////////////////////////// ///////////////////////////////抓取系统时间 String strDate = null; SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd"); strDate = sf.format(new Date()); /////////////////////////////// Artical a = new Artical(); Permission per = new Permission(); Opreator o = new Opreator(); a.setId(us.getId().substring(4, 10)+String.valueOf(t.randomId(9,6))); a.setKeyWords(key.trim()); a.setRemark(rem); a.setImagePath(savePath); a.setUpdateTime(strDate.trim()); boolean ret = o.isAdd(a, us); if(ret){ response.sendRedirect("main.jsp"); }else{ er = "您的权限不够!!"; session.setAttribute("Error1", er); response.sendRedirect("Upload.jsp"); } } }
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数
win10系统安装教程(U盘PE+UEFI安装)
一、准备工作 u盘,电脑一台,win10原版镜像(msdn官网) 二、下载wepe工具箱  极力推荐微pe(微pe官方下载) 下载64位的win10 pe,使用工具箱制作启动U盘打开软件,   选择安装到U盘(按照操作无需更改) 三、重启进入pe系统   1、关机后,将U盘插入电脑 2、按下电源后,按住F12进入启动项选择(技嘉主板是F12)     选择需要启
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
Nginx 软件层面加强Nginx性能优化的面试问答和解决方案
Nginx 软件层面加强Nginx性能优化的面试问答和解决方案 去年我去爱卡汽车面试PHP,一轮和二轮面的都不错,在三轮面到Nginx的时候很多问题当时不知道怎么回答,确实没有深入学习过,花了一段时间的学习,终于能解答Nginx高性能优化的问题了,10月24号为了获得程序员勋章,发布了半个优化笔记,浏览到了1000+,受到这个鼓舞,我抽时间在仔细整理下关于Nginx性能优化的问题,我们从软件说起。...
【管理系统课程设计】美少女手把手教你后台管理
【文章后台管理系统】URL设计与建模分析+项目源码+运行界面 栏目管理、文章列表、用户管理、角色管理、权限管理模块(文章最后附有源码) 1. 这是一个什么系统? 1.1 学习后台管理系统的原因 随着时代的变迁,现如今各大云服务平台横空出世,市面上有许多如学生信息系统、图书阅读系统、停车场管理系统等的管理系统,而本人家里就有人在用烟草销售系统,直接在网上完成挑选、购买与提交收货点,方便又快捷。 试想,若没有烟草销售系统,本人家人想要购买烟草,还要独自前往药...
11月19日科技资讯|华为明日发布鸿蒙整体战略;京东宣告全面向技术转型;Kotlin 1.3.60 发布
「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。扫描上方二维码进入 CSDN App 可以收听御姐萌妹 Style 的人工版音频哟。 一分钟速览新闻点! 6G 专家组成员:速率是 5G 的 10 至 100 倍,预计 2030 年商用 雷军:很多人多次劝我放弃WPS,能坚持下来并不是纯粹的商业决定 ...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
化繁为简 - 腾讯计费高一致TDXA的实践之路
导语:腾讯计费是孵化于支撑腾讯内部业务千亿级营收的互联网计费平台,在如此庞大的业务体量下,腾讯计费要支撑业务的快速增长,同时还要保证每笔交易不错账。采用最终一致性或离线补...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
Java学习笔记(七十二)—— Cookie
概述 会话技术: 会话:一次会话中包含多次请求和响应 一次会话:浏览器第一次给服务器发送资源请求,会话建立,直到有一方断开为止 功能:在一次会话的范围内的多次请求间,共享数据 方式: 客户端会话技术:Cookie,把数据存储到客户端 服务器端会话技术:Session,把数据存储到服务器端 Cookie 概念:客户端会话技术,将数据存储到客户端 快速入门: 使用步骤: 创建C
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
@程序员,如何花式构建线程?
作者 |曾建责编 | 郭芮出品 | CSDN(ID:CSDNnews)在项目和业务的开发中,我们难免要经常使用线程来进行业务处理,使用线程可以保证我们的业务在相互处理之间可以保证原子性...
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
强烈推荐10本程序员在家读的书
很遗憾,这个鼠年春节注定是刻骨铭心的,新型冠状病毒让每个人的神经都是紧绷的。那些处在武汉的白衣天使们,尤其值得我们的尊敬。而我们这些窝在家里的程序员,能不外出就不外出,就是对社会做出的最大的贡献。 有些读者私下问我,窝了几天,有点颓丧,能否推荐几本书在家里看看。我花了一天的时间,挑选了 10 本我最喜欢的书,你可以挑选感兴趣的来读一读。读书不仅可以平复恐惧的压力,还可以对未来充满希望,毕竟苦难终
Linux自学篇——linux命令英文全称及解释
man: Manual 意思是手册,可以用这个命令查询其他命令的用法。 pwd:Print working directory 显示当前目录 su:Swith user 切换用户,切换到root用户 cd:Change directory 切换目录 ls:List files 列出目录下的文件 ps:Process Status 进程状态 mk
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
文章目录1. 前言2. 数据下载3. 数据处理4. 数据可视化 1. 前言 今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。 2月6日追记:本文发布后,腾讯的数据源多次变更u
智力题(程序员面试经典)
NO.1  有20瓶药丸,其中19瓶装有1克/粒的药丸,余下一瓶装有1.1克/粒的药丸。给你一台称重精准的天平,怎么找出比较重的那瓶药丸?天平只能用一次。 解法 有时候,严格的限制条件有可能反倒是解题的线索。在这个问题中,限制条件是天平只能用一次。 因为天平只能用一次,我们也得以知道一个有趣的事实:一次必须同时称很多药丸,其实更准确地说,是必须从19瓶拿出药丸进行称重。否则,如果跳过两瓶或更多瓶药
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
2020年的1月,我辞掉了我的第一份工作
其实,这篇文章,我应该早点写的,毕竟现在已经2月份了。不过一些其它原因,或者是我的惰性、还有一些迷茫的念头,让自己迟迟没有试着写一点东西,记录下,或者说是总结下自己前3年的工作上的经历、学习的过程。 我自己知道的,在写自己的博客方面,我的文笔很一般,非技术类的文章不想去写;另外我又是一个还比较热衷于技术的人,而平常复杂一点的东西,如果想写文章写的清楚点,是需要足够...
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
Java坑人面试题系列: 包装类(中级难度)
Java Magazine上面有一个专门坑人的面试题系列: https://blogs.oracle.com/javamagazine/quiz-2。 这些问题的设计宗旨,主要是测试面试者对Java语言的了解程度,而不是为了用弯弯绕绕的手段把面试者搞蒙。 如果你看过往期的问题,就会发现每一个都不简单。 这些试题模拟了认证考试中的一些难题。 而 “中级(intermediate)” 和 “高级(ad
Spring Boot 2.x基础教程:使用JdbcTemplate访问MySQL数据库
在第2章节中,我们介绍了如何通过Spring Boot来实现HTTP接口,以及围绕HTTP接口相关的单元测试、文档生成等实用技能。但是,这些内容还不足以帮助我们构建一个动态应用的服务端程序。不论我们是要做App、小程序、还是传统的Web站点,对于用户的信息、相关业务的内容,通常都需要对其进行存储,而不是像第2章节中那样,把用户信息存储在内存中(重启就丢了!)。 对于信息的存储,现在已经有非常非常多...
基于Python的人脸自动戴口罩系统
目录 1、项目背景 2、页面设计 3、器官识别 4、退出系统 1、项目背景 2019年新型冠状病毒感染的肺炎疫情发生以来,牵动人心,举国哀痛,口罩、酒精、消毒液奇货可居。 抢不到口罩,怎么办?作为技术人今天分享如何使用Python实现自动戴口罩系统,来安慰自己,系统效果如下所示: 本系统的实现原理是借助 Dlib模块的Landmark人脸68个关键点检测库轻松识别出人脸五官
相关热词 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数 c#日期精确到分钟 c#自定义异常必须继承 c#查表并返回值 c# 动态 表达式树 c# 监控方法耗时 c# listbox c#chart显示滚动条
立即提问