Java EE

看完这篇Bean的作用域与生命周期,问到面试官不敢问--乐字节java

久未见 提交于 2020-08-16 03:27:00
Bean的作用域与生命周期 Bean的作用域 ​ 默认情况下,我们从Spring容器中拿到的对象均是 单例 的,对于bean的作用域类型如下: singleton 作用域 ​ 注意: lazy-init是懒加载, 如果等于true时作用是指Spring容器启动的时候不会去实例化这个bean, 而是在程序调用时才去实例化. 默认是false即Spring容器启动时实例化. ​ 默认情况下,被管理的bean只会IOC容器中存在一个实例,对于所有获取该Bean的操作Spring容器将只返回同一个Bean。 ​ 容器在启动的情况下就实例化所有singleton 的 bean对象,并缓存与容器中 lazy-init属性(懒加载) 如果为false,则在IOC容器启动时会实例化bean对象,默认false ​ 如果为true,则IOC容器启动时不会实例化Bean对象,在使用bean对象时才会实例化 lazy-init设置为false有什么好处? ​ 1)可以提前发现潜在的配置问题 ​ 2)Bean 对象存在于缓存中,使用时不用再去实例化bean,加快程序运行效率 什么对象适合作为单例对象? ​ 一般来说对于无状态或状态不可改变的对象适合使用单例模式。(不存在会改变对象状态的成员变量) ​ 比如:controller层、service层、dao层 什么是无状态或状态不可改变的对象? ​

【精编重制版】JavaWeb 入门级项目实战 -- 文章发布系统 (第一节)

喜夏-厌秋 提交于 2020-08-16 03:21:37
说明 本教程是,原文章发布系统教程的精编重置版,会包含每一节的源码,以及修正之前的一些错误。因为之前的教程只做到了评论模块,很多地方还不完美,因此重制版会修复之前的一些谬误和阐述不清的地方,而且,后期我会考虑完成该项目的后台管理。希望本教程提供的内容,可以成为JavaWeb初学者一套较为完整的练手项目。 序 最近琢磨着要写点东西,把基本的Java Web开发流程完整地走一遍,最后决定,干脆就写一个小小的项目实战吧。这个小项目作为一个JavaWeb的入门例子,从前台页面到项目发布,把整个流程走通。所谓 麻雀虽小,五脏俱全 。难度不是很高,正好可以作为入门使用。 接下来就是做什么的问题了,首先不能太简单,那样的话就没意思了。也不能太复杂,因为我的确也没那么多时间,思前想后,我打算写一个小型的文章发布系统。 老实说,我也不知道最终会做成什么样子,但是基本的CRUD肯定少不了的。前台页面的话,我会尽可能做得好看一点,毕竟我也不是专门做前端的。 至于知识点,当然是尽可能丰富,把我用过的,并且理解的东西,一步一步地集成进去。 嗯,这个系列一旦开始,以后基本上就围绕着这个小项目写文了。我的意思是,其他文章都不更了,在这个小项目写完之前,我会把其他的文章都放下,全心全意地编写这个系列。 终于开始了,想想还有点小激动呢。 1. 项目的大致规划 开发工具还是用eclipse,数据库采用mysql

【重磅来袭】SOA架构的域控制器测试解决方案

感情迁移 提交于 2020-08-16 02:01:52
随着汽车以太网技术成为汽车电子架构的中心,诊断、刷新、娱乐、智能驾驶等功能日益增多,在平台上应用基于以太网技术的SOA架构几乎是所有整车厂关注的重点。 Parasoft公司的SOAtest是一款针对通讯协议以及网络服务的专业灰盒级系统测试工具,可应用于域控制器面向服务架构(SOA)的测试。帮助团队简化对汽车关键业务中至关重要的API接口、云、SOA和复合应用程序的复杂测试,实现对域控制器SOA架构的功能、性能、安全等全方面的测试。配合Virtualize和LoadTest组件还可以实现资产虚拟化以及负载测试,帮助团队在软件开发生命周期的多个阶段,预防和检测应用层缺陷。 基于SOA的接口测试 SOAtest的测试自动化功能和对SOA接口支持,能够提升测试的构建速度,可以基于SOME/IP等通讯协议自动从基础部件生成测试,诸如WSDL、WADL、UDDI、WSIL、XML Schema、BPEL、HTTP等,实现对域控制器SOA架构的接口测试。使用Parasoft SOAtest,开发人员可以非常轻松地验证: • 服务定义在语义上是否正确 • 该服务是否有效 • 该服务是否符合互操作性标准 • 服务最近是否有变化 负载/压力测试 LoadTest(SOAtest伴生产品)具有压力测试功能,压力测试的目的是验证在高负荷下系统或服务器的性能和功能。它能够采用多线程和多用户并行测试

