Apache Struts

Action封装:属性驱动

丶灬走出姿态 提交于 2020-08-10 23:35:28
User: package com.example.struts.domain; import java.util.Date; public class User { private String username; private String password; private Date date; private Integer age; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public Date getDate() { return date; } public void setDate(Date date) { this.date = date; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; }

Java大文件分片上传/多线程上传源码

拥有回忆 提交于 2020-08-10 22:38:01
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现。 先说下要求: PC端全平台支持,要求支持Windows,Mac,Linux 支持所有浏览器。 支持文件批量上传 支持文件夹上传,且要求在服务端保留层级结构。文件夹数量要求支持到10W。 支持大文件断点续传,要求刷新浏览器,重启浏览器,重启电脑后仍然能够继续上传。文件大小要求能够支持到50个G。 支持自动加载本地文件,要求能够自动加载指定的本地文件。 支持文件批量下载,要求不要在服务器打包。因为50G的文件在服务器打包时间比较长。 支持文件夹下载,要求不要在服务器打包,下载到本地后要求保留层级结构 文件列表面板支持路径导航,新建文件夹 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用apache的开源工具common-fileupload这个文件上传组件。这个common-fileupload上传组件的jar包可以去apache官网上面下载,也可以在struts的lib文件夹下面找到,struts上传的功能就是基于这个实现的。common-fileupload是依赖于common-io这个包的,所以还需要下载这个包。 一、开发环境搭建

「2020最新」Spring最易学习教程 3— 代理设计模式 Spring AOP 动态代理原理

给你一囗甜甜゛ 提交于 2020-08-08 05:22:59
0 复习 FactoryBean技术(用于创建复杂对象) 复杂对象:底层不能直接通过new构造方法创建,通常需要若干步骤才能创建的对象。比如:Connection、SqlSession 编码 implements FactoryBean 配置 通过bean标签配置 配置文件 import标签 xsd使用规则 拆分jdbc.properties文件 概念总结 IOC和DI Spring整合Struts2 导入依赖:spring-web struts2-spring-plugin web.xml 在tomcat启动应用时,创建Spring工厂 <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> Struts2从Spring工厂中获取Action applicationContext.xml bean标签配置action和service 注意:

开源让软件更加安全了吗?

邮差的信 提交于 2020-08-08 02:38:22
近日,软件和芯片设计公司 Synopsys 发布《 2020年开源安全和风险分析报告 》,指出不安全的开源软件已无处不在。一方面,99%的审计代码库中至少包含一个开源组件,另一方面,经过审核的代码库中有75%包含具有已知安全漏洞的开源组件,老化和废弃的开源组件也无处不在。 3月,安全和许可证合规性管理解决方案提供商 WhiteSource 同样发布了一份《 2019年开源组件安全漏洞现状报告 》。统计显示,2019年公开的开源软件漏洞数量激增至6000多个,增幅达近50%,原因包含开源软件应用的扩大。 两份报告指向同个现象——开源软件的应用已非常广泛,开源和“我们必须只使用专有代码”的想法间的战争已经结束了,取而代之的是对开源软件是否安全的讨论。 关注和应用的增加带来更多安全问题 WhiteSource 在报告中说明,开源软件漏洞数量的上升可以归因于开放源组件的广泛采用,过去几年开源社区的大量增长,以及媒体对最近一些数据泄露事件的报道,(使得人们)对开放源代码安全的关注提高。 正如 Synopsys 公司的报告中所提到的, 开源组件和库是每个行业每个应用程序的基础。 Synopsys 公司的开源安全工具和审计团队——黑鸭审计针对17个行业的1253个代码库进行审计,具体包括企业服务/SaaS,保健,生命科学,金融服务,物联网,电信,计算机硬件等行业,其中99%包含开源组件

Spring学习笔记——概述~bean

北城余情 提交于 2020-08-05 08:55:14
Spring学习笔记——概述~bean 参考:【狂神说Java】Spring5最新完整教程IDEA版通俗易懂 尚硅谷-Spring5框架2020最新版教程 1. Spring概述 百度百科 Spring框架是一个开源的J2EE应用程序框架,是针对bean的生命周期进行管理的轻量级容器。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。 Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。 Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。 官网https://spring.io/ 英文文档https://docs.spring.io/spring/docs/5.2.7.RELEASE/spring-framework-reference/ API文档https://docs.spring.io/spring/docs/5.2.7.RELEASE/javadoc-api/ 组成 Spring Core:核心容器提供 Spring

java http大文件断点续传上传功能

 ̄綄美尐妖づ 提交于 2020-08-05 08:21:19
第一点:Java代码实现文件上传 FormFile file = manform.getFile(); String newfileName = null; String newpathname = null; String fileAddre = "/numUp"; try { InputStream stream = file.getInputStream();// 把文件读入 String filePath = request.getRealPath(fileAddre);//取系统当前路径 File file1 = new File(filePath);//添加了自动创建目录的功能 ((File)file1).mkdir(); newfileName = System.currentTimeMillis() + file.getFileName().substring( file.getFileName().lastIndexOf('.')); ByteArrayOutputStream baos = new ByteArrayOutputStream(); OutputStream bos = new FileOutputStream(filePath + "/" + newfileName); newpathname = filePath + "/" +

java http大文件断点续传上传问题

↘锁芯ラ 提交于 2020-08-05 04:21:58
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现。 先说下要求: PC端全平台支持,要求支持Windows,Mac,Linux 支持所有浏览器。 支持文件批量上传 支持文件夹上传,且要求在服务端保留层级结构。文件夹数量要求支持到10W。 支持大文件断点续传,要求刷新浏览器,重启浏览器,重启电脑后仍然能够继续上传。文件大小要求能够支持到50个G。 支持自动加载本地文件,要求能够自动加载指定的本地文件。 支持文件批量下载,要求不要在服务器打包。因为50G的文件在服务器打包时间比较长。 支持文件夹下载,要求不要在服务器打包,下载到本地后要求保留层级结构 文件列表面板支持路径导航,新建文件夹 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用apache的开源工具common-fileupload这个文件上传组件。这个common-fileupload上传组件的jar包可以去apache官网上面下载,也可以在struts的lib文件夹下面找到,struts上传的功能就是基于这个实现的。common-fileupload是依赖于common-io这个包的,所以还需要下载这个包。 一、开发环境搭建

Struts2实现ajax的两种方式

倖福魔咒の 提交于 2020-08-04 23:44:56
基于Struts2框架下实现Ajax有两种方式,第一种是原声的方式,另外一种是struts2自带的一个插件。 js部分调用方式是一样的: JS代码: 1 function testAjax() { 2 3 var $userNameInput = $("#ajax_username" ); 4 var userName = $userNameInput.val(); 5 6 $.ajax({ 7 url : "originAjax.action" , 8 type : "GET" , 9 data : "ajaxField=" + userName, 10 success : function (data, textStatus) { 11 alert(data); 12 } 13 }); 14 } 第一种原生的实现方式: Action中创建一个方法: private String username; public String getUsername() { return username; } public void setUsername(String username) { this .username = username; } public void checkUserName() throws IOException { HttpServletResponse

一年工作经验跳槽京东Java开发工程师社招经历

不羁的心 提交于 2020-08-04 23:11:52
前期准备: 确定好自己目标后,需要针对目标制定攻坚计划,确保顺利拿下城池。 看一眼面试京东java开发工程师要求 职位描述: 工作职责: 1、独立完成中大型项目的系统分析、设计,并能够完成核心代码的编写,确保技术方案能够按计划要求,高质量的完成; 2、具有一定的技术架构思维,确保设计的技术方案、开发的代码有较高性能、质量保障、扩展性、前瞻性; 3、对技术有较强的钻研及学习精神,能够深入了解开源技术、现有系统技术等相关技术原理,出现问题时能够通过较强的技术手段较好的解决问题; 4、针对新人、普通开发人员进行有效辅导,帮助其快速成长。 任职要求: 1、大型互联网公司3年以上核心架构经验,熟悉互联网快速迭代开发的模式,能化繁为简; 2、常用技术框架如Spring,Ibatis,Netty等有源码级研究者优先; 3、熟悉分布式系统的设计和应用,熟悉分布式、缓存、消息等机制;能对分布式常用技术进行合理应用,解决问题; 4、精通JVM底层原理,熟悉Tomcat运行机制,有源码经验者优先,性能调优掌握多线程及高性能的设计与编码及性能调优;有高并发应用开发经验; 5、有大数据(hadoop,hive,sqoop,hbase,spark,solr)相关经验者优先; 6、学习能力强,适应能力好;具备耐心、细心的品质; 7、对互联网应用开发的最新潮流有关注,喜欢去看及尝试最新的技术,追求编写优雅的代码

推荐 33 个 IDEA 最牛配置,好用到飞起来!

梦想的初衷 提交于 2020-08-04 11:16:46
Python实战社群 Java实战社群 长按识别下方二维码, 按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群 ▲ 作者丨琦彦 blog.csdn.net/fly910905/article/details/77868300 1.设置maven 1.在File->settings->搜索maven 2.Mavan home directory--设置maven安装包的bin文件夹所在的位置 3.User settings file--设置setting文件所在的位置 4.Local repository--设置本地仓库 2.IDEA 设置代码行宽度 1.在File->settings->Editor->Code Style 2.有人会问,如果输入的代码超出宽度界线时,如何让IDE自动将代码换行? 有两种方式! 3.第一种,在上述的“Right margin (columns)”的下方,有“Wrap when typing reaches right margin”选项,选中它,是什么效果呢? 4.随着输入的字符的增加,当代码宽度到达界线时,IDEA会自动将代码换行。 5.第一种方式是在输入代码时触发,还有第二种方式,在File->settings->Code Style->Java中,选中“Wrapping and Braces”选项卡, 6.在