Java EE

【转载】java架构师进阶之路

一曲冷凌霜 提交于 2020-11-10 06:42:56
Java架构师,应该算是一些Java程序员们的一个职业目标了吧。很多码农码了五六年的代码也没能成为架构师。那成为Java架构师要掌握哪些技术呢,总体来说呢,有两方面,一个是基础技术,另一个就是组织能力和提出解决方案能力了。 如果你是想成为Java架构师,那么你首先要是一个Java高级工程师。也就是说,基础必须牢固,对Java的了解全面而且深入。熟练使用各种框架,并知道它们实现的原理。 Jvm虚拟机原理、调优操作,懂得jvm能让你写出性能更好的代码;池技术也是要掌握的,对象池、连接池、线程池都要会;Java反射技术,写框架必备的技术;Java各种集合对象的实现原理,了解这些可以让你在解决问题时选择合适的数据结构,高效地解决问题,写出代码;nio,注意"直接内存"的特点,使用场景。 还没完,除了上边那些,你还要熟练使用各种数据结构和算法,数组、哈希、链表、排序树等等都是;熟练使用Linux操作系统,也是必备的;熟悉各种协议,比如tcp协议,创建连接三次握手和断开连接四次握手的整个过程,不了解就没法对高并发网络应用做优化,http协议,session和cookie的生命周期与关联;熟悉系统集群、负载均衡、反向代理、动静分离,网站静态化;懂得分布式存储系统nfs,fastdfs,tfs,Hadoop了解他们的优缺点,适用场景,以及分布式缓存技术memcached,redis

CSP201412-2:Z字形扫描

