01 前言 Java框架一直以来都是面试必备的知识点,而掌握Java框架,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能对当前正在开发中的系统有整体的认知,从而更好的熟悉和学习技术,这篇文章胖达就打算给大家介绍几款现阶段流行的框架组合,不管是在传统企业开发还是在互联网开发领域,这几种框架应该都是比较常用的. 02 三层架构 说到框架首先需要明确的是,在Web开发领域一般会将架构分为三个部分:表示层.持久层.业务层,之所以将整体架构分为三个层面,主要目的是让整个系统更具有条理性,通过…
地址 引言: 学习一个新的技术时,其实不在于跟着某个教程敲出了几行.几百行代码,这样你最多只能知其然而不知其所以然,进步缓慢且深度有限,最重要的是一开始就对整个学习路线有宏观.简洁的认识,确定大的学习方向,这样才能事半功倍. 我们经常会遇到这样的情况: 一开始学习一门新技术的时候,面对着很多很多陌生的名词,无从下手,一度想要放弃. 本文首先会给出关于java后台开发和前端适配的一些建议学习路线,接着简单解释一些应用到的高频技术,帮助大家理解和学习,算是一个入门篇. Java后台开发知识一览 1.…
Java后端开发常用工具推荐: 俗话说,工欲善其事,必先利其器.不过初学时候不大建议过度依赖IDE等过多工具,这会让自己的编程基础功变得很差,比如各种语法的不熟悉,各种关键字比如synchronized,在IDE中输入sync回车就出来了,这在开发初期是不利于自己成长的.当熟练掌握编码过程的时候,可以通过多种工具来提高自己的开发效率.下面整理了自己常用的一些工具,应该也是外面主流的,用的比较多的,给大家参考一下,具体选择因人而异了~ Intellij IDEA Java开发神器,开发效率高,功能…
1.引言: 学习一个新的技术时,其实不在于跟着某个教程敲出了几行.几百行代码,这样你最多只能知其然而不知其所以然,进步缓慢且深度有限,最重要的是一开始就对整个学习路线有宏观.简洁的认识,确定大的学习方向,这样才能事半功倍. 我们经常会遇到这样的情况: 一开始学习一门新技术的时候,面对着很多很多陌生的名词,无从下手,一度想要放弃. 本文首先会给出关于java后台开发和前端适配的一些建议学习路线,接着简单解释一些应用到的高频技术,帮助大家理解和学习,算是一个入门篇. 2.Java后台开发知识一览 1…
请肆无忌惮地点赞吧,微信搜索[沉默王二]关注这个在九朝古都洛阳苟且偷生的程序员.本文 GitHub github.com/itwanger 已收录,里面还有我精心为你准备的一线大厂面试题. 严格意义上说,所有软件的第三方服务都可以自己开发,不过从零到一是需要时间和金钱成本的.就像我们研发芯片,投入了巨大的成本,但仍然没有取得理想的成绩,有些事情并不是一朝一夕,投机取巧就能完成的. Java 后端开发通常会涉及到很多第三方服务,那么都有哪些成熟的方案可供直接上手使用呢? 1)IaaS IaaS 的…
前言 携程是我面试的第一个互联网公司,投递的岗位是后台开发实习生,总共面了三面,止步于人才库.中间兜兜转转,复杂的心理活动,不足与外人道也.唯有面试的技术部分与大家共享. 宣讲会完了之后有个手写代码的笔试,大致内容: 1已知有一颗二叉排序树,向树里面插入节点,如果该节点已存在(节点值相等),将节点中的count字段加一:如果不存在,将节点插入树中,并将节点的count值置为1.自行设计数据结构,插入算法并且分析算法的复杂度. 题目比较简单,写完交卷.晚上一点左右接到一面面试通知. 一面 例行自我…
一.SpringMVC Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的. 模型(Model )封装了应用程序的数据和一般他们会组成的POJO. 视图(View)是负责呈现模型数据和一般它生成的HTML输出,客户端的浏览器能够解释. 控制器(Contro…
showsetting()表单显示 返回值:无 参数: $setname - 指定输出标题,如:setting_basic_bbname, 自动匹配描述文字为:setting_basic_bbname_comment,comment形式文字可以在./source/language/lang_admincp.php语言包中添加 $varname - 指定表单的name值,如settingnew[bbname] $value - 指定表单默认值\变量 $type - 表单样式 radio单选 tex…
前言 最近学校也催着找工作了,于是刷了一些面试题,学习了几篇大佬优秀的博客,总结了一些自认为重要的知识点:听不少职场前辈说,对于应届毕业生,面试时只要能说到核心重要的点,围绕这个点说一些自己的看法,面试基本上就基本上能过了,实际开发时技术没什么问题就行 这些概念性的东西,谁能全记住,大概差不多就行了嘛,程序员何必为难程序员 下面进入正文,写的不对的地方,欢迎大家指正 Java基础 面向对象:封装.继承.多态 封装:将对象的属性私有化,并提供外界访问的属性和方法 继承:子类拥有父类所有的属性和方法…
作为一名程序猿,好的工具会让你在搬运工的道路上越走越远.以下框架是AC在开发过程中经常会使用到的一些好的框架.列在这里做一个小小的总结,包含但不限于此. 响应式编程 RxJava https://github.com/ReactiveX/RxJava RxAndroid https://github.com/ReactiveX/RxAndroid 消息通信 EventBus 组件间的消息通信 https://github.com/greenrobot/EventBus 注解框架 butterkn…
多数人JavaWeb的入门是学习SSH:struts+spring+hibernate:我在十年前(2006年)学习的,那时火的是struts1.x ,struts2还没诞生.   这三个框架组合,我用了大概有5年时间.现在回想起来,用这三大框架做项目真是痛苦不堪:但那时也没别的选择,一律的MVC框架:相比纯Servlet与JSP已经是有很大的进步   所谓的痛苦主要来源于控制层,视图,及数据查询.在3年前我就不再采用struts与hibernate框架,有很多功能用不上,因为都只是做小项目,数…
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:巴多崽链接:http://www.zhihu.com/question/29663744/answer/45154839来源:知乎 javaEE 是 javaSE 上的一个官方扩展,用于“企业”程序开发(直译其实不是很贴切). 所有的第三方扩展都是为了简化原生的操作. 你先设想这样的一个环节. 如果你要开发一个web项目,但是完全用javaSE. 1.你要自己写一个网络通信库,和netty类似,用来将Socket封装起来.…
一.项目 1.Spring MVC与Struts2的区别: 2.MVC三层是如何工作的?比如:要访问一个Url?a=xx&b=xx,怎么找到相应的资源,怎么运算,怎么返回等? 3.数据库mybatis,如何优化的?加索引. 二.计算机网络 1.Http协议中GET与POST的区别 a) GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连.POST把提交的数据则放置在是HTTP包的包体中. b) GET传递的数据长度有限制,POS…
这里推荐几个常用的idea插件,可以大大提高开发的效率 所使用的idea版本为 2021.2.3 1.Jrebel and Xrebel for IntelliJ Jrebel用于热部署,避免频繁重启项目浪费时间,项目用Jrebel启动即可,快捷键 Ctrl+shift+F9即可,不过插件需要激活,激活方式自行百度 Xrebel可用于分析接口性能.查看一些报文和具体执行的sql语句,对于与开发排查问题效率能大大提高,使用方式也很简单,用xrebel方式启动之后,访问http://ip:端口/xr…
bean类:是一些实体类,包括viewbean,databean等等.action类:可作为接收显示层的数据,连接显示层和业务逻辑实现层的控制层.model类:MVC中model层就是到层.在java中无特殊含义就是模块.util类:工具类dao:数据库操作类.对数据库进行曾删改查等操作 impl 定义的接口(接口的缩写  implement 的缩写-实现层) service 供外部调用,等于对dao,model等进行了包装 model 一般都是javabean对象,例如与数据库的某个表相关联…
一.ssm框架搭建 1.1创建项目 新建项目后规划好各层的包. 1.2导入包 搭建SSM框架所需包百度云链接:http://pan.baidu.com/s/1cvKjL0 1.3整合spring与mybatis 调整spring与mybatis配置文件 1.4创建.编写配置文件: myBatis-config.xml文件 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration…
与微信通信常用工具(xml传输和解析) package com.lownsun.wechatOauth.utl; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.InetAddress; import java.net.MalformedURLException; import…
2021.04.09 直接正文: 开场自我介绍,说一下自己 有没有实习经历?(毕业实习) 毕业实习学了什么?(前端) 有什么大项目吗?(除了课设就是毕设) 能说一下毕设的情况吗?(做了大概,没有开始登录的制作,用了雪花算法) 雪花算法怎么做?(用的老师的代码) 不用雪花算法行不行?(行) 数据库索引,索引的作用能说一下吗?(忘了,记不起来,说的应该不全) 毕设的前端为什么使用vue?(因为方便,组件化好用) 用了哪些api?(用了ant vue组件) 学习有遇到什么问题?(说了使用ArrayLi…
下载java环境安装包 http://www.oracle.com/technetwork/java/javase/overview/index.html 下载eclipse j2ee版本 http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/oxygen1a 下载Tomcat并安装(8.5) https://tomcat.apache.org/download-80.cgi 配置Tomcat https…
1 自我介绍 2 链表和数组区别(数组空间连续,且有下标,查找快,但是增删数据效率不高,链表的空间不连续,查找起来慢,但是对数据的增删效率高,链表可以随意扩大,数组不能) 3 sort方法的实现 (ArrayList的sort方法调用的其实是Arrays里的sort方法,Arrays的sort方法使用DualPivotQuicksort.sort方法翻译过来是双轴快速排序) 4 知道哪些排序(冒泡/插入/选择/快排 / 归并 /堆) 5 给定的空间小于要排序的数据及如何排序(多路归并) 6 sy…
华为: 1.笔试中遇到的问题,如何解决的?(Scanner 如何结束循环读取数据,笔者在面试中因没有理解到Scanner类的hasNext()与hasNextLine()是阻塞方法,导致没有正确退出循环,不清楚的同学要注意了!!!) 2.给一个环,每经过3个剔除一个,如:1,2,3,4,5->1,2,4,5->2,4->4,对于任意给定的一个序列,输出最后剩下的那个值,手写代码(好像剑指offer原题) 3.看你的简历上有redis,说一下为什么不直接在缓存中使用一个buffer,而要使…
java编程思想java并发编程实战深入理解java虚拟机函数式编程思维tcp/ip详解鸟哥的linux私房菜spring mvc +mybatis开发从入门到精通spring技术内幕elasticsearch服务器开发 有坑 直接看文档redis入门指南 (redis开发与运维  设计与实现) 分布式.集群.SOA.RPC.微服务.容器化.Docker 0基础,有人能推荐一下java编程思想的前置书籍/视频吗   java核心技术     今天去读书馆借了一本java 并发编程实战.结果直接看…
起因: 前几天遇到的问题,才有时间记录,需求:本地生成xml形式的字符串以参数形式用post方法传送到对方的固定接口: 这个需求写的时候感觉很容易,本地测试的时候,也觉得很简单就过了,然后和对方联调的时候,稀里哗啦调了N久, 中间对方换了人接手,稀里哗啦又调了N久,对方改代码,稀里哗啦又又调了N久,最后上线了,发现接口对不上,,, 经过: 问题最开始只是乱码问题,无非就是UTF-8和GBK之间的转换,我们这边统一的UTF-8的编码,对方是GBK.对面改为 了UTF-8,联调以正确结束:然后对面换…
内存分析工具valgrind valgrind辅助工具qcachegrind 可视化查看valgrind结果 淘宝DBA团队发布的监控脚本,使用perl开发,可以完成对linux系统和MySql相关指标的实时监控orzdba 取指定进程名的pidpidof 进程名 性能瓶颈查看:perf top -p pid 查看调用栈:pstack pid https://www.percona.com/查询程序执行聚合的GDB堆栈跟踪,先进性堆栈跟踪,然后将跟踪信息汇总:pt-pmp -p pid 格式化e…
一.必备软件 1.Jdk,推荐下载最新版2.Ide,推荐 IntelliJ IDEA3.服务器,如 tomcat / jetty4.数据库终端界面,推荐 Navicat Premium(自行破解),5.终端模拟软件,如 Xshell / secureCRT6.版本控制工具,推荐 git7.项目构建工具,如 maven ( gradle 比较先进,但国内认可度不高)8.Redis 终端界面,推荐 RedisDesktopManager9.文本编辑器,如 editplus / notepad++(取…
目录 一.基本信息查看 1. 表描述 二.表操作 1. 查看建表语句 2.查看表 3. 创建表 4. 更新表 5. 删除表 6. 重命名表 三.索引操作 1. 查看索引 2. 创建索引 3. 修改索引 4. 删除索引 四.记录操作 1. 查询记录 2. 添加记录 3. 更新记录 4. 删除记录 一.基本信息查看 1. 表描述 DESCRIBE `table_name`; 二.表操作 1. 查看建表语句 SHOW CREATE TABLE `table_name`; 2.查看表 SHOW TABL…
内容会不断更新. 初衷是每次看面经肯定都会有一些一时反应不过来的问题,希望集中记录一下便于自己查看. 而答案部分谷歌就很好,当然有些问题可能需要多次谷歌. 对于一些记不住的答案,我也会持续写上一些. 1. String 如何垃圾回收 . String创建对象的方式 分别存储在哪里等等,都是细节问题. 2. KMP算法 3. redis出现故障怎么办 redis集群如何设计 4. 写SQL 一个表行变列 5. 多线程hashmap执行put会发生什么 为什么 仔细说 发生在哪个环节 hashmap…
一.编译阶段         nm                 获取二进制文件包含的符号信息 strings           获取二进制文件包含的字符串常量 strip               去除二进制文件包含的符号 readelf           显示目标文件详细信息 objdump         尽可能反汇编出源代码 addr2line        根据地址查找代码行 二.运行阶段 gdb                强大的调试工具 ldd              …
1. 服务端的Servlet程序修改并保存后,需要重启tomcat服务器才能使其修改有效.重新部署web项目是没有什么卵用的. 2. servers选项卡若是移走了看不到,在window-show view那里添加即可.myeclipse是一款好用不坑的工具. 3. adb进程问题:genymotion是可以设置sdk位置的,而adb进程就在sdk中,最好myeclipse和genymotion的sdk保持同步,免得adb冲突,出现n个adb进程.然而还是报错,则可以重启myeclipse,先试…
2015-1-6: IDEA servlet-api.jar idea从14升级到15后,发现 import javax.servlet.AsyncContext; 找不到,右击工程,open module setting,找到图中的位置,在classPath里添加tomcat的servlet-api.jar即可. 2016-1-12 tomcat允许跨域 参考 : https://tomcat.apache.org/tomcat-7.0-doc/config/filter.html 1. 全局…