Java EE

提高网站访问性能之Tomcat优化

守給你的承諾、 提交于 2020-08-05 11:39:46
一、前言 tomcat 服务器在JavaEE项目中使用率非常高,所以在生产环境对tomcat的优化也变得非常重要了,对于tomcat的优化,主要是从2个方面入手,一是tomcat本身的配置,另一个是tomcat所运行的Jvm虚拟机的调优 二、Tomcat配置优化 2.1 下载安装tomcat 案例中使用的Tomcat版本是 8.0+ 版本 下载安装: https://tomcat.apache.org/download-80.cgi 2.2 配置修改 cd apache-tomcat-8.5.47/conf/ 进入tomcat配置文件夹 vim tomcat-users.xml 需要配置文件,配置tomcat的管理用户 写入以下内容: <role rolename="manager"/> <role rolename="manager-gui"/> <role rolename="admin"/> <role rolename="admin-gui"/> <user username="tomcat" password="tomcat" roles="admin-gui,admin,manager-gui,manager"/> # 保存退出 # 如果是tomcat7,配置了tomcat用户就可以登录系统了,但是tomcat8中不行,还需要修改下面一个配置文件,否则访问不了

JSP页面导出PDF格式文件

非 Y 不嫁゛ 提交于 2020-08-05 11:04:39
JSP页面导出PDF格式文件基本在前端页面可以全部完成 <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.0.272/jspdf.debug.js"></script> 添加下载链接的点击事件 <script type="text/javascript"> var downPdf = document.getElementById("downLoad"); downPdf.onclick = function() { downPdf.parentNode.removeChild(downPdf); html2canvas(document.body, { onrendered:function(canvas) { var contentWidth = canvas.width; var contentHeight = canvas.height; //一页pdf显示html页面生成的canvas高度; var pageHeight = contentWidth / 592.28 * 841.89; /

如何使用Dynamic Web TWAIN从网络摄像头捕获图像

元气小坏坏 提交于 2020-08-05 09:42:13
如何通过浏览器访问网络摄像头? HTML5 为Web开发人员提供了JavaScript API MediaDevices.getUserMedia()。在本指南中,我们将使用Dynamic Web TWAIN SDK网络摄像头插件构建一个在线网络摄像头演示。 为什么选择Dynamic Web TWAIN网络摄像头附加组件 为什么有免费的选项时考虑付费选项?我们列出了HTML5不提供的网络摄像头附加组件的一些高级功能。 浏览器兼容性 – HTML5与某些较旧的浏览器不兼容,例如Internet Explorer 8。 精确控制网络摄像头 –您可以完全控制摄像机,例如摇摄,倾斜,滚动,变焦,曝光,光圈和自动对焦。 分辨率设置 –使用GetResolution(),SetResolution()API获取和设置分辨率 扫描仪质量的图像 – Dynamsoft提供了多种图像增强技术来帮助用户生成高质量的图像,包括自动边界检测,噪声消除和透视校正。 上载到服务器 – SDK提供了内置方法,供用户将图像上载到服务器端。 如果您要构建一个健壮的,功能齐全的企业级应用程序,那么选择Dynamsoft的SDK这样的商业SDK将会为您带来巨大的投资回报。 关于Dynamic Web TWAIN网络摄像头附加组件 Dynamic Web

Spring葵花宝典

不打扰是莪最后的温柔 提交于 2020-08-05 09:24:14
一 Spring简介 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架 为了解决企业应用开发的复杂性而创建 二 Spring功能 1. 方便解耦 简化开发 Spring就是一个大工厂 专门负责生成Bean 可以将所有对象创建和依赖关系维护交给Spring管理 2. AOP编程的支持 Spring提供面向切面编程 可以方便的实现对程序进行权限拦截 运行监控等功能 3. 声明式事务的支持 只需要通过配置就可以完成对事务的管理 而无需手动编程 4. 方便程序的测试 Spring对Junit4支持 可以通过注解方便的测试Spring程序 5. 方便集成各种优秀框架 Spring不排斥各种优秀的开源框架 其内部提供了对各种优秀框架的支持 6. 降低JavaEE API的使用难度 对JavaEE开发中一些难用的API(JDBC JavaMail WebService等) 都提供了封装 使这些API应用难度大大降低 三 Spring体系结构 四 Spring初体验 1. 新建一个Maven项目 pom.xml <? xml version="1.0" encoding="UTF-8" ?> < project xmlns ="http://maven.apache.org/POM/4.0.0" xmlns:xsi ="http://www.w3.org/2001

Java程序员的薪资取决于年限还是技术?

