3 zhugeaming2018

亚信科技中国有限公司 - 高级软件架构师

我要认证

11年IT生涯,11年IT圈故事

等级
TA的排名 916

『互联网架构』软件架构-spring之AOP场景实战(11)

面试的时候,经常被面试官问到AOP在你的项目中用到了那些场景,我一般的回答是日志,权限,事务处理,方法的统计,性能的监控。其实权限和事务都是跟业务相关的,咱们一起来想想针对其他几个如何来设计。重点是设计的思路。源码:https://github.com/limingios/netFuture/tree/master/tuling-enhance-plugin-masterAOP能干什么?日志新增的日志有必要打印。查询的日志对于系统来说基本都是写少,读多的,是不是所有的日志.

2020-10-19 12:39:53

『互联网架构』软件架构-spring源码之spring AOP(十)

>spring是一个技术体系,之前说过spring的ioc,学习底层的意义,为的是以后灵活进行定制的时候,学的底层知识就可以用了。之前我记得在开发的时候,log日志都是debug,到线上的时候为了不影响性能就改成info,但是如果是线上出问题了,需要关闭项目更改为debug,查看到底是怎么回事,其实如果学习了aop,里面有个开关的功能,可以动态的不更改项目状态的情况下,动态的让日志级别发生改变,灵活的追踪项目里面的存在的问题。![](https://upload-images.jianshu.io

2020-10-16 10:01:59

『互联网架构』软件架构-spring源码之spring ioc(九)

上次说了spring的体系结构和概要大概有哪些模块,spring ioc是最核心最原始的一个框架,其实就是spring的老本,spring就是依靠着ioc,慢慢发展到其他Data,web,AOP上的。记得当初项目里面使用spring的时候,就知道配置个xml,在struts2上引用spring配置的bean,引用这个类就可以直接用了,不用直接new了,完全不管原理,确实方便但是需要配置2次,一次是spring bean.xml,一次是struts引用的时候配置。这次主要看看spring IOC底层是如何实.

2020-10-09 09:49:25

『互联网架构』软件架构-mybatis体系结构(14)

今天说说mybatis,之前说过spring ioc,aop,mvc,接下来就到数据库的持久层了。从上到下的顺序,mvc,ioc,最下面就是数据库的持久层。mybatis是互联网和企业内广为应用的框架。官方参考文档这个文档很详细:http://www.mybatis.org/mybatis-3/zh/index.html数据库访问层的4种实现方案对比JDBC当初最早的实现dao层,都是通过jdbc的方式获取链接,通过DriverManager.getConnection构建sql语.

2020-09-22 17:35:15

『互联网架构』软件架构-spring源码之spring结构概述(八)

spring从07年接触到目前2018年也差不多10年了,一个java的框架为什么能火这么多年。很多人对spring的使用轻车熟路,但是从未解读过spring的源码,老铁跟我一起看看源码,了解下内部的构造,只有源码读过的人才能获得上乘武功,软件开发不只是搬砖的老铁。内功熟悉原理,外功是灵活使用。内功好比电力,外功好比电机。内功的电力越强,电机的马力越大才能发挥巨大作用,相反如果电力弱,马力在强也是不行的。spring从单一的jar包,发展到现在十多个jar包,spring mvc 到spring boot.

2020-09-14 12:48:58

『互联网架构』软件架构-Intellij IDEA技巧篇(七)

从09年开始java的开发,用了很多的开发工具从myeclipse,eclipse,netbeans每个开发工具都有自己的特色,netbeans做gui很方便,myeclipse最初的时候插件比eclipse丰富。eclipse更加轻量。从17年跟同事国美哥,开始熟悉使用idea,这款捷克这个小国家开发的工具。IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计.

2020-09-03 09:48:10

『互联网架构』软件架构-jenkins搭建和 maven gitlab自动化部署流程(下)(六)

上次基本把环境都搭建好了,下一步就是开始完成整个流程的自动化部署。源码:https://github.com/limingios/netFuture/tree/master/jenkins/环境回顾应用IP地址服务端口安装应用安装方式gitlab192.168.66.100gitlab10080gitlabdockerjenkins192.168.66.101jenkins8888jdk8 maven3.2 git2.8shellnexu.

2020-08-25 10:20:54

『互联网架构』软件架构-jenkins搭建和 maven gitlab自动化部署流程(上)(五)

几年前没用过jenkins的时候,每次都需要用eclipse打个war包,然后小心翼翼的上传到服务器,给服务器原有的war包改个名字,mv到bak目录中,停止服务,删除原有的webapps的项目,再把新上传的war包放进到tomcat的webapp说的目录下,启动项目。每次改个html的标签的名字都需要重新上传,每次都是这么繁琐的操作。其实小公司还可以容忍,如果是比较大的项目,还持续停留在这个脚本上运维人员都累死了,因为有可能一次部署几十个项目。源码:https://github.com/limingio.

2020-08-06 09:07:24

『互联网架构』软件架构-git服务搭建与使用(四)

很多跟我一样大概有十多年的同事,一直做着企业内部开发,现在还在使用svn,跟大家聊起来git,他们都知道,只是项目里用习惯了svn一直也没改变,我相信这只是时间的问题,在不久的将来必然会使用git,正如我刚入行的时候ssh还是struts1 和hibernate。git更接近互联网,更方便。有一次一个老铁告诉我,他们是上市公司,研发中心负责管理总体的代码都在svn总部那边,svn服务器挂了,导致他想回退版本都没办法,因为本地都没保存之前的代码。如果是git我告诉你这些都不是问题,这就是分布式和集中化的区别.

2020-07-27 23:27:56

『互联网架构』软件架构-环境搭建maven(三)

maven所有java开发标准的构建工具,之前才入行的时候听过ant来进行构建,但是现在基本不存在了 ,maven是一个体系结构的管理,也是个编译方式的管理。源码:https://github.com/limingios/netFuture文件夹Nexusmaven 历史Maven最初设计,是以简化Jakarta Turbine项目的建设。在几个项目,每个项目包含了不同的Ant构建文件。 JAR检查到CVS。 Apache组织开发Maven可以建立多个项目,发布项目信息,项目部署,在几个..

2020-07-18 16:07:12

『互联网架构』软件架构-mysql主从(二)

通俗来讲,如果对数据库的读和写都在同一个数据库服务器中操作,业务系统性能会降低。 为了提升业务系统性能,优化用户体验,可以通过做主从复制(读写分离)来减轻主数据库的负载。 而且如果主数据库宕机,可快速将业务系统切换到从数据库上,可避免数据丢失。源码:https://github.com/limingios/netFuture为什么要主从同步实时灾备,用于故障切换读写负载均衡定时任务专用开发人员查看了解原理下面这个图,就是主从同步的原理。webapp(就是java的应用程序).

2020-07-01 23:39:23

『互联网架构』软件架构-软件系统设计(一)

按照正常的互联网玩法,产品经理原型画好进行需求评审,评审完后,需要把需求丢给技术经理,或者技术负责人,进行一整套的概要设计,然后针对概要设计评审,概要评审后进行开发。这次咱们一起说说概要设计的体系结构。了解下套路。软件系统设计软件系统设计在很多人眼里就是写文档,写文档是一种负担,其实系统设计头脑风暴,是一种非常开心的事情。所以必须掌握什么是系统的设计。它里面有哪些方法论,如何去做一些系统设计。我们平常做开发设计吗?才毕业回郑州那几年,都是一句话就是需求,开发完了河南本地连个测试人员.

2020-06-06 14:28:09

「小程序JAVA实战」小程序的上传(终结)(72)

微信小程序,不需要使用服务器,可以直接上传,通过微信小程序的工具。步骤点击工具的上传按钮上传成功后,需要联系管理员在小程序管理后台将本次上传设置为体验版本.登录小程序的后台未上传的情况下,线上版本,开发版本,审核版本都是空的。小程序上传域名备案,后台的接口服务都是可用的,都没有问题的情况下,官方才会允许你上的。image.png...

2020-05-02 13:00:55

「小程序JAVA实战」zookeeper简介(71)

如果一个应用在操作自身,自身的删除和添加的方式很容易让自己知道。如果是小程序后端一个程序,web端一个程序,他们需要进行通信。如果彼此之间自动的一致呢。如果是数据库可以通过共用一个数据库的方式,如果是文件就要用到一个工具zookeeper了。方式多种多样Springboot开放接口,ssm调用其完成同步工作。这样是有弊端的,耦合度比较高。使用MQ消息队列,生产者(SSM)...

2020-04-20 00:16:44

「小程序JAVA实战」小程序的留言和评价功能(70)

目前小程序这块就只差留言功能了,从这次开始将对留言这个模块进行讲解和开发。源码:https://github.com/limingios/wxProgram.git中No.15和springboot后台开发后台需要通过代码生成器针对留言表生成对应的pojo,mapper,mapper.xml,controller增加2个方法,一个添加留言,一个查看留言列表(分页显示)co...

2020-03-30 09:15:32

「小程序JAVA实战」小程序的分享和下载功能(69)

在小程序上无法分享朋友圈,只能通过发送指定用户和指定的用户群来进行扩散,必须掌握分享功能至关重要!源码:https://github.com/limingios/wxProgram.git中No.15和springboot官方介绍https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/page.h...

2020-03-23 09:59:04

「小程序JAVA实战」小程序的举报功能开发(68)

通过点击举报按钮,跳转到举报页面完成举报操作。后台开发获取发布人的userId,videoId,创建者的IdcontrollerUserController.javapackage com.idig8.controller;import org.apache.commons.lang3.StringUtils;import org.springframewor...

2020-03-06 10:21:50

「小程序JAVA实战」小程序的微信api菜单操作(67)

菜单按钮的介绍,点在视频详情时会出现菜单按钮,里面有多个选项。源码:https://github.com/limingios/wxProgram.git中No.15和springboot官方介绍https://developers.weixin.qq.com/miniprogram/dev/api/ui/interaction/wx.showActionSheet.html...

2020-02-06 16:03:54

「小程序JAVA实战」小程序的个人信息作品,收藏,关注(66)

个人信息页面有一个tab(作品,收藏,关注)源码:https://github.com/limingios/wxProgram.git中No.15和springboot作品,收藏,关注的列表VideoController.javapackage com.idig8.controller;import java.io.File;import java.util.Date...

2020-01-10 09:10:43

「小程序JAVA实战」小程序的关注功能(65)

在个人页面,根据发布者个人和个人的信息来进行展示,如果是发布者,可以进行关注和取消关注。源码:https://github.com/limingios/wxProgram.git中No.15和springboot后端开发涉及2涨表,一个关联表,个人和粉丝的关联表,用户表。UsersMapper.javapackage com.idig8.mapper;import ...

2019-12-13 17:13:24

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 博客之星-入围
    博客之星-入围
    授予每年博客之星评选结果第21-200名的用户