孤人 提交于 2020-11-10 06:27:34
引言: CSP (http://www.cspro.org/lead/application/ccf/login.jsp) 是由 中国计算机学会( CCF )发起的"计算机职业资格认证"考试,针对计算机软件开发、软件测试、信息管理等领域的专业人士进行能力认证。认证对象是从事或将要从事 IT 领域专业技术与技术管理人员,以及高校招考研究生的复试对象。 问题描述   在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。给定一个n×n的矩阵,Z字形扫描的过程如下图所示:   对于下面的4×4的矩阵,   1 5 3 9   3 7 5 6   9 4 6 4   7 3 1 3   对其进行Z字形扫描后得到长度为16的序列:   1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3   请实现一个Z字形扫描的程序,给定一个n×n的矩阵,输出对这个矩阵进行Z字形扫描的结果。 输入格式   输入的第一行包含一个整数n,表示矩阵的大小。   输入的第二行到第n+1行每行包含n个正整数,由空格分隔,表示给定的矩阵。 输出格式   输出一行,包含n×n个整数,由空格分隔,表示输入的矩阵经过Z字形扫描后的结果。 样例输入 4 1 5 3 9 3 7 5 6 9 4 6 4 7 3 1 3 样例输出 1 5 3 9 7 3 9 5 4 7 3 6 6 4 1

jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常

情到浓时终转凉″ 提交于 2020-11-10 05:33:31
jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常 参考文章: (1)jpa遇到的 org.hibernate.PersistentObjectException: detached entity passed to persist异常 (2)https://www.cnblogs.com/li1010425/p/6180684.html 备忘一下。 来源: oschina 链接: https://my.oschina.net/stackoom/blog/4696221

web基础随笔

做~自己de王妃 提交于 2020-11-10 05:17:20
一、用自己的语言描述get、post、Accept、Referer、User-Agent、host、cookie、X_Forwarded_for、Location各请求头的含义 1. GET http请求方法,从浏览器获取一个资源 2. POST 提交数据、账号密码等,加密传输 3. Accept 支持的语言程序、接收的文件类型等等.... 4. Referer 起过渡作用,从一个页面转到另一个页面 5. User-Agent 显示浏览器的指纹信息 6. host 主机 7. cookie 记录并保存你去过哪些地方,可以用于分析用户的喜好推荐广告 8. X_Forwarded_for 识别http代理、负载均衡方式连接到web服务器的客户端ip地址(可修改ip地址), 9. Location 用于重定向响应中的重定向目标 二、常用 http 支持的方法有那些,同时对Head、options、put、get、post用自己的语言进行描述 1. Head 检查服务器上的资源,判断页面服务是否存在 2. options 判断并显示浏览器所支持的方法 3. put 向服务器上传资源,开启这个服务容易被攻击 4. get 向浏览器获取数据 5. post 向浏览器提交数据,加密传输 三、cookie头里面的secure与HttpOnly项分别代表什么含义 1. secure

SpringBoot整合Druid

生来就可爱ヽ(ⅴ<●) 提交于 2020-11-10 05:16:06
Druid简介 Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。 Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。 Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生就是针对监控而生的 DB 连接池。 Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。 Spring Boot 2.0 以上默认使用 Hikari 数据源,可以说 Hikari 与 Driud 都是当前 Java Web 上最优秀的数据源,我们来重点介绍 Spring Boot 如何集成 Druid 数据源,如何实现数据库监控。 Github地址: https://github.com/alibaba/druid/ 配置数据源 1.添加Druid数据源依赖 <!-- https://mvnrepository.com/artifact/com.alibaba/druid --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.21</version> </dependency> 2、切换数据源;之前已经说过 Spring

怎么设计基于SSM框架的管理系统

我怕爱的太早我们不能终老 提交于 2020-11-10 00:40:57
一,关于我们 我们有一个专业制作团队和严格的保密制度。我们的工程师在软件工程开发和设计的所有领域积累了丰富的经验,以确保服务水平。为他们提供毕业设计,并为每位学生提供有义务的责任。 联·系·我们:.扣.扣.号(幺零三贰三七幺贰幺) 与我们取得联系,向我们提出您的写作要求;我们咨询师会根据您的服务需求和您进行“服务内容、服务要求、服务时间、其他要求”等方面的沟通。 做出来的成品设计完全基于原创,绝非市场上其他的玳做同行们的修改模板的劣质产品。 二,服务流程 在商议确定定制要求条件之后即刻开工,我们不会预先收取您任何定金,等您交代完定做内容之后,我们成品出炉先验收,先满意后付款,全国仅此一家!!! 在玳做设计的选择上请同学们务必慎重考虑,选择我们可以一次性低风险地通过答辩,在玳做的选择上请务必慎重考虑,因为负责答辩的老师们都是经验丰富身经百战的,一些模板套用的作品在他们眼里很容易被看穿,而选择我们这种原创的定做服务则没有这个风险。 三,服务项目 1、JAVA设计: 进销存管理系统、企业内部通信系统、企业人事管理系统、酒店管理系统、图书馆管理系统、企业快信、电子商城、医药管理系统、企业门户网站、BBS系统 2、微信小程序毕业设计、微信公众号毕业论文 3、jsp,j2ee,ssh设计:基于J2EE管理系统,基于ssh管理系统,JAVA系统,论坛网站。 4、JAVA设计,设计帮写。 5

Controller和@RestController的区别?

安稳与你 提交于 2020-11-09 20:30:28
注意 @RestController注解相当于@ResponseBody + @Controller合在一起的作用。 1) 如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。 2) 如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。 如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。 例如: 1.使用@Controller 注解,在对应的方法上,视图解析器可以解析return 的jsp,html页面,并且跳转到相应页面 若返回json等内容到页面,则需要加@ResponseBody注解 @CrossOrigin @Controller public class FileUploadController { // 跳转到上传文件的页面 @RequestMapping(value= " /gouploadimg " , method = RequestMethod.GET) public String goUploadImg() {

JPA 复杂查询处理

。_饼干妹妹 提交于 2020-11-09 17:14:39
JPA 复杂查询处理 Spring Data JPA使用原生SQL做复杂查询,结果封装到自定义实体 JPA -> Specification 封装通用方法,解决代码繁琐的烦恼 spring data jpa specification的封装 SpringDataJpa中的复杂查询和动态查询,多表查询 来源: oschina 链接: https://my.oschina.net/wallenheng/blog/4710064

80%Java开发者面试都问的SpringBoot你竟不会?看完这些笔记足以

♀尐吖头ヾ 提交于 2020-11-09 13:19:13
前言 做 Java 开发,没有人敢小觑 Spring Boot 的重要性,现在出去面试,无论多小的公司 or 项目,都要跟你扯一扯 Spring Boot,扯一扯微服务,如果啃不下来,很可能就与大厂失之交臂。 精通Spring Boot的原理实现的话,可以帮助你更好地职业进阶,学习前辈 优秀的架构设计思想,总结出最优使用方案 ,绕过工作中遇到的很多坑。 一个框架的源码也是最大的知识库, 源码是一层一层嵌套的 ,光靠文字说明会比较难以理解,最好是在IDE环境下跟着一步一步跟着点下去。 如果要学习源码,最合适的就是SpringBoot,理由如下: 热门 你和他们相处的时间甚至比和你女朋友相处的时间要长 主流程复杂度不大 猜透这个框架的原理和设计思路比猜对女孩子的心思简直简单太多了! 面试要问 像SpringBoot这样做了大量自动配置的"犹抱琵琶半遮面"的设计面试总是一上来就要把原理扒个精光。 面试常问的50道Spring Boot面试解析 SpringBoot基础22问 SpringBoot大厂高频35问 为了不影响阅读,已经整理成文档解析如果需要获取的华,可以添加一下小助理微信: 你是否也有过这样的困惑? 我们都知道Spring Boot是零配置的,但是它是怎么做到的呢?我们都用过Spring MVC,但是Spring Boot和Spring MVC的关系到底是什么呢?

字节跳动大神亲自总结SpringBoot手册,让你可以在简历上写精通SpringBoot!

让人想犯罪 __ 提交于 2020-11-09 12:46:03
Spring相信大家都用过,那一堆的配置,用起来就好比:你要吃饭,饭是熟的,但是你还要自己(配置)加油盐酱醋,还得搅拌均匀,然后才能吃...... 但是无奈,你的简历上还是得写“精通Spring Boot”。。。那总得大体说得上SpringBoot是个啥东西吧! 学习会了Spring Boot之后,你总得还有一个举一反三的效果,哎说了这么多,不就是为了简历上那一句:精通Spring Boot吗? 总结了两份SpringBoot的学习PDF,免费分享出来,希望大家可以在自己的简历上加上这句“精通Spring Boot”!加油 奥利给! SpringBoot精髓 这份PDF系统介绍了Spring Boot2的主要技术,侧重于两个方面,一方面是极速开发一个Web应用系统,详细介绍Spring Boot框架、Spring MVC、视图技术、数据库访问技术,并且介绍多环境部署、自动装配、单元测试等高级特性。 另一方面, 当系统模块增加,性能和吞吐量要求增加时,如何平滑地用Spring Boot实现分布式架构,也会在后半部分介绍,包括使用Spring实现RESTful架构,在Spring Boot框架下使用Redis、MongoDB、 ZooKeeper、 Elasticsearch 等流行技术,使用Spring Session 实现系统水平扩展,使用Spring Cache提高系统性能。