大憨熊 提交于 2020-08-05 09:23:16
  1、拿多少钱跟有多少经验有关系,但经验的多少跟年限没有必然关系   你工作以后一直在别人设置好的框架体系里搬砖,即便干了5年还不是初级程序猿一个   你工作以后,不断摸索,自己研究框架,自己在搬砖的同时还应用设计模式,有机会还自己玩架构,初级的如SSH,高级一点的,自己也能上手。J2EE、J2SE、J2ME都干过项目。   2、其实,搞技术的,自己几斤几两,自己心里清楚   至于薪水,纯搬砖的,3年经验万把块吧。能自己搭建架构,熟练应用SSH的,20k+。在这基础上,做过牛B项目的,对大数据,高并发都有深入理解的,30k+。后面的,就不说了。   3、我相信3年时间,凭技术拿到30k+已经是极限了   当然,如果你英语好,沟通能力强,写文档很棒都会增加你的薪资水平。我们在看看去到招聘网上看看要求,基本上只要工作一定时间的,基本上能接近这个标准的税前工资。   像阿里这种公司的待遇应该是目前互联网行业公司中待遇排在前列的,需要掌握的技术是NIO、类加载原理、动态代理、CGLIB、GC的原理、JVM内存模型、性能优化手段、了解并发基础变成最优等等技术。   所以年限固然是一部分但是最重要的还是技术,如果有年限但是没技术人家根本不会考虑你,有技术差点年限我认为问题不大。   4、其实互联网这个行业一直都是技术优先   不可能因为你的工作经验多但是技术不行而拿高薪

总结:JMS

廉价感情. 提交于 2020-08-05 09:11:36
一、监听器一般的实现方案 1、主动拉取:即服务端提供拉取数据的方式,如提供HTTP接口,客户端while循环,调用HTTP接口,获取到数据则处理,反之sleep后继续拉取,这种方式缺点是 性能低 ,尤其是需要监听的对象比较多的时候。 2、事件通知(被动等待通知):即客户端注册个监听(其实就是告知服务端,某个节点或队列有变动的时候通知我),服务端发现有数据变更的时候,消息通知对应注册监听的客户端,这种方式的优点是性能高,客户端只有当事件触发的时候执行,几乎不耗费性能;而服务端也不需要被客户端不停的骚扰。 二、 参考: Java消息队列JMS实现原理解析 java监听器实现与原理 来源: oschina 链接: https://my.oschina.net/weiweiblog/blog/4348473

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

Maven项目中pom.xml 文件的scope作用

戏子无情 提交于 2020-08-05 08:33:05
<dependency>中还引入了<scope>,它主要管理依赖的部署。目前<scope>可以使用5个值。 compile:编译范围 compile是默认的范围;如果没有提供一个范围,编译范围依赖在所有的classpath 中可用,同时它们也会被打包。而且这些dependency会传递到依赖的项目中。用于所有阶段,会随着项目一起发布。 provided:已提供范围 provided 说明了dependency 由JDK或者容器提供。例如如果开发了一个 web 应用,可能在编译 classpath 中需要可用的 Servlet API 来编译一个 servlet,但是你不会想要在打包好的 WAR 中包含这个 Servlet API;这 Servlet API JAR 由你的应用服务器或者servlet容器提供。已提供范围的依赖在编译 classpath (不是运行时)可用。它们不是传递性的也不会被打包。 <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.1</version> <scope>provided</scope> </dependency> runtime:运行时范围 runtime 依赖在运行和测试系统的时候需要,但在编译的时候不需要

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 + "/" +

RESTful API 设计规范

不想你离开。 提交于 2020-08-05 07:05:46
目录 文章目录 目录 REST RESTful API RESTful API 设计规范 REST 早古时期,软件和网络是两个不同的领域,前者围绕着单机环境展开,而后者则研究系统之间的通信。随着互联网的兴起,使得这两个领域开始融合,首当其冲的就是基于 HTTP 协议的 Web 服务,越来越多的人开始意识到,“网站” 即是 “软件”。 其中的先驱者就是 Tim Berners-Lee(万维网的发明者,万维网联盟负责人)和 Roy Thomas Fielding(1996 HTTP/1.0、1999 HTTP/1.1 的主要设计者之一,Apache 基金会的第一任主席,Apache Web Server 和 HTTP 协议是共生共荣的关系)等人。 1989年,Tim Berners-Lee 在论文中提出可以在互联网上构建超链接文档,并提出了三点基本要素: URI(Uniform Resource Identifier) :统一资源标识符,是资源(Resource)在互联网中的唯一标识。 HTML(Hyper Text Markup Language) :超文本标记语言,超文本文档是由 HTML 标签组成的描述性文本,HTML 标签将文字,图形、动画、声音、表格、链接等内容格式进行了统一。 HTTP(Hyper Text Transfer Protocol) :超文本传输协议