java http地址,发送post请求,eclipse运行没问题,打包成jar运行报错

java.io.IOException: Server returned HTTP response code: 400 for URL: http://113.204.53.18:8091/innosill/esb/schedule/receivingcarrierplan
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at com.hezhi.kylwsp.ui.stationCoordination.LinePlanManageUi.doPost(LinePlanManageUi.java:615)
at com.hezhi.kylwsp.ui.stationCoordination.LinePlanManageUi.commitBtnMedth(LinePlanManageUi.java:566)
at com.hezhi.kylwsp.ui.stationCoordination.LinePlanManageUi.BtnComMit(LinePlanManageUi.java:475)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.hezhi.ui.composite.button.HZbutton$1.widgetSelected(HZbutton.java:68)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
at com.hezhi.kylwsp.ui.main.Main.open(Main.java:136)
at com.hezhi.kylwsp.ui.main.LoginDialog$4.keyPressed(LoginDialog.java:326)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:161)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:774)
at org.eclipse.swt.custom.CCombo.textEvent(CCombo.java:1693)
at org.eclipse.swt.custom.CCombo$1.handleEvent(CCombo.java:111)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1103)
at org.eclipse.swt.widgets.Text.sendKeyEvent(Text.java:1427)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1099)
at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1508)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4268)
at org.eclipse.swt.widgets.Text.WM_CHAR(Text.java:2175)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4160)
at org.eclipse.swt.widgets.Text.windowProc(Text.java:2170)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2459)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3655)
at com.hezhi.kylwsp.ui.main.LoginDialog.open(LoginDialog.java:83)
at com.hezhi.kylwsp.ui.main.Login.main(Login.java:308)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.exe4j.runtime.WinLauncher.main(Unknown Source)

封装的方法:
public static String doPost(String parm,String url) {
    String result = "";
    PrintWriter out = null;
    BufferedReader in = null;
    try {

        URL realUrl = new URL(url);
        // 打开和URL之间的连接
        URLConnection conn = realUrl.openConnection();
        // 设置通用的请求属性
        //conn.setRequestMethod("POST");  
        conn.setRequestProperty("accept", "*/*");
        conn.setRequestProperty("connection", "Keep-Alive");
        conn.setRequestProperty("Content-Type", "application/json"); 
        conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
        // 发送POST请求必须设置如下两行
        conn.setDoOutput(true);
        conn.setDoInput(true);
        // 获取URLConnection对象对应的输出流
        out = new PrintWriter(conn.getOutputStream());
        // 发送请求参数
        out.print(parm);
        // flush输出流的缓冲
        out.flush();
        // 定义BufferedReader输入流来读取URL的响应
        in = new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));

// in = new OutputStreamWriter(con.getOutputStream());
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!"+e);
e.printStackTrace();
}
//使用finally块来关闭输出流、输入流
finally{
try{
if(out!=null){
out.close();
}
if(in!=null){
in.close();
}
}
catch(IOException ex){
ex.printStackTrace();
}
}
System.out.println(result);
return result;
}

5个回答

要打包成war包。不能是jar包。

web项目是打包成war,不是jar。

问题应该与jar包不jar包无关, 应该是你的访问参数不对, 返回400是因为请求不符合服务器约定, 找接口开发人员要文档吧

400是参数不对,你用日志记录一下,在eclipse和jar包运行的时候发送的参数是不是不一样

根据你项目的打包类型来进行打包

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
最近在用anjular post请求导出excel遇到的一些问题

以往做过直接导出数据,和上传excel, 用的poi3.17,前端框架用的angular 之前在导出时,都可以生成我预设的文件名,文件格式与后缀的excel 之前导出使用的是这样的 ``` window.location.href = "/api/livecoursepay?courseName=" + $scope.courseName + "&types=" + 14; ``` 赋现在的post传值代码 ``` $scope.uploadlineGuangdian=function(){ var fd = new FormData(); fd.append("file", $("#file")[0].files[0]); fd.append("types",1); $http.post("/api/improtExcel/guangdian",fd,{ withCredentials: true, headers: {'Content-Type': undefined }, responseType: 'arraybuffer', transformRequest: angular.identity }) .success(function(data){ var blob = new Blob([data], {type: "application/vnd.ms-excel"}); var objectUrl = URL.createObjectURL(blob); window.open(objectUrl); }) } ``` 但本次需求变更,需要导入一个excel文件,在返回一个excel文件, 所以只能用 post请求,但是使用过程中出现一些问题, 内容,表格名称都是我想要的样子,但是excel文件名和文件格式变成了奇怪的东西, 我需要用excel表格形式打开,再用excel另存才能达到我想要的样子 ![图片说明](https://img-ask.csdn.net/upload/201907/12/1562893703_461325.png),![图片说明](https://img-ask.csdn.net/upload/201907/12/1562893755_839418.png) 用window.location.href走的话在页面下载的就是excel文件而且文件名是我设置好的文件名 但是用上面的post方法返回的是一个没有后缀名的,文件名是一排随机编码的文件,需要用excel打开(如上图),但是打开后数据是我想要的 所以我想问问大神为什么会出现这种情况,怎么解决,非常感谢

根据wsdl文件用soap调用成功,但用java的HttpURLConnection访问却报错500

1.对方提供一个URL地址,用浏览器能成功访问,并将其保存wsdl文件 2.根据wsdl文件在soapUI上能成功访问对用的接口,且对方应答正常(数据为XML格式) 3.用java的HttpURLConnection方法去访问对应的接口却报500,请问这是什么问题? 4.用java程序访问的内容直接copy到soapUI上也是能成功访问且有应答的

springmvc中以get方式请求出现乱码问题,总是有???问号出现,求大神帮忙。

web.xml中的内容 ``` <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <filter> <filter-name>CharacterEncoding</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> ``` Controller中的内容 ``` package cn.sxt.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import cn.sxt.vo.User; @Controller public class HelloController { @RequestMapping("/hello") public String hello(String name,ModelMap model){ model.addAttribute("name",name); System.out.println(name); return "index.jsp"; } } ``` index.jsp中的内容 ``` <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> ${name } <br/>欢迎访问! </body> </html> ``` tomcat7的server.xml中也加上了URIEncoding="UTF-8",还是乱码,以post表单形式提交就没问题,我的请求url地址:http://localhost:8080/07springmvc_restful/hello.do?name=张三 求大神,帮忙,多谢,多谢,多谢,多谢,多谢,多谢。

java.io.FileNotFoundException: NUL: (系统找不到指定的文件。)

``` ![图片说明](https://img-ask.csdn.net/upload/201903/05/1551776620_308084.png)![图片说明](https://img-ask.csdn.net/upload/201903/05/1551776635_236944.png)![图片说明](https://img-ask.csdn.net/upload/201903/05/1551776645_134785.png) ```spring-boot-starter-undertow 其他电脑都没问题。就我自己笔记本不行,用内嵌的tomcat是可以的 org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.io.IOError: java.io.FileNotFoundException: NUL: (系统找不到指定的文件。) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:982) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:635) ~[tomcat-embed-core-8.5.29.jar:8.5.29] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[tomcat-embed-core-8.5.29.jar:8.5.29] at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:64) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:132) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) [undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104) [undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.Connectors.executeRootHandler(Connectors.java:336) [undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830) [undertow-core-1.4.23.Final.jar:1.4.23.Final] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_161] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_161] at java.lang.Thread.run(Thread.java:748) [na:1.8.0_161] Caused by: java.io.IOError: java.io.FileNotFoundException: NUL: (系统找不到指定的文件。) at org.xnio.channels.Channels$4.run(Channels.java:998) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] at org.xnio.channels.Channels$4.run(Channels.java:988) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_161] at org.xnio.channels.Channels.<clinit>(Channels.java:988) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] at io.undertow.servlet.spec.ServletOutputStreamImpl.flushInternal(ServletOutputStreamImpl.java:493) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.spec.ServletOutputStreamImpl.flush(ServletOutputStreamImpl.java:475) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:297) ~[na:1.8.0_161] at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141) ~[na:1.8.0_161] at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229) ~[na:1.8.0_161] at org.springframework.util.StreamUtils.copy(StreamUtils.java:119) ~[spring-core-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.http.converter.StringHttpMessageConverter.writeInternal(StringHttpMessageConverter.java:106) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.http.converter.StringHttpMessageConverter.writeInternal(StringHttpMessageConverter.java:41) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:226) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:247) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:174) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:81) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:113) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] ... 52 common frames omitted Caused by: java.io.FileNotFoundException: NUL: (系统找不到指定的文件。) at java.io.FileOutputStream.open0(Native Method) ~[na:1.8.0_161] at java.io.FileOutputStream.open(FileOutputStream.java:270) ~[na:1.8.0_161] at java.io.FileOutputStream.<init>(FileOutputStream.java:213) ~[na:1.8.0_161] at java.io.FileOutputStream.<init>(FileOutputStream.java:101) ~[na:1.8.0_161] at org.xnio.channels.Channels$4.run(Channels.java:993) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] ... 72 common frames omitted 2019-03-05 17:04:58.620 ERROR 2260 --- [ XNIO-2 task-1] io.undertow.request : UT005071: Undertow request failed HttpServerExchange{ GET /A request {Connection=[keep-alive], Accept=[text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8], Accept-Language=[zh-CN,zh;q=0.8], Cache-Control=[max-age=0], Accept-Encoding=[gzip, deflate, br], User-Agent=[Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.104 Safari/537.36], Upgrade-Insecure-Requests=[1], Host=[localhost:6001]} response {Connection=[keep-alive], Content-Type=[text/html;charset=UTF-8], Content-Length=[1], Date=[Tue, 05 Mar 2019 09:04:58 GMT]}} java.lang.NoClassDefFoundError: Could not initialize class org.xnio.channels.Channels at io.undertow.servlet.spec.ServletOutputStreamImpl.close(ServletOutputStreamImpl.java:615) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.spec.HttpServletResponseImpl.closeStreamAndWriter(HttpServletResponseImpl.java:479) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.spec.HttpServletResponseImpl.responseDone(HttpServletResponseImpl.java:568) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:339) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.Connectors.executeRootHandler(Connectors.java:336) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_161] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_161] at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_161] 2019-03-05 17:04:58.729 ERROR 2260 --- [ XNIO-2 task-2] io.undertow.request : UT005023: Exception handling request to /favicon.ico org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.io.IOError: java.io.FileNotFoundException: NUL: (系统找不到指定的文件。) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:982) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:635) ~[tomcat-embed-core-8.5.29.jar:8.5.29] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[tomcat-embed-core-8.5.29.jar:8.5.29] at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:64) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:132) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) [undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104) [undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.Connectors.executeRootHandler(Connectors.java:336) [undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830) [undertow-core-1.4.23.Final.jar:1.4.23.Final] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_161] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_161] at java.lang.Thread.run(Thread.java:748) [na:1.8.0_161] Caused by: java.io.IOError: java.io.FileNotFoundException: NUL: (系统找不到指定的文件。) at org.xnio.conduits.Conduits$1.run(Conduits.java:237) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] at org.xnio.conduits.Conduits$1.run(Conduits.java:227) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_161] at org.xnio.conduits.Conduits.<clinit>(Conduits.java:227) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] at io.undertow.conduits.AbstractFixedLengthStreamSinkConduit.writeFinal(AbstractFixedLengthStreamSinkConduit.java:175) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at org.xnio.conduits.ConduitStreamSinkChannel.writeFinal(ConduitStreamSinkChannel.java:104) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] at io.undertow.channels.DetachableStreamSinkChannel.writeFinal(DetachableStreamSinkChannel.java:195) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.server.HttpServerExchange$WriteDispatchChannel.writeFinal(HttpServerExchange.java:2073) ~[undertow-core-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.spec.ServletOutputStreamImpl.writeBufferBlocking(ServletOutputStreamImpl.java:571) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.spec.ServletOutputStreamImpl.close(ServletOutputStreamImpl.java:606) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.spec.ServletOutputStreamImpl.updateWritten(ServletOutputStreamImpl.java:370) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at io.undertow.servlet.spec.ServletOutputStreamImpl.write(ServletOutputStreamImpl.java:152) ~[undertow-servlet-1.4.23.Final.jar:1.4.23.Final] at org.springframework.util.StreamUtils.copy(StreamUtils.java:138) ~[spring-core-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.http.converter.ResourceHttpMessageConverter.writeContent(ResourceHttpMessageConverter.java:110) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.http.converter.ResourceHttpMessageConverter.writeInternal(ResourceHttpMessageConverter.java:102) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.http.converter.ResourceHttpMessageConverter.writeInternal(ResourceHttpMessageConverter.java:45) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:226) ~[spring-web-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.resource.ResourceHttpRequestHandler.handleRequest(ResourceHttpRequestHandler.java:480) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:51) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967) ~[spring-webmvc-4.3.16.RELEASE.jar:4.3.16.RELEASE] ... 52 common frames omitted Caused by: java.io.FileNotFoundException: NUL: (系统找不到指定的文件。) at java.io.FileOutputStream.open0(Native Method) ~[na:1.8.0_161] at java.io.FileOutputStream.open(FileOutputStream.java:270) ~[na:1.8.0_161] at java.io.FileOutputStream.<init>(FileOutputStream.java:213) ~[na:1.8.0_161] at java.io.FileOutputStream.<init>(FileOutputStream.java:101) ~[na:1.8.0_161] at org.xnio.conduits.Conduits$1.run(Conduits.java:232) ~[xnio-api-3.3.8.Final.jar:3.3.8.Final] ... 71 common frames omitted

