Java EE

3.1 DispatcherServlet 初始化-initHandlerMappings/initHandlerAdapters

[亡魂溺海] 提交于 2020-07-27 06:05:33
initHandlerMappings private void initHandlerMappings(ApplicationContext context) { this.handlerMappings = null; if (this.detectAllHandlerMappings) { Map<String, HandlerMapping> matchingBeans = BeanFactoryUtils.beansOfTypeIncludingAncestors(context, HandlerMapping.class, true, false); if (!matchingBeans.isEmpty()) { this.handlerMappings = new ArrayList(matchingBeans.values()); AnnotationAwareOrderComparator.sort(this.handlerMappings); } } else { try { HandlerMapping hm = (HandlerMapping)context.getBean("handlerMapping", HandlerMapping.class); this.handlerMappings = Collections.singletonList(hm)

Jboss 遇到的问题 :org.jboss.tools.vpe.xulrunner.XulRunnerBundleNotFoundException: Bundle org.mozilla.x...

我怕爱的太早我们不能终老 提交于 2020-07-27 05:57:40
解决办法: https://tunatore.wordpress.com/2015/06/15/org-jboss-tools-vpe-xulrunner-xulrunnerbundlenotfoundexception-bundle-org-mozilla-xulrunner-win32-win32-x86_64-is-not-found/ 二、Eclipse中jsp异常 The superclass "javax.servlet.http.HttpServlet" was not found on the Java Bu 问题描述: 学习ssh商城的时候,将资料中给的静态文件引入jsp文件夹,但是每个文件都有一个大红×,,然后在jsp文件里面出现了The superclass"javax.servlet.http.HttpServlet" was not found on the Java Build Path错误异常 原因分析: 在Javaweb工程下没有引入中间件(服务器Tomcat)运行的library 解决办法: (1)确认eclipse中server的运行环境是否有配置,设置方法为:Window-->Preferences-->Server-->RuntimeEnvironments-->Add-->选择Apache的版本后点Next,再填入安装的Apache

基于Javaweb的订餐管理系统的介绍和分析

一世执手 提交于 2020-07-27 05:53:44
项目介绍 用了大概八九天左右时间由一个简单的前端逐步把后端功能完善(上午听下午自己写,严格上还不能说前端后端,jsp还不能实现前后端分离开发),然后又用了一天完成前端界面优化,因为所有的功能都是自己写的底层(包括分页,多个输入框级联查询),没有使用老师的工具类,所以代码耦合性太差,读者可自行阅读工具类jdbctool进行修改(手动狗头),整个系统前前后后十天左右,基本的功能都可以实现,当然离上线的要求还有很远的距离,但是也够web初学者提升用的了。先来展示一下 简单的介绍了一下这个订单管理系统,如果想了解更多功能或者需要源码学习的小伙伴可以下载一波嘻嘻 订餐管理系统 下面贴出一些实现后端过程中遇到的一些经典的问题可能也是以后会遇到的 关于doGet和doPost 区别: form运行方式 当form框里面的method为get时,执行doGet方法 当form框里面的method为post时,执行doPost方法 生成方式 get方式有四种:1)直接在URL地址栏中输入URL。2)网页中的超链接。3)form中method为get。4)form中method为空时,默认是get提交。 post只知道有一种:form中method属性为post。 数据传送方式 get方式:表单数据存放在URL地址后面。所有get方式提交时HTTP中没有消息体。 post方式

过来人告诉你,去工作前最好还是学学Git

