上一页 1 2 3 4 5 6 ··· 15 下一页
摘要: 知识点: servlet是单例的,Action是多例的,一次请求,创建一个Action的实例 结果页面分为全局和局部两类(局部优先级更高) result标签:name : 默认succestype :页面跳转类型 dispatcher 默认值,请求转发(action转发jsp) redirect 重 阅读全文
posted @ 2019-06-18 15:04 嘉禾世兴 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 第一次搭建Sturts框架会遇到几个坑 1.IntelliJ自动生成的web.xml中filter-class报错,是因为Struts2-2.5版本修改了 改为 2.配置好Tomcat后会报错 可是我明明已经配正确了啊?修复的地方如下(这是最坑的地方) 回到我的Android Studio一看,果然 阅读全文
posted @ 2019-06-17 18:55 嘉禾世兴 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 事务的特性:原子性:事务不可分割一致性:事务执行前后数据完整性保持一致隔离性:一个事务的执行不应该受到其他事务的干扰持久性:一旦事务结束,数据就持久到数据库 Spring的事务管理分两类 编程式事务:自己写代码 申明式事务:(AOP原理)XML方式的声明式事务、注解方式的声明式事务 下面的demo都 阅读全文
posted @ 2019-06-14 11:17 嘉禾世兴 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 除了Spring自带的Jar包,还要下载几个Jar包,这里我吐槽下CSDN,下个Jar包都要积分,真是想钱想疯了,其实可以Google得到 我把所有依赖的Jar包贴出来 MySql数据库的搭建和使用我就不说了,百度即可。现在的MySQL Workbench挺好用的 我们先来看下 普通的JDBC的写法 阅读全文
posted @ 2019-06-14 10:42 嘉禾世兴 阅读(255) 评论(0) 推荐(0) 编辑
摘要: AOP面向切面编程Spring是基于Aspectj的AOP开发 AOP的底层原理就是动态代理 动态代理分两种JDK动态代理:只能对实现了接口的类产生代理Cglib动态代理:第三方代理技术,对没有实现接口的类产生代理对象,生成子类对象,可以动态添加类的属性和方法 Spring会根据是否有接口自动选择相 阅读全文
posted @ 2019-06-13 12:54 嘉禾世兴 阅读(333) 评论(0) 推荐(0) 编辑
摘要: XML方式: IOC:控制反转的底层原理就是:工厂模式+反射+配置文件DI:依赖注入就是通过配置文件设置属性值 BeanFactory 是老版本的工厂类:调用getBean的时候,才会生成类的实例ApplicationContext 是新版本的工厂类:加载配置文件的时候,就会将Spring管理的类都 阅读全文
posted @ 2019-06-11 18:55 嘉禾世兴 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 先来看效果图 只做了简单的在线翻译,语音翻译和图片翻译都要钱,哈哈 市面上有名气的翻译公司就是有道和百度了,有道尝试了一下,分为API和SDK两种,但是demo下载下来跑不了 百度的就是API,也很简单,就是通过百度的协议去请求他们的服务器,得到翻译后的值,每个月有200万的免费,够用了 百度文档地 阅读全文
posted @ 2019-06-04 12:24 嘉禾世兴 阅读(1164) 评论(0) 推荐(0) 编辑
摘要: 我们先来看看效果 上面是根据图片检测出其中的人脸、每个人脸的年龄还有性别,非常强大 第一步: 登录https://ai.arcsoft.com.cn/,注册开发者账号,身份认证,注册应用,得到APPID和SDKKEY 第二步: 阅读SDK接入文档https://ai.arcsoft.com.cn/m 阅读全文
posted @ 2019-05-29 17:33 嘉禾世兴 阅读(3034) 评论(0) 推荐(0) 编辑
摘要: LeetCode第58题: Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string. If 阅读全文
posted @ 2019-05-24 21:30 嘉禾世兴 阅读(173) 评论(0) 推荐(0) 编辑
摘要: Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum. Example: 翻译: 阅读全文
posted @ 2019-05-23 16:47 嘉禾世兴 阅读(146) 评论(0) 推荐(0) 编辑
摘要: LeetCode第38题 The count-and-say sequence is the sequence of integers with the first five terms as following: 1 is read off as "one 1" or 11.11 is read 阅读全文
posted @ 2019-05-22 15:31 嘉禾世兴 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 前面做了一个心电图的demo 心电图,结果发现那个心电图是静态的,是应用一启动就已经画好了的,整个页面向左滑动而已 下面我改造了一下,写了一个实时接收数据的动态心电图,网上其他地方也有,但是没有讲到重点 我们先看看效果图 很符合要求吧?只不过我没有到达屏幕的最右边就开始向左滑动是为了理解更方便 其实 阅读全文
posted @ 2019-05-20 10:44 嘉禾世兴 阅读(1229) 评论(0) 推荐(0) 编辑
摘要: 这两天在研究蓝牙,网上有关蓝牙的内容非常有限,Github上的蓝牙框架也很少很复杂,为此我特地写了一个最最简单的DEMO,实现BLE蓝牙接收数据的问题, 不需要什么特定的UUID, 不需要什么断开重连, 不需要什么多连接等等, 网上都把BLE蓝牙写的好复杂好复杂,那不是我想要的,我只想为新手提供一个 阅读全文
posted @ 2019-05-16 14:39 嘉禾世兴 阅读(3592) 评论(1) 推荐(1) 编辑
摘要: LeetCode第28题 Return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack. Example 1: Example 2: 翻译: 返回大字符串 阅读全文
posted @ 2019-05-09 11:41 嘉禾世兴 阅读(132) 评论(0) 推荐(0) 编辑
摘要: LeetCode第27题 Given an array nums and a value val, remove all instances of that value in-place and return the new length. Do not allocate extra space f 阅读全文
posted @ 2019-05-08 10:32 嘉禾世兴 阅读(137) 评论(0) 推荐(0) 编辑
摘要: LeetCode第26题 Given a sorted array nums, remove the duplicates in-place such that each element appear only once and return the new length. Do not alloc 阅读全文
posted @ 2019-05-05 18:48 嘉禾世兴 阅读(223) 评论(0) 推荐(0) 编辑
摘要: LeetCode第21题 Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two li 阅读全文
posted @ 2019-05-05 16:58 嘉禾世兴 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 首先说个题外话,《研磨设计模式》这本书占据很多设计模式书籍排行榜的榜首,但是这本书只印刷了一次,导致此书绝版,所以在淘宝和京东的购买价格翻了3倍 【简单工厂模式】 1.客户端根本就不应该知道具体的实现类是Impl,其实就是为了封装实现类,因而在具体实现类和客户端之间增加了一个工厂类,工厂类的作用就是 阅读全文
posted @ 2019-04-26 15:12 嘉禾世兴 阅读(819) 评论(0) 推荐(0) 编辑
摘要: 参考自:手把手教你打造一个心电图效果View Android自定义View 动态心电图详见接收数据实时更新的波状曲线图 效果图 布局: 自定义控件 activity 最重要的就是Path这个类和moveTo()/lineTo()方法 欢迎关注我的微信公众号:安卓圈 阅读全文
posted @ 2019-04-13 18:08 嘉禾世兴 阅读(381) 评论(0) 推荐(0) 编辑
摘要: --摘自廖雪峰nodejs教程 No1:模块 一个模块想要对外暴露变量(函数也是变量),可以用module.exports = variable;,一个模块要引用其他模块暴露的变量,用var ref = require('module_name');就拿到了引用模块的变量。 Node利用JavaSc 阅读全文
posted @ 2019-03-22 11:10 嘉禾世兴 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 需求: 测试人员在Jenkins打包完成以后,自动发送到云测平台进行自动化测试,最后的测试报告发送到相关测试人员的邮箱 串联系统:Jenkins,云测平台,聚合报告 涉及到的工具:1.xshell-62.xftp-63.airtest IDE4.python+poco 原理流程: 1.Jenkins 阅读全文
posted @ 2019-03-11 16:19 嘉禾世兴 阅读(192) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 1.Hook技术分类 1)根据Hook的API语言划分,分为Hook Java和Hook Native * Hook Java主要通过反射和代理来实现,应用于在SDK开发环境中修改Java代码 * Hook Native则应用于在NDK开发环境和系统开发中修改Na 阅读全文
posted @ 2019-01-09 14:53 嘉禾世兴 阅读(245) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 1.Instant Run编译部署 1)Hot swap:代码的增量改变不需要重启App,甚至不需要重启当前的Activity。修改一个现有方法中的代码时会采用Hot Swap 2)Warm Swap:App不需要重启,但是Activity需要重启。修改或删除一个 阅读全文
posted @ 2019-01-07 18:33 嘉禾世兴 阅读(519) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 *Java中的ClassLoader* 1.系统类加载器包括3种: 1)Bootstrap ClassLoader(引导类加载器) C/C++代码实现的加载器,用于加载指定的JDK的核心类库,比如java.lang.、java.uti.等这些系统类。Java虚拟机 阅读全文
posted @ 2019-01-04 16:38 嘉禾世兴 阅读(542) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 DVM和ART都是在Zygote进程中诞生的 *DVM和JVM的区别* 1.基于的架构不同 DVM是基于寄存器的,它没有基于栈的虚拟机在复制数据时而使用的大量的出入栈指令,同时指令更紧凑、更简洁。但是由于显式指定了操作数,所以基于寄存器的指令会比基于栈的指令要大, 阅读全文
posted @ 2019-01-03 18:51 嘉禾世兴 阅读(615) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 1.常说的JDK包含了Java语言、Java虚拟机和Java API类库这三部分,是Java程序开发的最小环境 2.JRE包含了JavaAPI中的Java SE API子集和Java虚拟机两个部分,是Java程序运行的标准环境 3.Java虚拟机上运行的语言不仅仅 阅读全文
posted @ 2019-01-02 16:04 嘉禾世兴 阅读(233) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 *WMS的职责* 1)窗口管理 WMS负责窗口的启动、添加和删除,另外窗口的大小和层级也是由WMS进行管理的 2)窗口动画 WMS的动画子系统WindowAnimator负责窗口间的切换动画 3)输入系统的中转站 InputManagerService会对触摸事件 阅读全文
posted @ 2018-12-27 20:14 嘉禾世兴 阅读(1872) 评论(0) 推荐(1) 编辑
摘要: --摘自《Android进阶解密》 *WindowManger的关联类* 1.Window是一个抽象类,具体的实现类为PhoneWindow,它对View进行管理。WindowManager是一个接口类,继承自接口ViewManager,ViewManager是用来管理Window的,它的实现类为W 阅读全文
posted @ 2018-12-27 17:37 嘉禾世兴 阅读(237) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 *AMS家族* 1.Android 7.0的AMS家族 2.AMP和AMS进行通信 3.(Android 7.0)AMP是AMN的内部类,它们都实现了IActivityManager接口,这样它们就可以实现代理模式,具体来讲是远程代理:AMP和AMN是运行在两个进 阅读全文
posted @ 2018-12-26 21:13 嘉禾世兴 阅读(400) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 知识点: 1.Context的使用场景 1)使用Context调用方法,比如启动Activity、访问资源、调用系统级服务等 2)调用方法时传入Context,比如弹出Toast、创建Dialog等 2.Context的关联类 3.Context的关联采用了装饰模 阅读全文
posted @ 2018-12-26 17:26 嘉禾世兴 阅读(589) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 第一步:query方法到AMS的调用过程 1)ApplicationContentResolver是ContextImpl中的静态内部类,继承自ContentResolver,它在ContextImpl的构造方法中被创建,这说明我们调用ContentResolve 阅读全文
posted @ 2018-12-26 15:42 嘉禾世兴 阅读(717) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 一。广播的注册过程(动态注册) 1)静态注册在应用安装时由PackageManagerService来完成注册过程 2)IIntentReceiver是一个Binder接口,用于广播的跨进程的通信,它在LoadedApk.ReceiverDispatcher.In 阅读全文
posted @ 2018-12-26 14:36 嘉禾世兴 阅读(675) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 *Service启动过程* 第一步:ContextImpl到ActivityManagerService的调用过程 第二步:ActivityThread启动Service 1)ProcessRecord主要用来描述运行的应用程序进程的信息 2)LoadedApk是 阅读全文
posted @ 2018-12-25 20:55 嘉禾世兴 阅读(556) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 根Activity启动过程中会涉及4个进程,分别是Zygote进程、Launcher进程、AMS所在进程(SystemServer进程)、应用程序进程,关系图如下 其中步骤2采用的是Socket通信,步骤1和4采用的是Binder通信 如果是普通Activity启 阅读全文
posted @ 2018-12-25 18:41 嘉禾世兴 阅读(2104) 评论(0) 推荐(0) 编辑
摘要: --摘自《Android进阶解密》 1.AMS在启动应用程序时会检查者应用程序需要的应用进程是否存在,不存在就会请求Zygote进程启动需要的应用程序进程 2.Zygote的Java框架层中会创建一个Server端的Socket,这个Socket用来等待AMS请求Zygote来创建新的应用程序进程 阅读全文
posted @ 2018-12-24 20:29 嘉禾世兴 阅读(887) 评论(0) 推荐(1) 编辑
摘要: --摘自《Android进阶解密》 一。启动电源以及系统启动 当电源按下时引导芯片代码聪预定义的地方(固化在ROM)开始执行。加载引导程序到BootLoader到RAM,然后执行 二。引导程序BootLoader 引导程序BootLoader是在Android操作系统开始运行前的一个小程序,它的主要 阅读全文
posted @ 2018-12-22 16:40 嘉禾世兴 阅读(349) 评论(0) 推荐(0) 编辑
摘要: --摘自《android插件化开发指南》 1.local.properties添加配置 2.gradle.properties添加配置 3.Android只支持3种CPU类型:x86体系、arm体系、mips体系,现在手机基本arm体系 4.arm体系分为32位和64位 1)armeabi/arme 阅读全文
posted @ 2018-12-15 12:42 嘉禾世兴 阅读(696) 评论(0) 推荐(0) 编辑
摘要: --摘自《android插件化开发指南》 1.制作插件的增量包:使用bsdiff(百度搜官网)最好在win系统下使用 然后把mypatch.diff放到服务器上供下载使用 2.下载解压记得申请SDCard的权限 3.App合并增量包 制作工具ApkPatchLibrary https://githu 阅读全文
posted @ 2018-12-14 18:44 嘉禾世兴 阅读(160) 评论(0) 推荐(0) 编辑
摘要: --摘自《android插件化开发指南》 1.插件不支持加固,宿主可以加固,此外,插件支持签名 2.一个正常的app在混淆时要遵守的规则如下 1)四大组件和Application要在AndroidManifest中声明,所以不能混淆 2)R文件不能混淆,因为有时要通过反射获取资源 3)support 阅读全文
posted @ 2018-12-14 16:34 嘉禾世兴 阅读(411) 评论(0) 推荐(0) 编辑
摘要: --《摘自android插件化开发指南》 1.有些项目,整个app只有一个Activity,切换页面全靠Fragment,盛行过一时,但有点极端 2.Activity切换fragment页面 第一步:FragmentLoaderActivity作为Fragment的承载容器 第二步: MainAct 阅读全文
posted @ 2018-12-14 11:36 嘉禾世兴 阅读(1113) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 15 下一页