ajax如何解决跨域问题?

后端是用eclipse开发的java后台,前端使用webstorm,前端html文件中通过ajax请求 后台接口,由于后台和前端共用一个端口没发同时访问,所以我修改了eclipse的端口为8088,webstorm的端口为8080,。然后在html中通过ajax请求后台接口地址Http://localhost:8088/test/user.json;ajax一直走失败的方法,在浏览器错误Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://10.20.153.16:8080' is therefore not alloed access.请大神们帮忙看下怎么解决

servlet映射配置问题,我在本机测试的时候映射没有问题,但是放入到服务器后前台表单无法提交到servlet?

# 本机测试没有问题 登陆的form提交到Login.java没有问题![图片说明](https://img-ask.csdn.net/upload/202002/22/1582374719_797880.png) # 但是服务器端就出现问题了 无论是form表单访问还是ajax异步提交都是一片白 web.xml的映射没有动过 ![图片说明](https://img-ask.csdn.net/upload/202002/22/1582375192_441719.jpg) ## 下面是web.xml的代码 ``` <description></description> <display-name>Login</display-name> <servlet-name>Login</servlet-name> <servlet-class>Sevelet.Login</servlet-class> </servlet> <servlet-mapping> <servlet-name>Login</servlet-name> <url-pattern>/Login</url-pattern> </servlet-mapping> <servlet> <description></description> <display-name>ImageUpload</display-name> <servlet-name>ImageUpload</servlet-name> <servlet-class>Sevelet.ImageUpload</servlet-class> </servlet> <servlet-mapping> <servlet-name>ImageUpload</servlet-name> <url-pattern>/ImageUpload</url-pattern> </servlet-mapping> ``` ## 下面是servlet的项目结构 ![图片说明](https://img-ask.csdn.net/upload/202002/22/1582375222_855293.png) ## 前台form提交和异步主要代码 ``` //form <form action="../sp_xgks_up" method="post"></form> //异步 xmlhttp.open("GET","../Sp_xginfodown?q="+id,true); ``` 大佬们,我本地idea+tomcat8 本地的tomcat和服务器上的是一致的,但是本地没问题,服务器就是有问题,服务器是阿里的系统是linux!!!!在线等,我是新手谢谢大家了

vue 调用eclipse 创建的动态web项目的后端接口,后端相应接口没运行(采用的SSM框架),有哪位大佬知道什么原因和相应解决方案的吗?

**我是写后端的**(现在测试vue用的静态数据), 在接口中添加了一个输出获取到的参数值的输出语句 ``` System.out.println(id+":aaaaaa:"+password+":aaaaaaa:"+identity); ``` 前端vue请求数据是表单数据, 后端采用的Spring相关依赖版本都为 4.3.6.RELEASE, 使用的 @CrossOrigin 注解来跨域, 采用的 ``` cd C:\Users\asus\AppData\Local\Google\Chrome\Application start chrome.exe --allow-file-access-from-files --disable-web-security --user-data-dir="C:\Users\asus\Desktop\vue测试" ``` 这种方式打开的谷歌测试vue,不用的话要报 ``` Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https. ``` 错误 # **---------------------------------** #附上Java后端接口代码 ``` @ResponseBody @CrossOrigin @RequestMapping(value = "/userLogin", method = RequestMethod.POST) public UserLogin userLogin(@RequestParam("id") String id, @RequestParam("password") String password, @RequestParam("identity") String identity) throws SQLException{ UserLogin ul = new UserLogin(1); System.out.println(id+":aaaaaa:"+password+":aaaaaaa:"+identity); if (identity.equals("学生")) { if (id.equals("111111111") && password.equals("222222")) { ul = new UserLogin(200, "龙阳","学生"); } } else if (identity.equals("教师")) { if (id.equals("111111111") && password.equals("222222")) { ul = new UserLogin(200, "周立章","教师"); } } else { if (id.equals("111111111") && password.equals("222222")) { ul = new UserLogin(200, "侯爽","管理员"); } } return ul; } ``` # ------------------------ #postman测试后端的截图 ![图片说明](https://img-ask.csdn.net/upload/202004/16/1587005237_671659.jpg) ![图片说明](https://img-ask.csdn.net/upload/202004/16/1587005392_345902.png) # ------------------------ #vue运行测试出的截图 ![图片说明](https://img-ask.csdn.net/upload/202004/16/1587005262_22173.jpg) ![图片说明](https://img-ask.csdn.net/upload/202004/16/1587005285_329754.png) # ------------------------ **我想知道是我后端的问题还是前端的问题,解决方案是什么?**