孤街浪徒 提交于 2020-07-27 05:27:44
前言 只有光头才能变强。 文本已收录至我的GitHub精选文章,欢迎Star : https://github.com/ZhongFuCheng3y/3y 之前遇到过很多同学私信问我:「三歪,我马上要实习了,我要在实习前学些什么做准备啊?」 三歪在实习之前也同样问过自己当时的部门老大。 如果再给我一次机会,我会先去花点时间去学学 Git 。 Git我相信大家对它应该不陌生吧?但凡用过GitHub的同学应该多多少少都会了解一下Git 不知道当时大家学Git的时候是看哪个教程的,我看的是廖雪峰老师的Git系列的。 (别看到廖雪峰就以为是广告了啊,哈哈哈哈,这篇纯原创分享) 分享一下三歪的经历 刚实习的时候,一直都忙着看各种东西。有一天,我学长说:我看你也学了一些基础了,我们来看看公司的代码吧,看看我们生产环境是怎么做的。 于是我学长丢了一个Git链接给三歪 https://github.com/ZhongFuCheng3y/3y.git 那三歪做了什么?三歪去IDEA下把这个Git给Clone下来: 我用Clone完了以后,我学长又补了一句:这个项目不是用master分支的哦,你切换一下 分支 。 三歪:啥?切换分支?咋整?我忘了。 我学长看了下我,貌似不咋会切换分支,就说:“我来吧”。 于是在命令行终端一顿操作后,对三歪说:“好了” 三歪:“我对Git不是很熟悉

微服务-各种架构比较

本秂侑毒 提交于 2020-07-27 04:47:21
单体架构就是将所有功能都部署在一个web容器中运行的系统就叫做单体架构,一个实例中集成了一个系统的所有功能,通过负载均衡软件/设备实现多实例调用。 单体架构在初创公司、中小型系统、产品试错等场景下开发的周期快、对开发人员的技能要求低而任然被广泛地采用。 优点: 1.易于开发 - 当前开发工具和IDE的目标是支持单片应用程序的开发 2.易于部署 - 只需在适当的运行时上部署WAR文件(或目录层次结构) 3.易于扩展 - 可以通过在负载均衡器后面运行应用程序的多个副本来扩展应用程序 缺点: 复杂性高 项目包含的模块非常多,模块的边界模糊,依赖关系不清晰,代码质量参差不齐,整个项目非常复杂。 部署频率低 随着代码的增多,构建和部署的时间也会增加。而在单体应用中,每次功能的变更或缺陷的修复都会导致我们需要重新部署整个应用。全量部署的方式耗时长、影响的范围大、风险高,这使得单体应用项目上线部署的频率较低。而部署频率低又导致两次发布之间会有大量的功能变更和缺陷修复,出错概率比较高。 扩展能力受限 单体应用只能作为一个整体进行扩展,无法结合业务模块的特点进行伸缩。例如,应用中有的模块是计算密集型的,它需要强劲的CPU;有的模块则是IO密集型的,需要更大的内存。由于这些模块部署在一起,我们不得不在硬件的选择上做出妥协。 开发效率低 每个成员都需要有完整的环境依赖,开发环境的搭建成本高

Session的基础知识

北战南征 提交于 2020-07-27 04:27:47
什么是Session: session是一种服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中 快速入门 创建一个session数据 获取Session数据 开始测试 打开浏览器,先访问sessionDemo1,用于创建session数据,然后再访问sessionDemo2,将在控制台输出如下 此时,若关闭当前浏览器,再重新访问sessionDemo2,控制台将输出为null,这是因为Session默认的生命周期,仅在一次会话中,关闭浏览器相当于是结束了一次会话,所以输出为null Session的原理 Session的实现是依赖于Cookie的。 具体过程如下 浏览器首次访问SessionDemo1时,发现cookie中,并没有SESSION这个字段,于是服务器就创建了一个session对象,并用一个id对应这个session对象,然后,将该id设置到cookie中,然后传给浏览器,如下 当浏览器再次访问sessionDemo2时,会将上次的JESSIONID的值传给服务器,服务器就可以根据这个值,获取上一次创建的Session对象,这就保证了,在一次会话中,服务器获取的是同一个sessiono数据 Session的细节 1. 当客户端关闭后,服务器不关闭,两次获取session是否为同一个? * 默认情况下。不是。 * 如果需要相同

SpringMVC概述