浏览器URL编码

独自空忆成欢 提交于 2020-08-16 01:29:07
jsp页面中通过请求另一个页面并通过url传递了带有中文的参数,结果在接收端获取参数时乱码了 经检查乱码现象指出新在IE浏览器中,其他浏览器火狐、chrome等不会有问题 最后的解决方式是: 手动将此中文进行编码:encodeURI(url)即可 先来看看三个url: url1. http://hi.baidu.com/爱宝的妍 url2. http://hi.baidu.com/%E7%88%B1%E5%AE%9D%E7%9A%84%E5%A6%8D (UTF-8 编码) url3. http://hi.baidu.com/%B0%AE%B1%A6%B5%C4%E5%FB (GBK 编码) 这三个url指向同一个网页,而且都能够访问。其实,如果你的浏览器是中文环境下的,IE设置“以UTF8发送URL”,那么在IE里输入url1,服务器端得到的是url2;在firefox里输入url1,服务器端得到的是url3。这是为什么呢?听下文分解(分析部分内容转自http://blog.csdn.net/yzhz/archive/2007/07/03/1676796.aspx)。 一、问题: 编码问题是JAVA初学者在web开发过程中经常会遇到问题,网上也有大量相关的文章介绍,但其中很多文章并没有对URL中使用了中文等非ASCII的字符造成服务器后台程序解析出现乱码的问题作出准确的解释和说明

简历上你敢写精通MySQL吗?

旧城冷巷雨未停 提交于 2020-08-16 01:28:22
作为一名后端开发,MySQL 是工作上最常用的关系型数据库之一。但随着移动互联网的高速发展,集群架构已经成为主流趋势,对于数据库的高并发,高可用等指标的要求也越来越高。应聘者是否具备相应的底层机制和原理的驾驭能力,成为了互联网公司筛选人才的重要考核标准。如果只停留在建库、创表、增删查改等基本操作的水平,迟早会被企业淘汰掉。比如,面试官经常会问到: 如何提高查询语句性能? 如何突破单库性能瓶颈? 如何做到数据库的高并发与高可用? 为了解答 MySQL 体系架构、执行流程、索引优化 等问题,这里给大家推荐一位架构师前辈新录制的分享,特别适合对 MySQL索引调优、事务和锁优化等进阶内容掌握不系统的朋友。 主题: 高级程序员必须会的 MySQL 性能优化原理 价格: 199 元 ( 免费,仅限前 100 名 ) 分享人: 灭霸詹 内容: 1. MySQL架构介绍、存储引擎介绍、日志文件、数据文件介绍 2. MySQL性能分析之慢查询日志介绍和show profile介绍 3. MySQL索引讲解 4. explain查看执行计划 5. 索引失效分析 6. 性能优化手段 …… 分享人灭霸詹,人称詹哥,是前国家电网的技术负责人 & 首席架构师。作为有 12 年 IT 开发经历的架构师,主导了许多大型线上项目的落地, 具备深厚的分布式架构、数据库底层开发功底,是 Java 领域内的资深专家。

SpringBoot集成Redis实现缓存处理(Spring AOP实现)

好久不见. 提交于 2020-08-16 00:26:00
第一章 需求分析 计划在Team的开源项目里加入Redis实现缓存处理,因为业务功能已经实现了一部分,通过写Redis工具类,然后引用,改动量较大,而且不可以实现解耦合,所以想到了Spring框架的AOP(面向切面编程)。 开源项目: https://github.com/u014427391/jeeplatform 欢迎star(收藏) 第二章 SpringBoot简介 Spring框架作为JavaEE框架领域的一款重要的开源框架,在企业应用开发中有着很重要的作用,同时Spring框架及其子框架很多,所以知识量很广。 SpringBoot:一款Spring框架的子框架,也可以叫微框架,是2014年推出的一款使Spring框架开发变得容易的框架。学过Spring框架的都知识,Spring框架难以避免地需要配置不少XMl,而使用SpringBoot框架的话,就可以使用注解开发,极大地简化基于Spring框架的开发。SpringBoot充分利用了JavaConfig的配置模式以及“约定优于配置”的理念,能够极大的简化基于SpringMVC的Web应用和REST服务开发。 第三章 Redis简介 3.1 Redis安装部署(Linux) Redis安装部署的可以参考我的博客(Redis是基于C编写的,所以安装前先安装gcc编译器): http://blog.csdn.net

