孤陋寡闻
文章平均质量分 65
亲爱的Joe
忍受不了寂寞却一辈子都守着寂寞度过.
展开
-
handler机制原理(名字吓人,内容可爱)
handler机制用于处理不同线程间的通信,因此,日志中会涉及到两个大类: Handler类 和 Thread类(实现了Runnable,因此不再单独说Runnable)几句话说清楚那些容易混淆的概念。关于线程:1、MessageQueue:用于存放线程放入的消息2、Looper : 属于线程Thread ,是该Thread管理线程的工具。关于Handler:用于Th原创 2013-08-02 10:32:44 · 924 阅读 · 0 评论 -
使用MyEclipse+maven+mybatis+springmvc搭建多模块maven工程(模仿黑马淘淘商城项目)(内附Intellij创建链接)
Intellij IDEA创建多模块项目(转载):http://blog.csdn.net/williamhappy/article/details/54376855源代码下载模仿气象信息收集单位,做一个ssm框架的工程,然后发布webservice本篇先搭建ssm工程Weather安装环境jdk1.7.0_79+Maven 3.5.2+MyEclipse101.创建w原创 2017-12-20 08:52:39 · 1495 阅读 · 3 评论 -
maven多模块项目发布webservice
环境和目录环境:jdk1.7.0.79+maven3.5.7+cxf+ssm;maven项目源码目录:cxf配置:首先自行配置cxf环境变量1.applicationContext-service.xml添加以下内容在头部的beans标签内添加:xmlns:jaxws="http://cxf.apache.org/jaxws"xsi:s原创 2017-12-20 11:05:17 · 2345 阅读 · 2 评论 -
Maven多模块项目动态打包(SpringMVC数据源动态配置)
开发工具:Intellij IDEA。项目框架:SpringMvc技术:Maven Profile项目目录:manager是聚合工程,剩下的manager-*是模块,其中manager-web打包方式是war。动态发布配置在manager-web中进行,不涉及其他项目或者模块。例一:动态配置数据库源。目录:其中,数据库信息位于config下,配置入口原创 2018-01-20 11:21:58 · 4493 阅读 · 0 评论 -
mybatis小记
1.复杂查询示例:SELECT ?,?,? FROM ? WHERE ?=? 1.1复杂查询的条件传递 1.1.1.这里内容主要在于mapper.xml文件的配置编写和mapper类的代码编写。 mapper.xml中,select标签如下。 SELECT ${columsString} FROM ${tableName} WHERE ${conditionKeys}=#{conditi原创 2017-12-08 12:35:29 · 236 阅读 · 0 评论 -
maven+SpringMvc发布WebService(附录排除问题小过程)
简介:项目使用maven管理,SpringMvc框架。但是项目结构只在配置文件中有所体现(引入spring相关jar),未进行实际分模块开发。过程:1.创建maven project2.编辑配置文件总共4个,分别是 (1)spring-mvc.xml (2)spring-webservice.xml (3)web.xml (4)pom.xml其中前两原创 2017-12-19 10:14:22 · 759 阅读 · 0 评论 -
SpringMvc+Maven多模块项目。集成mina框架
application.xml<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocat原创 2017-12-22 13:01:06 · 1557 阅读 · 0 评论 -
mybatis逆向工程与sqlserver数据库的关系
E:\workspace\GeneratorProject>Java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite网上关于ssm框架整合的文章很多,大多数是摘抄和转抄,在逆向工程部分多为使用mysql数据库,也有少量关于oracle的,而很少有使用sqlserver数据库的。原创 2017-11-21 16:04:50 · 3221 阅读 · 0 评论 -
Android解压缩
Android压缩解压缩不需要额外的第三方包支持。public static void unZip(Context context, String assetName, String outputDirectory, boolean isReWrite) throws IOException { // 创建解压目标目录 File file = new File(outputDir原创 2016-08-03 15:14:30 · 609 阅读 · 0 评论 -
MyBatis逆向工程Mapper方法不全原因
附:有人使用这种方法解决问题,没有亲自试过。该方法只针对MySql数据库,使用其他数据库产生问题,还是要用我的办法。http://www.cnblogs.com/xiqinfanqie/p/6274929.html还有人说是enableXXPrimaryKey要改成true,但是该类属性默认就是true,所以回答者有打酱油的嫌疑。正题使用MyBatis逆向工程有时会产生Mapper文件的方法不全的...原创 2018-05-11 13:02:57 · 4137 阅读 · 0 评论 -
如何在shiro发生UnauthorizedException与UnauthenticatedException等异常时返回json而不是跳转到错误页面
当客户端的用户要请求一个需要该用户所不具有的role的接口时,往往会抛出未授权异常UnauthorizedException。默认处理改异常的方式是在springmvc.xml中配置org.springframework.web.servlet.handler.SimpleMappingExceptionResolver如下:<bean class="org.springfr...原创 2018-05-19 16:06:02 · 9600 阅读 · 0 评论 -
AS打包找不到.so动态库
在app的gradle文件的android --- defaultConfig下添加ndk配置。 ndk { //根据需要 自行选择添加的对应cpu类型的.so库。 abiFilters 'x86', 'x86_64', 'armeabi-v7a', 'armeabi' // 还可以添加 'x86', 'x...原创 2019-02-21 10:26:46 · 971 阅读 · 0 评论 -
java后台与android端集成信鸽推送和华为推送通道
时间比较紧,并未调试。需求:后端可以针对指定账号或者列表进行通知栏信息推送,优先使用华为通道。点击通知栏消息打开指定activity后端版本V3,android sdk 3.2.7一.后端部分代码:自定义XGPushMessagepublic class XGPushMessage { private String title; private String ...原创 2019-01-27 16:08:21 · 1327 阅读 · 0 评论 -
spring boot 集成Apache FTPServer 打jar包发布(监听上传动作)
1.依赖: <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-core</artifactId> <version>2.0.13</version&g原创 2018-12-07 13:39:24 · 2720 阅读 · 11 评论 -
Android 动态添加RadioButton
今天无聊逛论坛,发现了动态添加RadioGroup现有网络资料千篇一律,而且麻烦得要死,于是自己动手按照自己的思路尝试了一遍,发现很容易解决的问题。现在贴下自己的例子。注:暂时没有深入测试,样式没有调整,不过感觉问题不大。完全没有必要用其他方法,太啰嗦。RadioGroup布局: <RadioGroup android:id="@+id/tabs...原创 2018-11-19 17:39:50 · 1765 阅读 · 6 评论 -
spring boot 集成shiro,redis,EhCache缓存的主要配置
简介:redis用户缓存用户的session,EhCache用于缓存用户的权限。问题:即使有EhCache缓存了用户的权限,但是每次访问需要权限的方法时,依然会调用授权方法进行授权。ShiroConfig.javaimport at.pollux.thymeleaf.shiro.dialect.ShiroDialect;import com.nongqitong.web.red...原创 2018-11-14 17:14:19 · 1657 阅读 · 0 评论 -
小记:springboot+aop记录操作日志,遇到需要异步执行的接口
场景:功能要求管理员可以通过在pc端web页面通过后台,给连接后台的一些设备设置定时开关。后台和设备直接使用tcp保持长连接,并使用约定的格式编码数据,这不是重点。为了满足上面的需求,使用了WebAsyncTask进行处理后台与设备之间的交互,交互完成后,后台再将交互结果反馈给前端,告知管理员。这部分顺便贴下关键代码:@RequestMapping("/") ...原创 2019-08-12 15:04:27 · 2810 阅读 · 4 评论 -
SQLServer 2008 MyBatis+联合主键+批量插入+忽略重复数据+联合外键
需求:批量添加设备,每一个设备,都从属于各自网络节点下的某个控制器。设备有多条定时信息。分析:1.批量插入设备数据,在设备数量较多时可以提升效率。 2.该设备只能通过网络节点id,控制器id和自身id确认唯一性。因此需要使用联合主键。 3.可能有重复数据存在,如节点1_控制器1_设备1多次尝试添加自己。需要忽略重复数据。 ...原创 2018-08-16 10:25:52 · 3358 阅读 · 0 评论 -
Shiro登录身份认证(从SecurityUtils.getSubject().login(token))到Realm的doGetAuthenticationInfo
ssm框架下,controller接收到登录请求交给Service并开始处理流程:1.Service的login方法:@Servicepublic class SysUserServiceImpl implements SysUserService { @Autowired SysUserMapper mapper; @Override public Login...原创 2018-06-23 15:35:06 · 44804 阅读 · 6 评论 -
Android Studio 问题记录
1.打不开Project Structure,报错内容为:Multiple entries with same key: Google Inc.:Google APIs:X=Google APIs, Android X, rev 2 (API X) and Google Inc.:Google APIs:X=Google APIs, Android X, rev 2 (API X)原创 2016-06-24 16:07:28 · 495 阅读 · 0 评论 -
android MediaStore 视频以及视频缩略图问题记录
描述:app的列表内需要显示手机本地的照片、图片或者本地的视频。我的方案是使用图片异步加载,使用的是Github上面大名顶顶的图片异步加载工具:universal-image-loader,基于这个前提,对于我来说就是使用图片的uri来显示才最最方便。解决问题的历程:开始由于项目着急且对MediaStore确实有过头疼的经历,因此明智的选择了直接开启线程并通过文件名的匹配来寻找本地的视频或者图原创 2015-11-16 17:19:58 · 2318 阅读 · 0 评论 -
ListView 滑动删除效果
ListView的条目滑动删除效果。 原理: 1、利用onTouchListener方法获取手指触摸的点的坐标。 2、利用ListView的pointToPosition方法获取当前获得焦点的条目在ListView中的position 3、利用Animation播放滑动的动画。 4、利用AnimationLis原创 2013-08-28 14:36:57 · 1811 阅读 · 0 评论 -
mina2.X基于TCP/IP协议的开发示例
mina2.X基于TCP/IP协议的开发示例 ------服务端 一、环境: (1)、java环境:jdk-1.6 (2)、jar包:mina-core-2.0.4.jar mina核心包 slf4j-api-1.6.1.jar原创 2013-09-04 11:35:20 · 2662 阅读 · 2 评论 -
Android服务通信
Android服务类型: (1)、本地服务(LocalService) (2)、远程服务(RemoteService) (本文需要数据交互的地方全部以计数器为例) private int count = 0; new Thread() { public void ru原创 2013-08-30 11:30:00 · 1623 阅读 · 0 评论 -
RSA加密算法原理及RES签名算法简介
目录第一部分:RSA算法原理与加密解密第二部分:RSA算法签名与验签第三部分:总结第一部分:RSA算法原理与加密解密一、RSA加密过程简述A和B进行加密通信时,B首先要生成一对密钥。一个是公钥,给A,B自己持有私钥。A使用B的公钥加密要加密发送的内容,然后B在通过自己的私钥解密内容。二、RSA加密算法基础整个RSA加密算法的安全性基于...原创 2013-09-09 14:44:41 · 7610 阅读 · 3 评论 -
超递增背包加密算法原理和javaDemo
一、引入背包问题超市里有N件物品,第一件物品的重量是m1,价值是v1,第二件物品的重量是m2,价值是v2…..第N件物品的重量是mN,价值是vN。现在有一个背包Bag,最多能装下的重量为M,请问在不超过背包容量的前提下,怎样使得装在背包里的商品价值总和最大。背包加密算法是非对称密钥算法的一种。二、背包加密过程(一)生成公钥和私钥...原创 2013-09-10 17:05:16 · 7884 阅读 · 6 评论 -
Android输入手势和手势匹配
一、 原理简介。利用Android 中的 GestureOverlayView 可以记录用户对屏幕的滑动手势 。每一个手势都是一个Gesture对象,而且一定时间内,可以将多个手势作为一个Gesture对象。 GestureLibrary 可以将这些Gesture以键值对的形式进行存储。这样,设备就可以通过用户的手势获取其对应的键,并通过键来进行进一步的操作。原创 2013-08-24 08:45:46 · 1461 阅读 · 0 评论 -
自定义view和自定义属性(献给和我一样的小白)
一、自定义View 体现在布局文件中如下: 其中 A extends LinerLayout B extends View(忽略布局)做法:1、创建一个类MyView 集成 View类。public class MyBrick extends View2、重载父类中的三个构造方法和原创 2013-08-09 15:49:35 · 808 阅读 · 0 评论 -
Android 桌面浮动框
最近公司在做一个支付组件。持续做了一个月,我做了三个版本,现在项目突然终止,我也无事可做,就想把这个项目中用到的浮动框效果拿出来,晒一晒,巩固知识的同时也顺便帮帮有需要的人,也不失为一件乐事。 该浮动框其实挺简单,就是一个开机广播启动一个后台Service,不断的从内存中查看商城客户端启动,如果启动,就发送一个广播,运行支付组件;当商城退出时,支付组件也退出。 先看来效原创 2013-08-08 14:57:53 · 1614 阅读 · 0 评论 -
Android 4.0 在GridLayout中模仿RadioButton单选按钮
Android中的RadioButton必须直接以RadioGroup为父组件才能发挥作用,而RadioGroup只能设置”横向”和”纵向”。在pad开发中,因为屏幕比较开阔,因此,对于一些单项选择,其实做成GridView样式更美观。在Android4.0以上的API中,提供了GridLayout这个布局,可以实现网格布局,以一个银行选择弹出框为例,记个小笔记。 效果如下:原创 2013-10-31 15:22:03 · 3677 阅读 · 0 评论 -
组件换行:自定义布局的使用
暴风影音的搜索页面有一个效果,每一行的组件如果最后一个显示即将超出屏幕宽度,则自动换行。效果图:本demo的效果图:实现该效果不能使用已有的组件,必须自定义一个布局。重点介绍:自定义布局可以继承ViewGroup,要想实现该效果,我们的自定义布局里面必须要继承父类中的onMeasurt()和onLayout()两个方法。 onMeasure(原创 2013-12-18 17:48:04 · 1736 阅读 · 0 评论 -
android设备中的媒体库
android系统会监听本地的媒体文件,包括视频和图片的写入和删除,然后将信息保存在系统内的媒体库中。数据库的位置为:/data/data/com.android.providers.media该数据库对于涉及到本地图片视频等媒体文件的应用有很大的帮助。最近使用该数据库的数据解决了本地视频缩略图的显示问题。附上数据库的表截图和demo以记录。external原创 2015-10-26 16:12:49 · 4243 阅读 · 0 评论 -
EditText自动获取焦点
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE| WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);对于多个EditText在布局中这样添加:原创 2015-10-19 11:13:07 · 420 阅读 · 0 评论 -
NDK编译问题: Program "ndk-build" is not found in PATH 和 Unable to launch cygpath. Is Cygwin on the path?
遇到两个问题分别解决。问题一:Program "ndk-build" is not found in PATH问题二:Unable to launch cygpath. Is Cygwin on the path?老总让看研究别人手机刷卡项目,也不知道从哪里搞来的代码,第一次给的时候就是个反编译出来的classes.jar,和一个说明文档只有一页的word文档。我当时泪流满面的告诉他这原创 2015-07-14 11:55:21 · 6588 阅读 · 0 评论 -
android开发:把指定的日志输出到指定的文件
近期在做一个接入了第三方sdk的项目,其中涉及到蓝牙连接。蓝牙连接的时候,LogCat中大量输出了无用的BluetoothStack日志,输出的都是一个对象的哈希值。将有用的log瞬间冲掉了。因此做了以下方式来查看需要的日志。方法笨了点,不过,解决问题为先。而且这个方式还有一个用途,记完错左过程再说。首先,需要下载相关jar包两个: android-logging-l原创 2015-07-06 13:31:50 · 3504 阅读 · 3 评论 -
使用国内镜像在线更新AndroidSDK和Library
镜像地址:http://www.androiddevtools.cn现在提供了四个地址,我身在北京,如下:Android SDK在线更新镜像服务器中国科学院开源协会镜像站地址:IPV4/IPV6: http://mirrors.opencas.cn 端口:80IPV4/IPV6: http://mirrors.opencas.org 端口:80原创 2015-05-29 14:40:38 · 1049 阅读 · 0 评论 -
NDK编译Android项目
NDK-r7之后,编译jni时候不再需要安装cygwin了。步骤:1、打开dos命令行窗口。 2、进入到项目目录下。 3、执行命令 ndk路径\ndk-build。然后,等待... ...注意:需要在local.properties中设置sdk和ndk 需要在Android.mk做一些修改。具体视项目而定。原创 2015-05-20 16:21:33 · 520 阅读 · 0 评论 -
android4.0:在Fragment中播放优酷视频
需求:在android4.0的Fragment(android.support.v4.app.Fragment)内,使用WebView播放Html内嵌的优酷网络视频.WebView是固定大小的窗口而非全屏,整个Html中只有一个视频,没有其他的网页内容. 涉及知识点:1、 视频退出。2、 点击Html视频的全屏切换按钮切换全屏。 问题:1、 视频退出时声音还在继续。原创 2014-11-21 16:04:58 · 3122 阅读 · 0 评论 -
java代码代替布局文件与aapt工具简介
Android开发中的布局界面一般都使用xml来定义,既方便有直观。但是这样做也有弊端。其中之一是这样的方式比较消耗资源,另一个原因是我们有时候为了满足我们的需求不能使用xml布局。 例如: 我们将在一个工具包中添加一个Dialog。不过看到那个默认的Dialog,不自觉的就想起了芙蓉和凤姐。如果是在自己的项目使用dialog,我们可以使用xml为Dialog开发一个漂亮的布局原创 2013-08-27 11:20:39 · 1779 阅读 · 2 评论 -
MyBatis insert 返回自增主键
需求:插入数据库的数据成功后返回其主键。条件1,数据库必须支持自增主键,例如MySql等,Oracle这种不支持自增主键的不可以。条件2,目标主键必须自增,UUID是不支持的。实现方式:1.mybatis 的insert(或者insertSelective,以逆向工程mapper代码为例)标签要这样写 <insert id="insertSelective" pa...原创 2019-03-22 10:21:17 · 4352 阅读 · 0 评论