旧街凉风 提交于 2020-07-27 04:12:19
SpringMVC框架的核心内容 1.SpringMVC 概述 2.SpringMVC 的 HelloWorld 3.使用 @RequestMapping 映射请求 4.映射请求参数 & 请求头 5.处理模型数据 6.视图和视图解析器 7.RESTful CRUD 8.SpringMVC 表单标签 &处理静态资源 9.数据转换 & 数据格式化 & 数据校验 10.处理 JSON:使用 HttpMessageConverter 11.国际化 12.文件的上传 13.使用拦截器 14.异常处理 15.SpringMVC 运行流程 16.在 Spring 的环境下使用 SpringMVC 17.SpringMVC 对比 Struts2 SpringMVC 概述 1. SpringMVC 概述 ① Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的 MVC 框架之一。 ② Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架。 ③ Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。 ④ 支持 REST 风格的 URL 请求。 ⑤ 采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性。 2. 是什么 ① 一种轻量级的、基于MVC的Web层应用框架

Tomcat服务器

不想你离开。 提交于 2020-07-27 03:53:33
Tomcat服务器 什么是Tomcat ​ Tomcat 是一个符合 JavaEE WEB 标准的最小的 WEB 容器 ,所有的 JSP 程序一定要有 WEB 容器的支持才能运行,而且在给定的 WEB 容器里面都会支持事务处理操作。 ​ Tomcat 是由 Apache 提供的(www.apache.org)提供的可以用安装版和解压版,安装版可以在服务中出现一个 Tomcat 的服务,免安装没有,开发中使用免安装版。 Tomcat 简单的说就是一个运行 Java 的网络服务器, 底层是 Socket 的一个程序 ,它也是 JSP 和 Servlet 的一个容器。 Tomcat 是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache、Sun和其他一些公司及个人共同开发而成。 ​ 由于有了 Sun 的参与和支持,最新的 Servlet 和 JSP 规范总是能在 Tomcat 中得到体现。因为 Tomcat 技术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的 Web 应用服务器 。 ​ Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器, 在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试

超详细Maven技术应用指南

做~自己de王妃 提交于 2020-07-27 02:58:09
该文章, GitHub 已收录,欢迎老板们前来Star! GitHub地址: https://github.com/Ziphtracks/JavaLearningmanual 搜索关注微信公众号“码出Offer”,送你学习福利资源! 一、前言 在我们的项目资源中,你会发现需要导入的jar包越来越多,让jar包的管理越来越沉重。它会表现为以下几个缺点: 每个项目都需要手动搜集和导入所需要的jar包 项目中用到的jar包有版本更新,我们需要重新搜集并导入到项目中 相同的jar包导入到不同的项目中,jar包会在本地存储多份 针对上述问题,我们就需要使用统一的管理工具:Maven 二、了解Maven 2.1 什么是Maven Maven是一个基于项目对象模型(POM)的概念的纯Java开发的开源的项目管理工具。主要用来管理Java项目,进行依赖管理(jar包依赖管理)和项目构建(项目编译、打包、测试、部署)。此外还能分模块开发,提高开发效率。 2.2 Maven的下载安装 关于Maven的下载,我们需要下载它的解压包。 Maven下载地址: https://us.mirrors.quenda.co/apache/maven/maven-3/3.6.3/binaries/ image-20200616171323409 下载后将Maven解压到目录中就可以了! 注意:

javascript WebUploader 分片上传

孤者浪人 提交于 2020-07-27 02:00:52
1,项目调研 因为需要研究下断点上传的问题。找了很久终于找到一个比较好的项目。 在GoogleCode上面,代码弄下来超级不方便,还是配置hosts才好,把代码重新上传到了github上面。 https://github.com/freewebsys/java-large-file-uploader-demo 效果: 上传中,显示进度,时间,百分比。 点击【Pause】暂停,点击【Resume】继续。 2,代码分析 原始项目: https://code.google.com/p/java-large-file-uploader/ 这个项目最后更新的时间是 2012 年,项目进行了封装使用最简单的方法实现了http的断点上传。 因为html5 里面有读取文件分割文件的类库,所以才可以支持断点上传,所以这个只能在html5 支持的浏览器上面展示。 同时,在js 和 java 同时使用 cr32 进行文件块的校验,保证数据上传正确。 代码在使用了最新的servlet 3.0 的api,使用了异步执行,监听等方法。 上传类UploadServlet @Component("javaLargeFileUploaderServlet") @WebServlet(name = "javaLargeFileUploaderServlet", urlPatterns = { "