淘淘商城运行users.jsp页面出现400错误。

![图片说明](https://img-ask.csdn.net/upload/201909/12/1568267628_637428.png) 上面的是项目的的文件列表。 cn.itcast.usermanage.controller包 PageController.java文件代码 ``` package cn.itcast.usermanage.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; /** * 通用的页面跳转逻辑 * * @author * */ @Controller @RequestMapping("page") public class PageController { /** * 具体的跳转页面逻辑 -- test4 * * @param pageName * @return 视图名 */ @RequestMapping(value = "{pageName}", method = RequestMethod.GET) public String toPage(@PathVariable("pageName") String pageName) { return pageName; } } ``` mybatis.xml代码 ``` <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <plugins> <!-- 分页助手 --> <plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql" /> <!-- 该参数默认为false --> <!-- 设置为true时,使用RowBounds分页会进行count查询 --> <property name="rowBoundsWithCount" value="true" /> </plugin> <!-- 通用mapper --> <plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor"> <!--主键自增回写方法,默认值MYSQL,详细说明请看文档 --> <property name="IDENTITY" value="MYSQL" /> <!--通用Mapper接口,多个通用接口用逗号隔开 --> <property name="mappers" value="com.github.abel533.mapper.Mapper" /> </plugin> </plugins> </configuration> ``` spring文件代码区 applicationContext-mybatis.xml文件代码区 ``` <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <plugins> <!-- 分页助手 --> <plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql" /> <!-- 该参数默认为false --> <!-- 设置为true时,使用RowBounds分页会进行count查询 --> <property name="rowBoundsWithCount" value="true" /> </plugin> <!-- 通用mapper --> <plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor"> <!--主键自增回写方法,默认值MYSQL,详细说明请看文档 --> <property name="IDENTITY" value="MYSQL" /> <!--通用Mapper接口,多个通用接口用逗号隔开 --> <property name="mappers" value="com.github.abel533.mapper.Mapper" /> </plugin> </plugins> </configuration> ``` applicationContext-transaction.xml代码区 ``` <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <plugins> <!-- 分页助手 --> <plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql" /> <!-- 该参数默认为false --> <!-- 设置为true时,使用RowBounds分页会进行count查询 --> <property name="rowBoundsWithCount" value="true" /> </plugin> <!-- 通用mapper --> <plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor"> <!--主键自增回写方法,默认值MYSQL,详细说明请看文档 --> <property name="IDENTITY" value="MYSQL" /> <!--通用Mapper接口,多个通用接口用逗号隔开 --> <property name="mappers" value="com.github.abel533.mapper.Mapper" /> </plugin> </plugins> </configuration> ``` applicationContext.xml代码区 ``` <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <plugins> <!-- 分页助手 --> <plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql" /> <!-- 该参数默认为false --> <!-- 设置为true时,使用RowBounds分页会进行count查询 --> <property name="rowBoundsWithCount" value="true" /> </plugin> <!-- 通用mapper --> <plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor"> <!--主键自增回写方法,默认值MYSQL,详细说明请看文档 --> <property name="IDENTITY" value="MYSQL" /> <!--通用Mapper接口,多个通用接口用逗号隔开 --> <property name="mappers" value="com.github.abel533.mapper.Mapper" /> </plugin> </plugins> </configuration> ``` itcast-usermanage-servlet.xml代码区 ``` <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <plugins> <!-- 分页助手 --> <plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql" /> <!-- 该参数默认为false --> <!-- 设置为true时,使用RowBounds分页会进行count查询 --> <property name="rowBoundsWithCount" value="true" /> </plugin> <!-- 通用mapper --> <plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor"> <!--主键自增回写方法,默认值MYSQL,详细说明请看文档 --> <property name="IDENTITY" value="MYSQL" /> <!--通用Mapper接口,多个通用接口用逗号隔开 --> <property name="mappers" value="com.github.abel533.mapper.Mapper" /> </plugin> </plugins> </configuration> ``` web.xml文件 ``` <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>itcast-usermanage</display-name> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/applicationContext*.xml</param-value> </context-param> <!--Spring的ApplicationContext 载入 --> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- 编码过滤器,以UTF8编码 --> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- 解决PUT请求无法提交表单数据的问题 --> <filter> <filter-name>HttpMethodFilter</filter-name> <filter-class>org.springframework.web.filter.HttpPutFormContentFilter</filter-class> </filter> <filter-mapping> <filter-name>HttpMethodFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- 将POST请求转化为DELETE或者是PUT 要用_method指定真正的请求方法 --> <filter> <filter-name>HiddenHttpMethodFilter</filter-name> <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class> </filter> <filter-mapping> <filter-name>HiddenHttpMethodFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- 配置SpringMVC框架入口 --> <servlet> <servlet-name>itcast-usermanage</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/itcast-usermanage-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>itcast-usermanage</servlet-name> <!-- 可行:/、*.xxx、/xxx/* 不行:/* --> <url-pattern>/rest/*</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!-- ________________________________ --> <context-param> <param-name>spring.profiles.active</param-name> <param-value>dev</param-value> </context-param> <context-param> <param-name>spring.profiles.default</param-name> <param-value>dev</param-value> </context-param> <context-param> <param-name>spring.liveBeansView.mbeanDomain</param-name> <param-value>dev</param-value> </context-param> <!-- ________________________________ --> </web-app> ``` 还有的就是,我的tomcat默认是localhost:8080 运行tomcat报错图片 ![图片说明](https://img-ask.csdn.net/upload/201909/12/1568267939_567846.png) 求大佬帮我看看那里出了问题,找了一天了。还是没找到那里有问题!! 一直是400错误! users.jsp代码 ``` <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>会员管理系统</title> <link rel="stylesheet" type="text/css" href="/js/jquery-easyui-1.4/themes/default/easyui.css" /> <link rel="stylesheet" type="text/css" href="/js/jquery-easyui-1.4/themes/icon.css" /> <script type="text/javascript" src="/js/jquery-easyui-1.4/jquery.min.js"></script> <script type="text/javascript" src="/js/jquery-easyui-1.4/jquery.easyui.min.js"></script> <script type="text/javascript" src="/js/jquery-easyui-1.4/locale/easyui-lang-zh_CN.js"></script> <script type="text/javascript" src="/js/common.js"></script> </head> <body> <div> <table class="easyui-datagrid" id="userList" title="会员列表" data-options="singleSelect:false,collapsible:true,pagination:true,url:'/user/list',method:'post',pageSize:5,toolbar:toolbar,pageList:[2,5,10]"> <thead> <tr> <th data-options="field:'ck',checkbox:true"></th> <th data-options="field:'id',width:60">ID</th> <th data-options="field:'userName',width:200">用户名</th> <th data-options="field:'name',width:100">姓名</th> <th data-options="field:'age',width:100">年龄</th> <th data-options="field:'sex',width:80,align:'right',formatter:formatSet">性别</th> <th data-options="field:'birthday',width:80,align:'right',formatter:formatBirthday">出生日期</th> <th data-options="field:'created',width:130,align:'center',formatter:formatDate">创建日期</th> <th data-options="field:'updated',width:130,align:'center',formatter:formatDate">更新日期</th> </tr> </thead> </table> </div> <div id="userAdd" class="easyui-window" title="新增会员" data-options="modal:true,closed:true,iconCls:'icon-save',href:'/user/page/add'" style="width:800px;height:600px;padding:10px;"> The window content. </div> <script type="text/javascript"> function formatDate(val,row){ var now = new Date(val); return now.format("yyyy-MM-dd hh:mm:ss"); } function formatBirthday(val,row){ var now = new Date(val); return now.format("yyyy-MM-dd"); } function formatSet(val,row){ if(val == 1){ return "男"; }else if(val == 2){ return "女"; }else{ return "未知"; } } function getSelectionsIds(){ var userList = $("#userList"); var sels = userList.datagrid("getSelections"); var ids = []; for(var i in sels){ ids.push(sels[i].id); } ids = ids.join(","); return ids; } var toolbar = [{ text:'新增', iconCls:'icon-add', handler:function(){ $('#userAdd').window('open'); } },{ text:'编辑', iconCls:'icon-edit', handler:function(){ $.messager.alert('提示','该功能由学员自己实现!'); } },{ text:'删除', iconCls:'icon-cancel', handler:function(){ var ids = getSelectionsIds(); if(ids.length == 0){ $.messager.alert('提示','未选中用户!'); return ; } $.messager.confirm('确认','确定删除ID为 '+ids+' 的会员吗?',function(r){ if (r){ $.post("/user/delete",{'ids':ids}, function(data){ if(data.status == 200){ $.messager.alert('提示','删除会员成功!',undefined,function(){ $("#userList").datagrid("reload"); }); } }); } }); } },'-',{ text:'导出', iconCls:'icon-remove', handler:function(){ var optins = $("#userList").datagrid("getPager").data("pagination").options; var page = optins.pageNumber; var rows = optins.pageSize; $("<form>").attr({ "action":"/user/export/excel", "method":"POST" }).append("<input type='text' name='page' value='"+page+"'/>") .append("<input type='text' name='rows' value='"+rows+"'/>").submit(); } }]; </script> </body> </html> ``` ![图片说明](https://img-ask.csdn.net/upload/201909/16/1568593584_158545.png)

SpringMVC controller中不同的请求相互调用了,什么情况?百度了好多,没见过遇到这个问题的。。。

是这样的,今天在写课程大作业的时候,在排查bug,这个问题一直解决不了。 本来删除商品之后,不会再显示,第一次进行的时候测试成功,但是接下来进行 添加货品 - > 删除货品 的时候,需要传入的信息都正确,后台也显示删除成功, 但是发现数据没有删除,再往深里排查发现再删除之后又调用了一次添加操作, 有时候点击删除按钮还会跳到添加商品页面,毫无头绪。 网页前端: 添加按钮 (https://img-ask.csdn.net/upload/201904/21/1555815306_483090.png) 删除按钮及其函数: (https://img-ask.csdn.net/upload/201904/21/1555815373_605488.png) (https://img-ask.csdn.net/upload/201904/21/1555815390_833109.png) 后台处理请求: 添加: (https://img-ask.csdn.net/upload/201904/21/1555815436_319968.png) 删除: (https://img-ask.csdn.net/upload/201904/21/1555815478_332425.png) 控制台打印: (https://img-ask.csdn.net/upload/201904/21/1555815525_949940.png) 有人能解答一下嘛?谢谢。

Android studio使用HttpurlConnection无法连接的问题。

背景:Android studio编写获取webservice soap xml 我在eclipse中用java编写的个测试例子, 用的是HttpurlConnection可以成功读取数据,但是我搬到Android studio中,无法连接,会跳转到catch。我也按照网上说的方法加了线程,以及httpclient不能使用情况下载build中加入相关uselibary等等方法,都无法连接成功。请问我应该怎么解决,有懂的朋友帮帮忙,谢谢。 以下是代码: confirm.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v){ new Thread(new Runnable() { @Override public void run() { String id= edit.getText().toString(); httpClient(id); } }).start(); //这段代码在主线程中调用,开启一个线程 // String id= edit.getText().toString(); // httpClient(id); } }); } private void httpClient(String id) { //以SOAP1.1的格式发送 String httpBody = XMLDom.requestSOAP1(id); myXMLPost(httpBody); } private void myXMLPost(final String httpBody) { Map<String, String> map1 = new HashMap<String, String>(); try {//创建post对象 HttpURLConnection connection = (HttpURLConnection) new URL("http://119.10.51.138:86/erp.asmx").openConnection(); connection.setDoOutput(true); connection.setDoInput(true); connection.setRequestMethod("POST"); connection.setRequestProperty("Content-Type", "text/xml; charset=utf-8"); connection.setRequestProperty("SOAPAction", "http://tempuri.org/GetPROC_ORDER_Detail"); connection.connect();//连接服务器 OutputStream os = (OutputStream) connection.getOutputStream(); os.write(httpBody.getBytes()); os.flush(); os.close(); InputStream is = (InputStream) connection.getInputStream();//获取数据,真正的请求从此处开始 byte[] bts = new byte[is.available()]; is.read(bts); String detailResult = new String(bts); map1 = XMLDom.getLoginResult(detailResult); String s = map1.get("sl"); result.setText(s); } catch (Exception e) { e.printStackTrace(); result.setText("连接错误"); } }

jsp页面调用Servlet后进入Servlet页面空白不跳转了

各位大大,小弟正在用java做毕业设计,遇到一个问题,就是想实现获取页面的学生姓名sname和学号sno,然后到数据库中执行查询,将这个学生的成绩从数据库中输出到新的页面。可是,问题来了:在查询页面点击提交按钮后,页面跳转到ChengjiServlet2页面,web浏览器就一片空白,在ChengjiServlet2页面的sendRedirect也没了作用。。。希望各位大大们看在我操心做毕业设计的份儿上帮帮我吧,说白了就是一个查询输出,望大大们指点!跪谢!! //查询页面,jsp。放在一个文件夹里。路径没出错 不支持直接使用html标签,所以我改了一下 《body》 《form id="form1" name="chengjiFrom" method="post" action="../ChengjiServlet2"》《h1 align="center"》成绩查询页面《/h1》 《p>姓名: 《input name="sname" type="text" id="sname" /> 《/p> 《p>学号: 《input name="sno" type="text" id="sno" /> 《/p> 《p> 《input type="submit" name="Submit" value="查询成绩" /> 《/p> 《/form> 《/body> >//这是我编写的ChengjiServlet2类 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { List chengji = new ArrayList(); //获取chengjichaxun.jsp页面的各个控件属性 String Sname = request.getParameter("sname"); String Sno = request.getParameter("sno"); String SelectScore = request.getParameter("select"); ChengjiSQLUtil chengjiSql = new ChengjiSQLUtil(); Connection conn =null; Statement stmt=null; ResultSet rs = null; conn = chengjiSql.getConn_Bendi(); try { if(SelectScore.equals("score_1")) { //创建Statement实例,并执行sql语句 String sql = "SELECT * FROM 'renwu'.'score_da1' where sno='"+Sno+"' and sname='"+Sname+"'"; stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while(rs.next()) { String sno = rs.getString("sno"); String sname = rs.getString("sname"); String ke1_a = rs.getString("ke1_a"); String ke1_b = rs.getString("ke1_b"); String ke1_c = rs.getString("ke1_c"); String ke1_d = rs.getString("ke1_d"); String ke1_e = rs.getString("ke1_e"); String ke1_f = rs.getString("ke1_f"); chengji.add(sno); chengji.add(sname); chengji.add(ke1_a); chengji.add(ke1_b); chengji.add(ke1_c); chengji.add(ke1_d); chengji.add(ke1_e); chengji.add(ke1_f); } HttpSession session = request.getSession(); session.setAttribute("score", chengji); response.sendRedirect("chaxun_chengji/chengji_jieguo.jsp"); } else if(SelectScore.equals("score_2")) { String sql = "SELECT * FROM 'renwu'.'score_da2' where sno='"+Sno+"' and sname='"+Sname+"'"; stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while(rs.next()) { String sno = rs.getString("sno"); String sname = rs.getString("sname"); String ke2_a = rs.getString("ke2_a"); String ke2_b = rs.getString("ke2_b"); String ke2_c = rs.getString("ke2_c"); String ke2_d = rs.getString("ke2_d"); String ke2_e = rs.getString("ke2_e"); String ke2_f = rs.getString("ke2_f"); chengji.add(sno); chengji.add(sname); chengji.add(ke2_a); chengji.add(ke2_b); chengji.add(ke2_c); chengji.add(ke2_d); chengji.add(ke2_e); chengji.add(ke2_f); } HttpSession session = request.getSession(); session.setAttribute("score", chengji); response.sendRedirect("chaxun_chengji/chengji_jieguo.jsp"); } else if(SelectScore.equals("score_3")) { String sql = "SELECT * FROM 'renwu'.'score_da3' where sno='"+Sno+"' and sname='"+Sname+"'"; stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while(rs.next()) { String sno = rs.getString("sno"); String sname = rs.getString("sname"); String ke3_a = rs.getString("ke3_a"); String ke3_b = rs.getString("ke3_b"); String ke3_c = rs.getString("ke3_c"); String ke3_d = rs.getString("ke3_d"); String ke3_e = rs.getString("ke3_e"); String ke3_f = rs.getString("ke3_f"); chengji.add(sno); chengji.add(sname); chengji.add(ke3_a); chengji.add(ke3_b); chengji.add(ke3_c); chengji.add(ke3_d); chengji.add(ke3_e); chengji.add(ke3_f); } HttpSession session = request.getSession(); session.setAttribute("score", chengji); response.sendRedirect("chaxun_chengji/chengji_jieguo.jsp"); } else if(SelectScore.equals("score_4")) { String sql = "SELECT * FROM 'renwu'.'score_da4' where sno='"+Sno+"' and sname='"+Sname+"'"; stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while(rs.next()) { String sno = rs.getString("sno"); String sname = rs.getString("sname"); String ke4_a = rs.getString("ke4_a"); String ke4_b = rs.getString("ke4_b"); String ke4_c = rs.getString("ke4_c"); String ke4_d = rs.getString("ke4_d"); String ke4_e = rs.getString("ke4_e"); String ke4_f = rs.getString("ke4_f"); chengji.add(sno); chengji.add(sname); chengji.add(ke4_a); chengji.add(ke4_b); chengji.add(ke4_c); chengji.add(ke4_d); chengji.add(ke4_e); chengji.add(ke4_f); } HttpSession session = request.getSession(); session.setAttribute("score", chengji); response.sendRedirect("chaxun_chengji/chengji_jieguo.jsp"); } }catch(Exception e) { e.printStackTrace(); }finally { chengjiSql.releaseResources(conn, stmt, rs); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); } > //这块是web.xml的相关信息 <servlet> <servlet-name>chengjiServlet2</servlet-name> <servlet-class>org.afan.course.servlet.ChengjiServlet2</servlet-class> </servlet> <servlet-mapping> <servlet-name>chengjiServlet2</servlet-name> <url-pattern>/chengjiServlet2</url-pattern> </servlet-mapping> //这块是查询成功后要跳转的页面代码,目前还没能走到这个页面。我用list将数据输出,因为不会其他的将java类查询结果输出到jsp页面的方法。。 《body><P>成绩情况</P> 《table> <% List list = (List)session.getAttribute("score"); for(int i=0;i<list.size();i++) { out.print("成绩:" + list.get(i) + "<br/>"); } %> 《/table> 《/body>

httpclient-4.5.2读取超时,重发没起到作用,为什么?

1、写了一个httpclient的工具类,也写了重试的逻辑, 但是在多个线程在使用同一个httpclient实例的时候, 发现线程read time out的超时并没有被重发很郁闷(线程直接进入的SocketTimeoutException异常, 导致本次线程的请求没有拿到再次重发后的结果,导致数据丢失) public CloseableHttpClient getHttpClient() { return HttpClients.custom(). setConnectionManager(connMrg). setKeepAliveStrategy(myStrategy). setDefaultRequestConfig(requestConfig). setConnectionManagerShared(true). setMaxConnTotal(maxTotal). setRetryHandler( new HttpRequestRetryHandler() { @Override public boolean retryRequest(IOException exception , int executionCount , HttpContext context) { // 重试3次,从3开始 if (executionCount > 3) { return false; } /* if (exception instanceof NoHttpResponseException) { System.out.println( "[NoHttpResponseException has retry request:" + context.toString() + "][executionCount:" + executionCount + "]"); return true; } else if (exception instanceof SocketException || exception instanceof ConnectTimeoutException || exception instanceof SocketTimeoutException ) { System.out.println("[SocketException has retry request:" + context.toString() + "][executionCount:" + executionCount + "]"); return true; } */ if (exception instanceof UnknownHostException) { return false; } // SSL handshake exception if (exception instanceof SSLException) { return false; } //除上述两种异常其他异常均重试3次,其实主要问题在于 //服务端对连接数限制,会导致你再怎么重试,都会异常,连接数满了,重试还有毛用 //所以设置连接池的时候需要设置的比他们的最大值小,用完要及时释放到连接池 String time3 = new SimpleDateFormat("HH:mm:ss.SSS").format(new Date()); System.out.println("time:"+time3+"="+Thread.currentThread().getName() +"\n"+"[Exception:"+exception.toString()+" has retry request:" + context.toString() + "][executionCount:" + executionCount + "]"); return true; } } ). build(); } 问题3: String time3 = new SimpleDateFormat("HH:mm:ss.SSS").format(new Date()); System.out.println("time:"+time3+"="+Thread.currentThread().getName() +"\n"+"[Exception:"+exception.toString()+" has retry request:" + context.toString() + "][executionCount:" + executionCount + "]"); return true; 这段代码发生read time out的时候执行了,但是executionCount一直都是1,我理解应该是重发了一次,但是子线程里的日志打印了异常,并没有获取到重试后的结果 问题4,子线程取数据逻辑,只写了主要逻辑 httpPost.setHeader("Content-Type", "text/xml;charset=UTF-8"); // httpPost.setHeader("SOAPAction", ""); StringEntity data = new StringEntity(inputPara, Charset.forName("UTF-8")); httpPost.setEntity(data); try { response = httpClient.execute(httpPost); httpEntity = response.getEntity(); if (httpEntity != null) { // 获取响应内容 returnVal = EntityUtils.toString(httpEntity, "UTF-8"); // 消费掉节约内存,并关闭inputstream流 EntityUtils.consume(httpEntity); } } catch (Exception e) { e.printStackTrace(); } finally { try { // 关闭流并释放资源 response.close(); } catch (Exception e) { e.printStackTrace(); } } 我认为在这段的httpEntity = response.getEntity();执行的时候 readtime out,然后代码直接进入了catch逻辑,所以重发后的结果并没有取到。 问题5: 1、我就是想解决,读取超时就重发,一直到3次结束。 2、是不是我设置的读取超时时间为60s导致根本没办法重发,服务端可能已经把短连接关闭了 因为http默认短连接时间好像就是60s。我猜测,如果我设置读取时间为10s,可能就可以重试3次了。 3、 try{ httpEntity = response.getEntity(); } catch() { } 这段逻辑跟 创建httpclient的方法里面的重试方法,当发生异常时,到底是这段阻塞httpEntity = response.getEntity(); 等待3次重发?还是是异步的,里面重发,外面直接进入异常逻辑,根本不等重发后的结果

request.getParameter("zhangsan"); 获取数值为null

小弟我是一名初学者,在网上看的视屏教程全程自学! 学了快 四个月了,遇到目前这个问题没法解决! request.getParameter("zhangsan"); 无论里面输入什么值都显示null 但是视频里面老师的代码却可以显示 对应数值! 于是把老师的代码 复制了过来,显示还是 显示null 实在找不到原因,求大神指教 下面是代码和web.xml的配置 刚注册没悬赏,还请各位帮帮忙! 感激不尽 package com.unit08.servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class Servlet3 extends HttpServlet { //处理get请求 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("GBK");//设置请求数据的编码 response.setCharacterEncoding("GBK");//设置响应数据的编码 String s=request.getParameter("zhangsan"); PrintWriter pw=response.getWriter(); pw.print("您输入的name值是:"+s); } //处理post请求 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } ![图片说明](https://img-ask.csdn.net/upload/202006/04/1591256292_376340.png) ![图片说明](https://img-ask.csdn.net/upload/202006/04/1591256481_200893.png) 不好意思啊 各位 我找到问题了! 网址里面的问号忘记打了!

xmlHttp.open("GET",url,true);执行以后既不报错,也没有访问到servlet,这是为什么?

首先下面是获取XMLHttpRequest对象的方法,应该是没有问题的。 ``` //获得的XmlHttp对象的函数 function createXmlHttp(){ //对大对数浏览器适用 var xmlHttp; if(window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); } //考虑到浏览器的兼容性问题 if(window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); if(!xmlHttp){//如果还是没有获取到采用另一种方法 xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } } return xmlHttp; } ``` 下面是获取到XMLHttpRequest对象并调用open()方法传递参数给servlet。 调用以后就是没反应,不报错,servlet也没有被执行。 如果直接在浏览器上访问该servlet是可以的,这说明我的web.xml配置应该也是正确的,servlet也没有问题。想不出哪里还会出现问题了,希望这个问题能得到解决 ``` var xmlHttp; function getMoreContents(){ //首先获取用户的输入 var content = document.getElementById("keyword"); if(content.value == ""){ return; } //给服务器发送用户输入的内容,因为采用的是ajax异步发送 //所以需要使用一个对象,XmlHttpRequest对象 xmlHttp = createXmlHttp(); //要给服务器发送数据 var url = "search?keyword="+escape(content.value);//escape防止中文输入问题 //true表示异步 xmlHttp.open("get",url,true);//get请求方式不需要内容体,url为要访问的servlet的路径 ```

前台发ajax,后台返回json,有数据!前台获取不到,试了好久

前台请求 ``` $.ajax({ //提交类型 type:"post", //提交url url:"/SSM1/tologin", //提交的数据 data:{uid:$("#name").val(),upwd:$("#pwd").val()}, //返回数据格式 datatype:"json", //成功返回调用的函数 success:function(data){ alert(data); }, //调用出错执行的函数 error:function(data){ alert(data); } }); ``` 后台代码 ``` @ResponseBody @RequestMapping(value="/tologin",method= RequestMethod.POST) public void tologin(@RequestParam("uid") String uid,@RequestParam("upwd")String upwd ,HttpServletResponse response) throws IOException{ // 解决后台返回数据给前台出现的乱码问题 //response.setContentType("text/javascript;charset=utf-8"); response.setContentType("application/json;charset=utf-8"); response.setCharacterEncoding("UTF-8"); //信息处理类 Result result = new Result(); //根据id查询是否存在该用户 TbUser user=userservice.findById(uid); //如果存在判断密码 if(user!=null) { String pwd=user.getUpwd(); if(pwd.equals(upwd)) { result.setMsg("账号密码正确"); result.setCode(1);//1正确 result.setSuccess(true);//true成功正确 }else { result.setMsg("密码错误"); result.setCode(-2);//-2密码错误 result.setSuccess(false); } }else { result.setMsg("账号不存在"); result.setCode(-1);//-1失败 result.setSuccess(false); } JSONObject jsonObject=new JSONObject(); jsonObject.put("result", result); response.getWriter().print(jsonObject); ); } ``` 请求获得的数据 ![图片说明](https://img-ask.csdn.net/upload/201905/18/1558144723_84297.jpg) ![图片说明](https://img-ask.csdn.net/upload/201905/18/1558144737_833629.jpg) ![图片说明](https://img-ask.csdn.net/upload/201905/18/1558144723_84297.jpg) 其实有值的,只是弹窗显示的是object,object ![图片说明](https://img-ask.csdn.net/upload/201905/20/1558332115_576203.jpg)

JSp+ajax用户登录验证

[img]http://dl2.iteye.com/upload/attachment/0088/2001/4ee085e5-47e0-3995-ad42-62e4a53cfc2f.png[/img] 用户登陆界面,想要实现输入账号之后离开输入框就验证该账号是否存在,输入角色、账号、密码之后,点击登录,如果正确就跳转到index.jsp,错误不跳转并且在密码输入框下显示提示信息;有一个没输入就提示,信息也是在密码输入框下。 我现在的问题是:若果什么也不输,点击登录,会闪一下,但闪过之后就是重置了页面。输入正确也是闪一下就重置页面.账号验证没问题,就是登录有问题,但是搞不定,大侠们看看吧! login.jsp [code="java"]<form id="form" name="form" method="post" action="" > <table border="0"> <tr> <td align="right">角色类型:</td> <td><select name="role" id="role" onBlur="checkRole(this)"> <option value="0">-请选择角色-</option> <% List<Role> list = new ArrayList<Role>(); RoleDao dao = new RoleDaoImpl(); list = dao.findAllRoles();//调用实现类的查询全部方法 for (int i = 0; i < list.size(); i++) { Role r = list.get(i); %> <option value="<%=r.getR_id()%>"><%=r.getR_name()%></option> <% } %> </select> </td> <td align="left"> &nbsp; <span id="roleSpan"></span> </td> </tr> <tr> <td align="right">账号:</td> <td> <input type="text" name="number" id="number" onblur="checkNumber(this)"> </td> <td width="256" align="left"> &nbsp; <span id="numberSpan"></span> </td> </tr><!-- 当输入名字后离开输入框即调用--> <tr> <td align="right">密码:</td> <td><input type="password" name="pwd" id="pwd" onBlur="checkPsw(this)" > </td> <td align="left"> &nbsp; <span id="pwdSpan"></span> </td> </tr> <tr> <td align="left">&nbsp;<span id="feedback_info"></span></td> </tr> <tr> <td colspan="1"> <input type="submit" value="登录" onclick="checkLogin(this.form)"/> <input type="button" value="注册" onclick="javascript:window.location.href='User/Register.jsp'"></td> </tr> </table> </form>[/code] login.js [code="java"]var xmlHttp; function createXMLHttpRequest() { if (window.XMLHttpRequest) { var xmlHttp = new XMLHttpRequest(); //mozilla浏览器 } else if (window.ActiveXObject) { try { var xmlHttp = new ActiveX0bject("Msxml2.XMLHTTP"); //IE老版本 } catch (e) { } try { var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //IE新版本 } catch (e) { } } if (!xmlHttp) { window.alert("不能创建XMLHttpRequest对象实例"); return false; } else return xmlHttp; ////}///////花括号放错地方 } // 检查账号,给出提示信息 function checkNumber(Number) { var numberSpan = document.getElementById("numberSpan"); if (Number.value == "") { numberSpan.innerHTML = "账号必须填写".fontcolor("red"); return false; } else { xmlHttp = createXMLHttpRequest(); //createXMLHttpRequest申明的是局部变量,这里访问不到xmlHttp,要给xmlHttp变量赋值才行 var url="servlet/CheckNumberServlet?number="+Number.value+"&LoginTime="+new Date().getTime(); url = encodeURI(url); //转换码后再传输 xmlHttp.open("GET",url,true);//加时间戳防止IE缓存 //xmlhttp.setRequestHeader( "Content-Type", "text/html;charset=UTF-8" ); xmlHttp.onreadystatechange = handleStateChange1; xmlHttp.send(null); return true; } } function handleStateChange1() { var numberSpan = document.getElementById("numberSpan"); if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { // alert("来自服务器的响应:"+xmlHttp.responseText); if (xmlHttp.responseText == 'true') {///////responseText是字符串,不能和boolean变量直接比较 // alert("存在"); numberSpan.innerHTML = "<img src='Img/g.gif'>"; document.getElementById("feedback_info").innerHTML=""; return true; } else if (xmlHttp.responseText == 'false') {///////responseText是字符串,不能和boolean变量直接比较 // alert("不存在"); numberSpan.innerHTML = "账号不存在".fontcolor("red"); return false; } } else alert("服务器端错误"); } } // 检查密码,给出提示信息 function checkPsw(pswNode) { var spanNode1 = document.getElementById("pswSpan"); var Role= document.getElementById("role"); var Number= document.getElementById("number"); if (pswNode.value == "") { spanNode1.innerHTML = "密码必须填写".fontcolor("red"); return false; } else { pwdSpan.innerHTML = "<img src='Img/g.gif'>"; document.getElementById("feedback_info").innerHTML=""; return true; } } // 检查是否选中角色 function checkRole(selNode) { var index = selNode.selectedIndex;// 获得选中下标 var spanNode1 = document.getElementById("roleSpan"); if (index <= 0) { spanNode1.innerHTML = "必须选择角色".fontcolor("red"); return false; } else { spanNode1.innerHTML = "<img src='Img/g.gif'>"; document.getElementById("feedback_info").innerHTML=""; return true; } } // 检查表单 function checkLogin(o) { var Role=o.role; var Number= o.number; var Pwd= o.pwd; if(checkNumber(Number)&&checkPsw(Psw) &&checkRole(Role)) { xmlHttp = createXMLHttpRequest(); //createXMLHttpRequest申明的是局部变量,这里访问不到xmlHttp,要给xmlHttp变量赋值才行 var url="servlet/CheckLoginServlet?number="+Number.value+"&role="+Role.value+"&pwd="+Pwd.value+"&LoginTime="+new Date().getTime(); url = encodeURI(url); //转换码后再传输 xmlHttp.open("GET",url,true);//加时间戳防止IE缓存 //xmlhttp.setRequestHeader( "Content-Type", "text/html;charset=UTF-8" ); xmlHttp.onreadystatechange = handleStateChange2; xmlHttp.send(null); return true; } else{ document.getElementById("feedback_info").innerHTML="请填写每一项".fontcolor("red"); return false; } } function handleStateChange2() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { //alert("来自服务器的响应:" + xmlHttp.responseText); if(xmlHttp.responseText == '0'){ document.getElementById("feedback_info").innerHTML="账号与密码不匹配".fontcolor("red"); return false; } else if(xmlHttp.responseText == '1'){ document.getElementById("feedback_info").innerHTML=""; window.location.href="index.jsp"; return true; } } else alert("服务器端错误"); } }[/code] chuckLoginservlet [code="java"]public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); doPost(request, response);// 调用doPost方法 } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=UTF-8"); String number=""; try { number = new String(request.getParameter("number").getBytes( "ISO-8859-1"), "UTF-8"); } catch (Exception e1) { System.out.println("number为空"); } String role="0"; int rID=0; try { role = new String(request.getParameter("role").getBytes( "ISO-8859-1"), "UTF-8"); rID=Integer.parseInt(role);//把获得的role的值转成整型 } catch (Exception e1) { System.out.println(request.getParameter("role")+"******role"); } String pwd=""; try { pwd = new String(request.getParameter("pwd").getBytes( "ISO-8859-1"), "UTF-8"); } catch (Exception e) { System.out.println(request.getParameter("pwd")+"****pwd"); } // String txt = new String(number.getBytes("ISO-8859-1"), "UTF-8"); // System.out.println(txt+"********"); PrintWriter out = response.getWriter(); User u = new User(); UserDao ud = new UserDaoImpl(); u = ud.findUserByNumber(number);//通过账号找到用户对象 if (u != null) {// 找到该用户 int u_id = u.getU_id();// 获得该用户的ID UserRole ur = new UserRole(); UserRoleDao urd = new UserRoleDaoImpl(); ur = urd.findUserRoleByUserId(u_id);// 找到中间表UserRole的记录 int r_id = ur.getRole().getR_id();// 由Userrole表找到Role表的相对应角色名称 if (r_id==rID && u.getU_password().equals(pwd))// 如果数据中的角色和密码与之对应 { out.write("1");//1表示验证通过 } else { out.write("0");//0表示密码与账号不匹配 } } out.flush(); out.close(); }[/code]

Failed to load resource

这是日志文件 没发现有错误![图片说明](https://img-ask.csdn.net/upload/201711/01/1509528592_221050.png) 项目在eclipse下能跑通,部署到linux上可以进首页,首页执行的ajax异步的方法就404 Failed to load resource: the server responded with a status of 404 (Not Found)

SpringSecurity登录的时候一直重定向,回到登录页面

springsecurity3.2 <br/>说起来,我这个原本前台是ANGULARJS+HTML写的 <br/>但是公司单点登录必须要JSP页面,因为是老系统,html不支持 <br/>所以没办法,就写了个JSP来登录 <br/>然后我登录上去会报302,而且response里面带location:login.jsp <br/>我确认过用户名密码,没问题,而且我也重写了UserDetailsService <br/>但是根本没有到UserDetailServic这一步,应该是授权的时候就不通过 <br/>说实话,对springsecurity不太了解,下面是配置文件,麻烦大神指点! <br/><br/>config-file <br/> ``` <!-- 以下页面不被拦截 --> <http pattern="/login_sso.jsp" security="none"></http> <http pattern="/css/**" security="none"></http> <http pattern="/fonts/**" security="none"></http> <http pattern="/images/**" security="none"></http> <http pattern="/js/**" security="none"></http> <http pattern="/lib/**" security="none"></http> <http pattern="/plugins/**" security="none"></http> <http use-expressions="false"> <!-- 拦截规则 --> <intercept-url pattern="/**" access="ROLE_USER" /> <!-- 登录配置 1登陆页面 2登陆成功跳转页面 3登录失败跳转页面 4总是使用默认跳转页面--> <form-login login-page="/login_sso.jsp" default-target-url="/index.html" login-processing-url="/j_spring_security_check" authentication-failure-url="/login.html" always-use-default-target="true"/> <csrf disabled="true"/> <!-- 由于使用了框架页面,所以要进行以下配置 --> <headers> <frame-options policy="SAMEORIGIN"/> </headers> <!-- 登出配置 --> <logout logout-url="/logout" logout-success-url="/login_sso.jsp"/> </http> ``` <br/> login.jsp ``` <form id="loginForm" name="loginForm" action="/modify/j_spring_security_check" method="post" > <input type="text" id="username" name="name" /> <input type="password" id="password" name="password" /> <input value="登录" style="width:100%;" type="button" onclick="document:loginForm.submit()"> </form> ``` <br/><br/> response信息,这个是向login-processing-url发起请求后的返回信息,直接被重定向回login.jsp了,而且都没到UserDetailService <br/> ![图片说明](https://img-ask.csdn.net/upload/201903/05/1551788138_54021.png)

关于js函数调用不起作用的问题

今天在学习ajax的时候,按照课本上的步骤,但是最后没有任何效果 ``` <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>search Suggest</title> <script type="text/javascript" src="/js/ajax.js"></script> <script type="text/javascript"> var trSrc; //设置下拉提示框的位置 function setDivPosition() { alert("error"); var input = document.getElementById("inputWord"); var listdiv = document.getElementById("wordsListDiv"); listdiv.style.left = (input.offsetLeft)+"px"; listdiv.style.border = "blue 1px solid"; listdiv.style.top = (input.offsetTop+input.offsetHeight)+"px"; listdiv.style.width = (input.offsetWidth)+"px"; } function search() { alert("search?"); var inputWord = document.getElementById("inputWord").value; var url = "SearchSuggest"; var params = "inputWord="+inputWord; sendRequest(url,params,"POST",display); } function display() { alert("display?"); if(httpRequest.readyState == 4){ if(httpRequest.status == 200){ var xmlDoc = httpRequest.responseXML; clearDivData(); changeDivData(xmlDoc); }else{ alert("您请求的界面有异常!"); } } } // 清除下拉框中的数据 function clearDivData(){ alert("clearDiv"); var tbody = document.getElementById("wordsListTbody"); vat trs = tbody.getElementsByTagName("tr"); for(var i=trs.length-1;i>0;i--){ tbody.removeChild(trs[i]); } } // 设置用户选中条目的背景色 function setBgColor() { if(trSrc){ trSrc.style.backgroundColor = "white"; } trSrc = event.srcElement; trSrc.style.backgroundColor = "gray"; } // 将用户选中的条目显示在文本框中 function setText(){ alert("setText"); document.getElementById("inputWorld").value = trSrc.firstChild.data; document.getElementById("wordsListDiv").style.visibility = "hidden"; } // 实际将数据加入下拉提示框 function changeDivData(xmlDoc) { alert("changeDiv"); var words = xmlDoc.getElementsByTagName("word"); var tbody = document.getElementById("wordsListTbody"); for(i=0;i<words.length;i++){ var newTr = document.createElement("tr"); var newCell = document.createElement("td"); var wordText = words[i].firstChild.data; var textNode = document.createTextNode(wordText); newCell.onmouseover = setBgColor; newCell.onclick = setText; newCell.appendChild(textNode); newTr.append(newCell); tbody.appendChild(newTr); } if(words.length>0){ document.getElementById("wordsListDiv").style.visibility = 'visible'; }else{ document.getElementById("wordsListDiv").style.visibility = 'hidden'; } } </script> </head> <body onload="setDivPosition()"> <p>搜索字符串:<input type="text" id="inputWord" onkeyup="search()"></p> <div id="wordsListDiv" style="position:absolute;visibility:hidden"> <table id="worksListTable"> <tbody id="wordsListTbody"><tr><td>test</td></tr></tbody> </table> </div> </body> </html> ``` 其中就是body标签调用的onload,然后文本框调用了onKeyUp,在两个函数里面都加了一条alert语句,然后运行的时候还是什么反应都没有,求大佬给看一下是什么原因

java jdk 8 帮助文档 中文 文档 chm 谷歌翻译

JDK1.8 API 中文谷歌翻译版 java帮助文档 JDK API java 帮助文档 谷歌翻译 JDK1.8 API 中文 谷歌翻译版 java帮助文档 Java最新帮助文档 本帮助文档是使用谷

软件测试2小时入门

本课程内容系统、全面、简洁、通俗易懂,通过2个多小时的介绍,让大家对软件测试有个系统的理解和认识,具备基本的软件测试理论基础。 主要内容分为5个部分: 1 软件测试概述,了解测试是什么、测试的对象、原则、流程、方法、模型;&nbsp; 2.常用的黑盒测试用例设计方法及示例演示;&nbsp; 3 常用白盒测试用例设计方法及示例演示;&nbsp; 4.自动化测试优缺点、使用范围及示例‘;&nbsp; 5.测试经验谈。

汽车行驶工况构建2019 D题.zip

1. 标记0与0之间的片段位置 2.标记所之间的毛刺数的位置 3.去掉毛刺数据 速度 并生成 新的数组 4.标记时间段 5. 0与0之间 如果有不连续的时间片段 置零 先找到时间间隔 再看间隔时间对应

Python+OpenCV计算机视觉

Python+OpenCV计算机视觉系统全面的介绍。

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

专为程序员设计的数学课

<p> 限时福利限时福利,<span>15000+程序员的选择!</span> </p> <p> 1、原价 115 元,限时特价仅需 49 元!<br> 2、购课后添加学习助手(微信号:csdnxy68),按提示消息领取编程大礼包!并获取讲师答疑服务! </p> <p> <br> </p> <p> 套餐中一共包含5门程序员必学的数学课程(共47讲) </p> <p> 课程1:《零基础入门微积分》 </p> <p> 课程2:《数理统计与概率论》 </p> <p> 课程3:《代码学习线性代数》 </p> <p> 课程4:《数据处理的最优化》 </p> <p> 课程5:《马尔可夫随机过程》 </p> <p> <br> </p> <p> 哪些人适合学习这门课程? </p> <p> 1)大学生,平时只学习了数学理论,并未接触如何应用数学解决编程问题; </p> <p> 2)对算法、数据结构掌握程度薄弱的人,数学可以让你更好的理解算法、数据结构原理及应用; </p> <p> 3)看不懂大牛代码设计思想的人,因为所有的程序设计底层逻辑都是数学; </p> <p> 4)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; </p> <p> 5)想修炼更好的编程内功,在遇到问题时可以灵活的应用数学思维解决问题。 </p> <p> <br> </p> <p> 在这门「专为程序员设计的数学课」系列课中,我们保证你能收获到这些:<br> <br> <span> </span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">①价值300元编程课程大礼包</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">②应用数学优化代码的实操方法</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">③数学理论在编程实战中的应用</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">④程序员必学的5大数学知识</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">⑤人工智能领域必修数学课</span> </p> <p> <br> 备注:此课程只讲程序员所需要的数学,即使你数学基础薄弱,也能听懂,只需要初中的数学知识就足矣。<br> <br> 如何听课? </p> <p> 1、登录CSDN学院 APP 在我的课程中进行学习; </p> <p> 2、登录CSDN学院官网。 </p> <p> <br> </p> <p> 购课后如何领取免费赠送的编程大礼包和加入答疑群? </p> <p> 购课后,添加助教微信:<span> csdnxy68</span>,按提示领取编程大礼包,或观看付费视频的第一节内容扫码进群答疑交流! </p> <p> <img src="https://img-bss.csdn.net/201912251155398753.jpg" alt=""> </p>

微信公众平台开发入门

本套课程的设计完全是为初学者量身打造,课程内容由浅入深,课程讲解通俗易懂,代码实现简洁清晰。通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有什么特点,它能做什么,怎么开发公众号。 其次,通过本课程的学习,学员能够掌握微信公众平台开发的方法、技术和应用实现。例如,开发者文档怎么看,开发环境怎么搭建,基本的消息交互如何实现,常用的方法技巧有哪些,真实应用怎么开发。

4小时玩转微信小程序——基础入门与微信支付实战

这是一个门针对零基础学员学习微信小程序开发的视频教学课程。课程采用腾讯官方文档作为教程的唯一技术资料来源。杜绝网络上质量良莠不齐的资料给学员学习带来的障碍。 视频课程按照开发工具的下载、安装、使用、程序结构、视图层、逻辑层、微信小程序等几个部分组织课程,详细讲解整个小程序的开发过程

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

IE主页被篡改修复

IE主页修复。IE主页被篡改修复。一键修复IE主页

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

土豆SDK(Java版)-非官方

由于土豆SDK一直建设中,最近几天抽空写了一套java的SDK。包含了现有的所有请求协议。本套SDK中仅提供了oAuth的方式(引用oAuth.net的java版示例),并没有在框架中实现,涉及到登录

Java8零基础入门视频教程

这门课程基于主流的java8平台,由浅入深的详细讲解了java SE的开发技术,可以使java方向的入门学员,快速扎实的掌握java开发技术!

【数据结构与算法综合实验】欢乐连连看(C++ & MFC)案例

这是武汉理工大学计算机学院数据结构与算法综合实验课程的第三次项目:欢乐连连看(C++ & MFC)迭代开发代码。运行环境:VS2017。已经实现功能:开始游戏、消子、判断胜负、提示、重排、计时、帮助。

数学建模竞赛D题“汽车行驶工况构建

第十六届“华为杯”数学建模竞赛D题“汽车行驶工况构建”论文。论文获得比赛国家二等奖,论文为原创,仅供参考。 关键词:数据处理;降维;聚类。

Vue.js 2.0之全家桶系列视频课程

基于新的Vue.js 2.3版本, 目前新全的Vue.js教学视频,让你少走弯路,直达技术前沿! 1. 包含Vue.js全家桶(vue.js、vue-router、axios、vuex、vue-cli、webpack、ElementUI等) 2. 采用笔记+代码案例的形式讲解,通俗易懂

Android音视频开发全套

Android平台音视频开发全套,涉及:FFmpeg软解码解码、Mediacodec硬解码编码、Openssl音频播放、OpenGL ES视频渲染、RTMP推流等核心重要知识点。

设计模式(JAVA语言实现)--20种设计模式附带源码

课程亮点: 课程培训详细的笔记以及实例代码,让学员开始掌握设计模式知识点 课程内容: 工厂模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、原型模型、代理模式、单例模式、适配器模式 策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式 课程特色: 笔记设计模式,用笔记串连所有知识点,让学员从一点一滴积累,学习过程无压力 笔记标题采用关键字标识法,帮助学员更加容易记住知识点 笔记以超链接形式让知识点关联起来,形式知识体系 采用先概念后实例再应用方式,知识点深入浅出 提供授课内容笔记作为课后复习以及工作备查工具 部分图表(电脑PC端查看):

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

想学好JAVA必须要报两万的培训班吗? Java大神勿入 如果你: 零基础想学JAVA却不知道从何入手 看了一堆书和视频却还是连JAVA的环境都搭建不起来 囊中羞涩面对两万起的JAVA培训班不忍直视 在职没有每天大块的时间专门学习JAVA 那么恭喜你找到组织了,在这里有: 1. 一群志同道合立志学好JAVA的同学一起学习讨论JAVA 2. 灵活机动的学习时间完成特定学习任务+每日编程实战练习 3. 热心助人的助教和讲师及时帮你解决问题,不按时完成作业小心助教老师的家访哦 上一张图看看前辈的感悟: &nbsp; &nbsp; 大家一定迫不及待想知道什么是极简JAVA学习营了吧,下面就来给大家说道说道: 什么是极简JAVA学习营? 1. 针对Java小白或者初级Java学习者; 2. 利用9天时间,每天1个小时时间; 3.通过 每日作业 / 组队PK / 助教答疑 / 实战编程 / 项目答辩 / 社群讨论 / 趣味知识抢答等方式让学员爱上学习编程 , 最终实现能独立开发一个基于控制台的‘库存管理系统’ 的学习模式 极简JAVA学习营是怎么学习的? &nbsp; 如何报名? 只要购买了极简JAVA一:JAVA入门就算报名成功! &nbsp;本期为第四期极简JAVA学习营,我们来看看往期学员的学习状态: 作业看这里~ &nbsp; 助教的作业报告是不是很专业 不交作业打屁屁 助教答疑是不是很用心 &nbsp; 有奖抢答大家玩的很嗨啊 &nbsp; &nbsp; 项目答辩终于开始啦 &nbsp; 优秀者的获奖感言 &nbsp; 这是答辩项目的效果 &nbsp; &nbsp; 这么细致的服务,这么好的氛围,这样的学习效果,需要多少钱呢? 不要1999,不要199,不要99,只要9.9 是的你没听错,只要9.9以上所有就都属于你了 如果你: 1、&nbsp;想学JAVA没有基础 2、&nbsp;想学JAVA没有整块的时间 3、&nbsp;想学JAVA没有足够的预算 还等什么?赶紧报名吧,抓紧抢位,本期只招300人,错过只有等时间待定的下一期了 &nbsp; 报名请加小助手微信:eduxy-1 &nbsp; &nbsp;

2019 AI开发者大会

2019 AI开发者大会(AI ProCon 2019)是由中国IT社区CSDN主办的AI技术与产业年度盛会。多年经验淬炼,如今蓄势待发:2019年9月6-7日,大会将有近百位中美顶尖AI专家、知名企业代表以及千余名AI开发者齐聚北京,进行技术解读和产业论证。我们不空谈口号,只谈技术,诚挚邀请AI业内人士一起共铸人工智能新篇章!

web网页制作期末大作业

分享思维,改变世界. web网页制作,期末大作业. 所用技术:html css javascript 分享所学所得

手把手实现Java图书管理系统(附源码)

【超实用课程内容】 本课程演示的是一套基于Java的SSM框架实现的图书管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的java人群。详细介绍了图书管理系统的实现,包括:环境搭建、系统业务、技术实现、项目运行、功能演示、系统扩展等,以通俗易懂的方式,手把手的带你从零开始运行本套图书管理系统,该项目附带全部源码可作为毕设使用。 【课程如何观看?】 PC端:https://edu.csdn.net/course/detail/27513 移动端:CSDN 学院APP(注意不是CSDN APP哦) 本课程为录播课,课程2年有效观看时长,大家可以抓紧时间学习后一起讨论哦~ 【学员专享增值服务】 源码开放 课件、课程案例代码完全开放给你,你可以根据所学知识,自行修改、优化 下载方式:电脑登录https://edu.csdn.net/course/detail/27513,点击右下方课程资料、代码、课件等打包下载

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

2019 Python开发者日-培训

本次活动将秉承“只讲技术,拒绝空谈”的理念,邀请十余位身处一线的Python技术专家,重点围绕Web开发、自动化运维、数据分析、人工智能等技术模块,分享真实生产环境中使用Python应对IT挑战的真知灼见。此外,针对不同层次的开发者,大会还安排了深度培训实操环节,为开发者们带来更多深度实战的机会。

C++语言基础视频教程

C++语言基础视频培训课程:本课与主讲者在大学开出的程序设计课程直接对接,准确把握知识点,注重教学视频与实践体系的结合,帮助初学者有效学习。本教程详细介绍C++语言中的封装、数据隐藏、继承、多态的实现等入门知识;主要包括类的声明、对象定义、构造函数和析构函数、运算符重载、继承和派生、多态性实现等。 课程需要有C语言程序设计的基础(可以利用本人开出的《C语言与程序设计》系列课学习)。学习者能够通过实践的方式,学会利用C++语言解决问题,具备进一步学习利用C++开发应用程序的基础。

零基础学C#编程—C#从小白到大咖

本课程从初学者角度出发,提供了C#从入门到成为程序开发高手所需要掌握的各方面知识和技术。 【课程特点】 1 由浅入深,编排合理; 2 视频讲解,精彩详尽; 3 丰富实例,轻松易学; 4 每章总结配有难点解析文档。 15大章节,228课时,1756分钟与你一同进步!

编程实现学生基本信息管理程序

编程实现学生基本信息管理程序。学生基本信息包括:学号、姓名、性别、年龄、班级、学院、专业等。具体实现的管理功能如下: (1) 输入并显示多个学生的基本信息; (2) 可根据需要实现学生信息的添加; (

android 漂亮的UI界面 完整的界面设计

声明:这也是我学习时在网上下载的,鉴于分享精神,并且觉得很不错才上传上来的。。。。。 android 漂亮的UI界面 完整的界面设计 这是一个完整的UI设计,但是没写动作,这是一个公司程序员的公司任务

Anaconda详细安装及使用教程(带图文)

Anacond的介绍 Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 531 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。 Conda是一个开源的包、环境管理器,可以用于...

DirectX修复工具V4.0增强版

DirectX修复工具(DirectX Repair)是一款系统级工具软件,简便易用。本程序为绿色版,无需安装,可直接运行。 本程序的主要功能是检测当前系统的DirectX状态,如果发现异常则进行修复

相关热词 c# cad插入影像 c#设计思想 c#正则表达式 转换 c#form复制 c#写web c# 柱形图 c# wcf 服务库 c#应用程序管理器 c#数组如何赋值给数组 c#序列化应用目的博客园
立即提问