开源项目几点心得,Java架构必会几大技术点
Java架构必会几大技术点
关于学习架构,必须会的几点技术
1. java反射技术
2. xml文件处理
3. properties属性文件处理
4. 线程安全机制
5. annocation注解
6. 设计模式
7. 代理机制(aop)
8. serlvet基础(过滤器等等)
几样比较实用的技术:
1. 模板语言freemarker
2. ognl
3. gson json工具类
大家对于几大框架望而生畏,实际上只要明白他的原理,就会触类旁通,在这里我说说自己的几点拙见!
MVC层(Struts,Springmvc):
非常简单就是采用一个servlet实现统一跳转,配置文件保存了请求、处理类、转发请求的关系(通过xml文件或者注解)
操作流程:页面触发请求,框架通过读取配置文件获取到处理类,然后通过反射实例化该类,进行对应的业务处理
(现在流行的零配置,更是简化了mvc层的编写)
持久层(Mybatis/Hibernate):
mybatis其实就是sql+mybatis逻辑标签
逻辑标签的理解如何大家用过模板语言freemarer或者velocity应该会很容易理解,就是自定义的规则标签
Hibernate略显高级,也很简单,他是采用注解或者配置的方式将实体字段和表字段进行一个配置,在启动的时候动态生成sql
大家可以看下开源项目minidao,就会知道持久层原来写很简单;
所以架构可以简单理解为:
配置+反射+设计模式+脚本+AOP
配置常用做法:
1.xml文件
2.annocation注解
3.properties属性文件
4.零配置思想
脚本处理方法:
可以自己写,也可以采用模板语言freemarker等等
架构技术QQ交流群: 39596137
开源项目几点心得,Java架构必会几大技术点相关推荐
- java 学习写架构必会几大技术点
java 学习写架构必会几大技术点 关于学习架构,必须会的几点技术 1. java反射技术 2. xml文件处理 3. properties属性文件处理 4. 线程安全机制 5. annoc ...
- 关于IT8951 Tinydrm Driver开源项目学习的心得
关于IT8951 Tinydrm Driver开源项目学习的心得 项目名称: julbouln/tinydrm_it8951 项目链接:https://github.com/julbouln/tiny ...
- java开源项目及spring微服务架构
开源项目地址:weiit - NO.1的数字化零售SaaS开源方案商(Java企业级开源SaaS服务商) 1.1 软件架构演进 软件架构的发展经历了从单体结构.垂直架构.SOA 架构到微服务架构的过程 ...
- Java架构直通车——锁分段技术:微信如何扛住 10 亿用户同时修改微信号?
文章目录 引入 从HashMap到ConcurrentHashMap的转变:理解锁分段技术 HashMap的死循环 ConcurrentHashMap的实现方式---锁桶(或段) Concurrent ...
- 改开源项目的一些心得
刚刚完成了一个改开源代码的项目,改的代码并不多,但要知道在哪里改,并且不影响其他功能的时间,要远远超过改代码的时间. 总结了一下这个项目的工作顺序. 1. 尝试直接编译源代码,纠正各种编译出现的错误. ...
- 【开源项目12】Retrofit – Java(Android) 的REST 接口封装类库
Retrofit官网:http://square.github.io/retrofit/ Retrofit 和Java领域的ORM概念类似, ORM把结构化数据转换为Java对象,而Retrofi ...
- 开源项目kcws代码分析--基于深度学习的分词技术
http://blog.csdn.net/pirage/article/details/53424544 分词原理 本小节内容参考待字闺中的两篇博文: 97.5%准确率的深度学习中文分词(字嵌入+Bi ...
- java架构师应该懂得技术
- 我要带徒弟学写JAVA架构,引路架构师之路(Jeecg开源社区)
带徒弟学JAVA架构(Jeecg社区) Java程序员如何打破工作2,3年的瓶颈问题,如何更上一层楼? 太多的巧合,让我接触到了开源,通过JEECG与很多朋友交流后,让我有了帮助别 ...
最新文章
- 如何找到SAP ECC事务码升级到S4HANA后对应的新事务码
- 去哪儿-17-detail-header
- 抢占自动驾驶「制高点」,传统Tier1巨头「砸钱入场」
- idea的下载与安装破解
- macbook历代_你都见过吗?苹果Mac历代台式机回忆录
- 造成增长停滞的各种原因
- IP地址 A\B\C类
- 移动云迁移工具:物理服务器迁移到移动云
- 安庆集团-冲刺日志(第五天)
- Android5更新包,Android 5.x OTA Update官方文档(四、OTA更新包解读)
- 除了高额房贷,美国购房者仍面临其他“财政危机”
- 【面试问题】进程和线程的区别——通俗易懂
- 实现响应式布局有几种方法
- 【数据结构和算法】图论—克鲁斯卡尔(Kruskal)算法详解
- 信息系统项目管理师自学笔记(一)——信息的定义与信息系统
- 我与梅西粉丝们的世界杯观球日常
- PPTV的Zabbix监控体系
- [032] 微信公众帐号开发教程第8篇-文本消息中使用网页超链接
- cpp-指针和引用的区别
- 肯特纳交易系统_像肯特·贝克一样编程
热门文章
- mybatis是什么_深入解析:Mybatis接口没有实现类为什么可以执行增删改查?
- mysql 1033 frm_MySQL ERROR 1033 (HY000): Incorrect information in file. 处理一例
- cookie跨域_跨域问题的复现与整理
- 数据结构之排序算法:基数排序
- (王道408考研数据结构)第二章线性表-第二节2:顺序表的操作
- 27. 二叉树的镜像
- Shell整数型变量自增自减的实现方式(+1,-1,++,--)
- 获取浏览器书签、浏览器文件夹数据
- Python traceback模块的使用(抛异常、报错、输出错误)
- C/C++vsnprintf用法(要配合va_list使用)