源码剖析@ApiImplicitParam对@RequestParam的required属性的侵入性

感情迁移 提交于 2020-08-15 23:46:30
问题起源 使用SpringCloud构建项目时,使用Swagger生成相应的接口文档是推荐的选项,Swagger能够提供页面访问,直接在网页上调试后端系统的接口, 非常方便。最近却遇到了一个有点困惑的问题,演示接口示例如下(原有功能接口带有业务实现逻辑,这里简化了接口): /** * @description: 演示类 * @author: Huang Ying **/ @Api(tags = "演示类") @RestController @Slf4j public class DemoController { @ApiOperation(value = "测试接口") @ApiImplicitParams({ @ApiImplicitParam(name = "uid", value = "用户ID", paramType = "query", dataType = "Long") }) @RequestMapping(value = "/api/json/demo", method = RequestMethod.GET) public String auth(@RequestParam(value = "uid") Long uid) { System.out.println(uid); return "the uid: " + uid; } }

Maven+JSP+Servlet+C3P0+Mysql实现的音乐库管理系统

北慕城南 提交于 2020-08-15 21:49:27
项目简介 项目来源于: https://gitee.com/sunnyandgood/OnlineMusic 本系统基于 Maven+JSP+Servlet+C3P0+Mysql 实现的音乐库管理系统。简单实现了充值、购买歌曲、poi数据导入导出、歌曲上传下载、歌曲播放、用户注册登录注销等功能。 难度等级:简单 技术栈 编辑器 IntelliJ IDEA 2020.1.1 (Ultimate Edition) 前端技术 基础:html+css+JavaScript 框架: JQuery + Bootstrap 后端技术 JSP+Servlet 数据库连接池:c3p0 数据库:mysql 5.7.27(个人测试使用) jdk版本:1.8.0_251(个人测试使用) web服务器:maven插件maven-jetty-plugin 6.1.7 项目构建:Maven 3.6.3(个人测试使用) 本地运行 若有疑惑可查看 视频版本 。 1.下载zip直接解压或安装git后执行克隆命令 git clone https://gitee.com/sunnyandgood/OnlineMusic.git 2.使用idea打开项目,配置maven、jdk即可。 3.打开Navicat For Mysql,创建 onlinemusic 数据库,并运行 onlinemusic.sql 。 4.修改

诺禾:在jsp里面如何不写java代码展示数据(EL表达式的使用)

这一生的挚爱 提交于 2020-08-15 21:48:06
EL表达式可以简化jsp中写的java代码 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) EL如果没有获取到值会显示空字符串而不是显示null 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) 在jsp里面如何不写java代码展示数据(EL表达式的使用) <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>el的隐式对象</title> </head> <body> ${pageContext.request}<br> <h4>在jsp页面动态获取虚拟目录</h4> $

90天吃透阿里P8推荐的625页Java编程兵书pdf,直接入职阿里定级P6

做~自己de王妃 提交于 2020-08-15 18:57:51
前言 学开发也要讲究兵法,从开发环境及基本语法知识入手,逐渐学习编程的基本概念,面向对象基础,以及数据库应用程序的开发。 阿里的理念:阿里巴巴团队总结出了团队精神、教学相长、质量、简易、激情、开放、创新、专注、服务与尊重九条价值观。 从此以后,阿里巴巴非常重视价值观建设。 随着时间的推移,阿里巴巴集团在不断变化中总结其价值的精华,最终形成了现在的六大核心理念:客户第一、团队合作、拥抱变化、诚信、激情、敬业。 所以说是,阿里的制度、体系和文化都特别的完善。 那阿里的职级和薪资是什么样的呢?下图来看! 职级 薪资 既然大家都已经了解到了阿里的文化体系、职级和薪资之后,是不是要了解阿里P8大佬推荐的这625页Java编程兵书pdf呢?不要着急,下面就给大家一一介绍!! 首先,先看下目录 其次,介绍主要内容 第一篇 环境准备篇 第1章,初出茅庐:走进Java Java语言已经成为软件开发中最受欢迎的语言之一, 它把软件开发带到了新的高度一面向对象。其最大的优点莫过于一次编写, 到处运行。它能在任何平台上运行,使系统移植、平台迁移变得十分容易,加上自身良好的安全性、多线程性和网络能力,让它在开发语言中备受广大开发人员的青睐。 第2章,拨云见日: Java语言的环境配置 在做编程开发之前,首先要考虑它的开发环境,在环境搭建好之后,我们就可以运行Java程序了