如果您对javaweb实现文件夹上传(保留目录结构)感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于javaweb实现文件夹上传(保留目录结构)的详细内容,我们还将为您解答j
如果您对java web 实现文件夹上传(保留目录结构)感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于java web 实现文件夹上传(保留目录结构)的详细内容,我们还将为您解答javaweb文件上传路径问题的相关问题,并且为您提供关于.NET Web 部件 | Web 部件管理器 | Web 部件区、Airflow/Pentaho Java 错误 - 启动 mvn 时出错:org.ops4j.pax.web/pax-web-runtime/7.2.10、asp.net-web-api – System.Web.Routing.RouteCollection不包含“MapHttpRoute”的定义 – VS 2012,Web API、asp.net-web-api – Windows.Web.Http.HttpClient WEB API Windows身份验证的有价值信息。
本文目录一览:- java web 实现文件夹上传(保留目录结构)(javaweb文件上传路径问题)
- .NET Web 部件 | Web 部件管理器 | Web 部件区
- Airflow/Pentaho Java 错误 - 启动 mvn 时出错:org.ops4j.pax.web/pax-web-runtime/7.2.10
- asp.net-web-api – System.Web.Routing.RouteCollection不包含“MapHttpRoute”的定义 – VS 2012,Web API
- asp.net-web-api – Windows.Web.Http.HttpClient WEB API Windows身份验证
java web 实现文件夹上传(保留目录结构)(javaweb文件上传路径问题)
javaweb上传文件
上传文件的jsp中的部分
上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求
1.通过form表单向后端发送请求
<form id="postForm" action="${pageContext.request.contextpath}/UploadServlet" method="post" enctype="multipart/form-data">
<div class="bbxx wrap">
<inputtype="text" id="side-profile-name" name="username" class="form-control">
<inputtype="file" id="example-file-input" name="avatar">
<button type="submit" class="btn btn-effect-ripple btn-primary">Save</button>
</div>
</form>
改进后的代码不需要form标签,直接由控件来实现。开发人员只需要关注业务逻辑即可。JS中已经帮我们封闭好了
通过监控工具可以看到控件提交的数据,非常的清晰,调试也非常的简单。
2.通过ajax向后端发送请求
1.
$.ajax({
url : "${pageContext.request.contextpath}/UploadServlet",
type : "POST",sans-serif; font-size: 12pt;"> data : $( ‘#postForm‘).serialize(),sans-serif; font-size: 12pt;"> success : function(data) {
$( ‘#serverResponse‘).html(data);
},
error : function(data) {
$( ‘#serverResponse‘).html(data.status + " : " + data.statusText + " : " + data.responseText);
}
});
ajax分为两部分,一部分是初始化,文件在上传前通过AJAX请求通知服务端进行初始化操作
在文件上传完后向服务器发送通知
这里需要处理一个MD5秒传的逻辑,当服务器存在相同文件时,不需要用户再上传,而是直接通知用户秒传
这里可以看到秒传的逻辑是非常 简单的,并不是特别的复杂。
var form = new FormData();
form.append("username","zxj");
form.append("avatar",file);
//var form = new FormData($("#postForm")[0]);
$.ajax({
url:"${pageContext.request.contextpath}/UploadServlet",
type:"post",sans-serif; font-size: 12pt;"> data:form,
processData:false,sans-serif; font-size: 12pt;"> contentType:false,sans-serif; font-size: 12pt;"> success:function(data){
console.log(data);
}
});
java部分
文件初始化的逻辑
接收文件块数据,在这个逻辑中我们接收文件块数据。控件对数据进行了优化,可以方便调试。如果用监控工具可以看到控件提交的数据。
注:
1. 上面的java部分的代码可以直接使用,只需要将上传的图片路径及收集数据并将数据写入到数据库即可
2. 上面上传文件使用到了字节流,其实还可以使用别的流,这个需要读者自己在下面完善测试
3. BeanUtils是一个工具 便于将实体对应的属性赋给实体
4. 上传文件不能使用 request.getParameter("")获取参数了,而是直接将request解析,通过判断每一项是文件还是非文件,然后进行相应的操作(文件的话就是用流来读取,非文件的话,暂时保存到一个map中。)
后端代码逻辑大部分是相同的,目前能够支持MysqL,Oracle,sql。在使用前需要配置一下数据库,可以参考我写的这篇文章:http://blog.ncmem.com/wordpress/2019/08/12/java-http%E5%A4%A7%E6%96%87%E4%BB%B6%E6%96%AD%E7%82%B9%E7%BB%AD%E4%BC%A0%E4%B8%8A%E4%BC%A0/
.NET Web 部件 | Web 部件管理器 | Web 部件区
如何解决.NET Web 部件 | Web 部件管理器 | Web 部件区
我在 ASP.NET Web 窗体中使用 Web 部件。我的项目运行正常。 但是,当我拖放 Web 部件管理器时出现此错误,谁能指导我如何在 Windows 10 中解决此问题。
与 sql Server 建立连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 sql Server 是否配置为允许远程连接。 (提供程序:sql 网络接口,错误:26 - 错误定位服务器/指定的实例)
Airflow/Pentaho Java 错误 - 启动 mvn 时出错:org.ops4j.pax.web/pax-web-runtime/7.2.10
如何解决Airflow/Pentaho Java 错误 - 启动 mvn 时出错:org.ops4j.pax.web/pax-web-runtime/7.2.10
我目前正在使用 Airflow 2.0 使用 BashOperator 来安排我的 Pentaho 作业,如下例所示:
sudo /d/Airflow/pdi-ce-9.1.0.0-324/data-integration/pan.sh -rep:"penta_repo" -user:123 -pass:123 -dir:TEST/RUN_IT -trans:"RUN_IT_1" -level:Basic
当我运行它时,有很多与java库相关的错误。这是日志的一部分:
[...]
[2021-03-04 11:40:49,072] {bash.py:173} INFO - SEVERE: Bundle org.ops4j.pax.web.pax-web-runtime [190] Error starting mvn:org.ops4j.pax.web/pax-web-runtime/7.2.10 (org.osgi.framework.BundleException: Activator start error in bundle org.ops4j.pax.web.pax-web-runtime [190].)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - org.osgi.framework.BundleException: Activator start error in bundle org.ops4j.pax.web.pax-web-runtime [190].
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.activateBundle(Felix.java:2290)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.startBundle(Felix.java:2146)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.setActiveStartLevel(Felix.java:1373)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at java.lang.Thread.run(Thread.java:748)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - Caused by: java.lang.NoClassDefFoundError: org/osgi/service/cm/ConfigurationException
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at java.lang.class.getDeclaredConstructors0(Native Method)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at java.lang.class.privateGetDeclaredConstructors(Class.java:2671)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at java.lang.class.getConstructor0(Class.java:3075)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at java.lang.class.newInstance(Class.java:412)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.createBundleActivator(Felix.java:4512)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.activateBundle(Felix.java:2221)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - ... 4 more
[2021-03-04 11:40:49,072] {bash.py:173} INFO - Caused by: java.lang.classNotFoundException: org.osgi.service.cm.ConfigurationException not found by org.ops4j.pax.web.pax-web-runtime [190]
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1639)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.BundleWiringImpl.access$200(BundleWiringImpl.java:80)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at org.apache.Felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:2053)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - at java.lang.classLoader.loadClass(ClassLoader.java:351)
[2021-03-04 11:40:49,072] {bash.py:173} INFO - ... 10 more
[...]
[2021-03-04 11:43:56,982] {taskinstance.py:1396} ERROR - [Errno 1] Operation not permitted
Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/airflow/models/taskinstance.py",line 1086,in _run_raw_task
self._prepare_and_execute_task_with_callbacks(context,task)
File "/usr/local/lib/python3.8/dist-packages/airflow/models/taskinstance.py",line 1260,in _prepare_and_execute_task_with_callbacks
result = self._execute_task(context,task_copy)
File "/usr/local/lib/python3.8/dist-packages/airflow/models/taskinstance.py",line 1300,in _execute_task
result = task_copy.execute(context=context)
File "/usr/local/lib/python3.8/dist-packages/airflow/operators/bash.py",line 171,in execute
for raw_line in iter(self.sub_process.stdout.readline,b''''):
File "/usr/local/lib/python3.8/dist-packages/airflow/models/taskinstance.py",line 1215,in signal_handler
task_copy.on_kill()
File "/usr/local/lib/python3.8/dist-packages/airflow/operators/bash.py",line 187,in on_kill
os.killpg(os.getpgid(self.sub_process.pid),signal.SIGTERM)
PermissionError: [Errno 1] Operation not permitted
在这种情况下,有很多java错误并且我的任务没有运行。但是在很多情况下,尽管出现了错误,我的任务仍能成功运行。在这些情况下,bash 命令和 pentaho 执行之间有大约 5 分钟的延迟。下面是另一个成功执行的日志,bash 命令是 09:38AM 但 pentaho 仅在 09:42 AM 执行:
[2021-03-04 09:38:24,482] {bash.py:158} INFO - Running command: sudo /d/Airflow/pdi-ce-9.1.0.0-324/data-integration/pan.sh -rep:"penta_repo" -user:123 -pass:123 -dir:TEST/ALIMENTADOR -trans:"ALIMENTADOR_1" -level:Basic
[2021-03-04 09:38:24,525] {bash.py:169} INFO - Output:
[2021-03-04 09:38:28,739] {bash.py:173} INFO - 12:38:28,739 INFO [KarafBoot] Checking to see if org.pentaho.clean.karaf.cache is enabled
[2021-03-04 09:38:32,001] {bash.py:173} INFO - 12:38:32,001 INFO [KarafInstance]
[2021-03-04 09:38:32,001] {bash.py:173} INFO - *******************************************************************************
[2021-03-04 09:38:32,001] {bash.py:173} INFO - *** Karaf Instance Number: 68 at /d/Airflow/pdi-ce-9.1.0.0-324/data-integra ***
[2021-03-04 09:38:32,001] {bash.py:173} INFO - *** tion/./system/karaf/caches/pan/data-1 ***
[2021-03-04 09:38:32,001] {bash.py:173} INFO - *** Karaf Port:8869 ***
[2021-03-04 09:38:32,001] {bash.py:173} INFO - *** Osgi Service Port:9118 ***
[2021-03-04 09:38:32,001] {bash.py:173} INFO - *******************************************************************************
[...]
[2021-03-04 09:38:36,773] {bash.py:173} INFO - 2021-03-04 12:38:36.770:INFO::FelixStartLevel: Logging initialized @11384ms to org.eclipse.jetty.util.log.StdErrLog
[2021-03-04 09:38:36,781] {bash.py:173} INFO - Mar 04,2021 12:38:36 PM org.apache.karaf.main.Main$1 log
[2021-03-04 09:38:36,782] {bash.py:173} INFO - SEVERE: Bundle org.ops4j.pax.web.pax-web-runtime [190] Error starting mvn:org.ops4j.pax.web/pax-web-runtime/7.2.10 (org.osgi.framework.BundleException: Activator start error in bundle org.ops4j.pax.web.pax-web-runtime [190].)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - org.osgi.framework.BundleException: Activator start error in bundle org.ops4j.pax.web.pax-web-runtime [190].
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.activateBundle(Felix.java:2290)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.startBundle(Felix.java:2146)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.setActiveStartLevel(Felix.java:1373)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at org.apache.Felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at java.lang.Thread.run(Thread.java:748)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - Caused by: java.lang.NoClassDefFoundError: org/osgi/service/cm/ConfigurationException
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at java.lang.class.getDeclaredConstructors0(Native Method)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at java.lang.class.privateGetDeclaredConstructors(Class.java:2671)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at java.lang.class.getConstructor0(Class.java:3075)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at java.lang.class.newInstance(Class.java:412)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.createBundleActivator(Felix.java:4512)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at org.apache.Felix.framework.Felix.activateBundle(Felix.java:2221)
[2021-03-04 09:38:36,782] {bash.py:173} INFO - ... 4 more
[2021-03-04 09:38:36,782] {bash.py:173} INFO - Caused by: java.lang.classNotFoundException: org.osgi.service.cm.ConfigurationException not found by org.ops4j.pax.web.pax-web-runtime [190]
[2021-03-04 09:38:36,782] {bash.py:173} INFO - at org.apache.Felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1639)
[2021-03-04 09:38:36,783] {bash.py:173} INFO - at org.apache.Felix.framework.BundleWiringImpl.access$200(BundleWiringImpl.java:80)
[2021-03-04 09:38:36,783] {bash.py:173} INFO - at org.apache.Felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:2053)
[2021-03-04 09:38:36,783] {bash.py:173} INFO - at java.lang.classLoader.loadClass(ClassLoader.java:351)
[2021-03-04 09:38:36,783] {bash.py:173} INFO - ... 10 more
[...]
[2021-03-04 09:42:37,209] {bash.py:173} INFO - at org.pentaho.di.osgi.KarafLifecycleListener.waitForFeatures(KarafLifecycleListener.java:204)
[2021-03-04 09:42:37,209] {bash.py:173} INFO - at org.pentaho.di.osgi.KarafLifecycleListener.waitForBundlesstarted(KarafLifecycleListener.java:177)
[2021-03-04 09:42:37,209] {bash.py:173} INFO - at org.pentaho.di.osgi.KarafLifecycleListener.lambda$maybeStartWatchers$0(KarafLifecycleListener.java:160)
[2021-03-04 09:42:37,209] {bash.py:173} INFO - at java.lang.Thread.run(Thread.java:748)
[2021-03-04 09:42:37,209] {bash.py:173} INFO - 12:42:37,208 INFO [DriverManager] Finished installing drivers kars.
[2021-03-04 09:42:37,223] {bash.py:173} INFO - 2021/03/04 12:42:37 - Logging is at level : Basic
[2021-03-04 09:42:37,229] {bash.py:173} INFO - 2021/03/04 12:42:37 - Start of run.
[2021-03-04 09:42:37,243] {bash.py:173} INFO - 2021/03/04 12:42:37 - RepositoriesMeta - Reading repositories XML file: /d/Airflow/pdi-ce-9.1.0.0-324/data-integration/repositories.xml
[2021-03-04 09:42:39,936] {bash.py:173} INFO - 2021/03/04 12:42:39 - ALIMENTADOR_1 - dispatching started for transformation [ALIMENTADOR_1]
[2021-03-04 09:42:40,354] {bash.py:173} INFO - 2021/03/04 12:42:40 - BDN_STAGE_ST5P_ALIMENTADOR.0 - Connected to database [BDN_DCC] (commit=10000)
[2021-03-04 09:42:40,733] {bash.py:173} INFO - 2021/03/04 12:42:40 - OPER_ALIMENTADOR.0 - Finished reading query,closing connection.
[2021-03-04 09:42:40,740] {bash.py:173} INFO - 2021/03/04 12:42:40 - OPER_ALIMENTADOR.0 - Finished processing (I=1630,O=0,R=0,W=1630,U=0,E=0)
[2021-03-04 09:42:40,804] {bash.py:173} INFO - 2021/03/04 12:42:40 - BDN_STAGE_ST5P_ALIMENTADOR.0 - Finished processing (I=0,O=1630,R=1630,812] {bash.py:173} INFO - 2021/03/04 12:42:40 - Finished!
[2021-03-04 09:42:40,812] {bash.py:173} INFO - 2021/03/04 12:42:40 - Start=2021/03/04 12:42:39.933,Stop=2021/03/04 12:42:40.812
[2021-03-04 09:42:40,813] {bash.py:173} INFO - 2021/03/04 12:42:40 - Processing ended after 0 seconds.
[2021-03-04 09:42:40,813] {bash.py:173} INFO - 2021/03/04 12:42:40 - ALIMENTADOR_1 -
[2021-03-04 09:42:40,813] {bash.py:173} INFO - 2021/03/04 12:42:40 - ALIMENTADOR_1 - Step OPER_ALIMENTADOR.0 ended successfully,processed 1630 lines. ( - lines/s)
[2021-03-04 09:42:40,813] {bash.py:173} INFO - 2021/03/04 12:42:40 - ALIMENTADOR_1 - Step BDN_STAGE_ST5P_ALIMENTADOR.0 ended successfully,processed 1630 lines. ( - lines/s)
[2021-03-04 09:42:41,403] {bash.py:177} INFO - Command exited with return code 0
[2021-03-04 09:42:41,768] {taskinstance.py:1135} INFO - Marking task as SUCCESS. dag_id=ALIMENTADOR_JOB,task_id=Alimentador,execution_date=20210304T110100,start_date=20210304T123823,end_date=20210304T124241
[2021-03-04 09:42:41,865] {taskinstance.py:1195} INFO - 1 downstream tasks scheduled from follow-on schedule check
[2021-03-04 09:42:41,881] {local_task_job.py:118} INFO - Task exited with return code 0
我的问题是:
- 如何修复这些 Java 错误?
- 这些 java 错误是否与我成功运行时的延迟有关?
非常感谢!
asp.net-web-api – System.Web.Routing.RouteCollection不包含“MapHttpRoute”的定义 – VS 2012,Web API
我已经用Web API创建了一个新的MVC 4应用程序。基于一些示例和教程,我开始配置我的路由:
routes.MapHttpRoute( name: "Controller only",routeTemplate: "api/{controller}" );
但是,这会导致RouteCollection不包含MapHttpRoute的定义的错误。我是否安装了一些DLL?
据我看到,我已经安装了所有正确的DLL和版本。
解决方法
asp.net-web-api – Windows.Web.Http.HttpClient WEB API Windows身份验证
使用(Windows.Web.Http.HttpClient httpClient = new Windows.Web.Http.HttpClient())
{
//添加用户代理标头
var headers = httpClient.DefaultRequestHeaders;
//检查用户标头值的安全方法是TryParseAdd方法
//因为我们知道这个标题是可以的,所以我们使用ParseAdd会抛出异常
//值不好 – http://msdn.microsoft.com/en-us/library/windows/apps/dn440594.aspx
headers.UserAgent.ParseAdd("ie"); headers.UserAgent.ParseAdd("Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)"); using (var response = await httpClient.GetAsync(new Uri(url)))
我没有看到发送默认凭据的方法.
解决方法
Windows.Web.Http.Filters.HttpBaseProtocolFilter filter = new Windows.Web.Http.Filters.HttpBaseProtocolFilter(); filter.AllowUI = false; HttpClient client = new HttpClient(filter); Uri uri = new Uri("http://localhost/?basic=1"); var response = await client.GetAsync(uri); System.Diagnostics.Debug.WriteLine(response);
你需要凭证吗?使用HttpBaseProtocolFilter.ServerCredential.试试这个:
Uri uri = new Uri("http://localhost?ntlm=1"); Windows.Web.Http.Filters.HttpBaseProtocolFilter filter = new Windows.Web.Http.Filters.HttpBaseProtocolFilter(); filter.AllowUI = false; // Set credentials that will be sent to the server. filter.ServerCredential = new Windows.Security.Credentials.PasswordCredential( uri.ToString(),"userName","abracadabra"); HttpClient client = new HttpClient(filter); var response = await client.GetAsync(uri); System.Diagnostics.Debug.WriteLine(response);
您需要默认的Windows凭据(域凭据)吗?只需将Enterprise Authentication功能添加到Package.appxmanifest即可.
关于java web 实现文件夹上传(保留目录结构)和javaweb文件上传路径问题的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于.NET Web 部件 | Web 部件管理器 | Web 部件区、Airflow/Pentaho Java 错误 - 启动 mvn 时出错:org.ops4j.pax.web/pax-web-runtime/7.2.10、asp.net-web-api – System.Web.Routing.RouteCollection不包含“MapHttpRoute”的定义 – VS 2012,Web API、asp.net-web-api – Windows.Web.Http.HttpClient WEB API Windows身份验证等相关内容,可以在本站寻找。
本文标签: