java
qq_31443653
这个作者很懒,什么都没留下…
展开
-
sprinboot系列二——多环境打包
思路为,先排除所有版本的文件,然后在根据命令动态加载其中一个或者多个多环境结构最外层propertise如下(activatedProperties 以下三处需一致):# 指定执行环境#app#<!-- activatedProperties1 -->spring.profiles.active=@activatedProperties@sit的properties如...原创 2019-04-01 15:50:09 · 188 阅读 · 0 评论 -
excel2java
package excel2java;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream...转载 2018-04-09 19:37:11 · 182 阅读 · 0 评论 -
MDC+log4j+uuid简单使用
MDC介绍 MDC(Mapped Diagnostic Context,映射调试上下文)是 log4j 和 logback 提供的一种方便在多线程条件下记录日志的功能。某些应用程序采用多线程的方式来处理多个用户的请求。在一个用户的使用过程中,可能有多个不同的线程来进行处理。典型的例子是 Web 应用服务器。当用户访问某个页面时,应用服务器可能会创建一个新的线程来处理该请求,也可能从线程池中复...原创 2018-03-15 19:25:08 · 2829 阅读 · 1 评论 -
java自定义异常类以及全局log打印
import lombok.Data;/** * @author 01369526 * */@Data@SuppressWarnings("serial")public class MyException extends RuntimeException implements Serializable{ private int errorcode; public原创 2017-10-16 19:42:14 · 2509 阅读 · 0 评论 -
CXF访问webservice
1官网下载CXF http://cxf.apache.org/download.html2. CXF_HOME E:\SOFTWARE\apache-cxf-3.2.1 Path ;%CXF_HOME%/bin 完成环境配置后,输入wsdl2java -v 查看是否安装成功3.cmd 运行dos,选择目标文件夹和wsdl路径 C:\Users\01369526>wsdl2原创 2018-01-12 19:12:34 · 389 阅读 · 0 评论 -
JAVA文件读写
public class WriteToFile { public static String fileDir="E:/g/"; /** * B方法追加文件:使用FileWriter */ public static void appendMethodB(String fileName, String content) { try {原创 2018-01-12 18:54:26 · 138 阅读 · 0 评论 -
学习链接
nginxNginx配置说明:http://www.jb51.net/article/79216.htm; Nginx+Tomcat搭建高性能负载均衡集群:http://blog.csdn.net/wang379275614/article/details/47778201; 常用命令: nginx -s stop 强制关闭 nginx -s quit 安全关闭 nginx -s re原创 2017-10-20 15:19:56 · 251 阅读 · 0 评论 -
mybatis简单使用
1.数据库配置 jdbc.propertiesmysql.jdbc.url=jdbc:mysql://10.202.13.167:3307/td_basic?useUnicode=true&characterEncoding=utf8&allowMultiQueries=truemysql.jdbc.username=td_basicmysql.jdbc.password=sf123456ma原创 2017-09-06 10:51:00 · 272 阅读 · 0 评论 -
网络请求以及方法优化Jersey
最开始的代码如下,:@Controller@RequestMapping("lock")@Api(value = "车锁信息", description = "车锁信息管理")public class LockController { @SuppressWarnings("unchecked") @RequestMapping(value = "findInformation",原创 2017-09-20 16:31:58 · 386 阅读 · 0 评论 -
备忘录模式
**设计模式6原则: 1、开闭原则(Open Close Principle) 开闭原则就是说对扩展开放,对修改关闭。 2、里氏代换原则(Liskov Substitution Principle) 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 3、依赖倒转原则(Dependence Inversion Principle) 真对接口编程,依赖于抽象而不依赖于转载 2017-09-11 14:13:11 · 315 阅读 · 0 评论 -
java 对象转map
import java.lang.reflect.Field;import java.lang.reflect.Modifier;import java.util.HashMap;import java.util.Map;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class ObjUtil { ...原创 2018-05-22 16:54:35 · 1726 阅读 · 0 评论 -
Java并发编程原子类实现-AtomicInteger incrementAndGet方法实现
背景,多个生产者一个消费者,实现生产者生产数据按产生顺序加上编号 简单应用如下,子线程进行原子增public class Producer implements Runnable { private static AtomicInteger count= new AtomicInteger(); public void run() { String d...原创 2018-08-07 15:08:44 · 3516 阅读 · 0 评论 -
sprinboot系列一——搭建并发布多模块springboot应用
1,创建maven的project,maven选quickstart2,创建子module,maven选quickstart,添加相互依赖添加模块是报错,改父pom文件的packaging属性,jar改为pom即可pom.xml <packaging>pom</packaging>创建成功后,项目层级如下:service涉及其他模块依赖,在service模块...原创 2019-03-30 18:36:46 · 277 阅读 · 0 评论 -
disruptor 框架使用以及ringbuffer原理解析
Disruptor概述子主题 1生产者消费组框架子主题 2使用子主题 11.建Event类(数据对象)2.建立一个生产数据的工厂类,EventFactory,用于生产数据;3.监听事件类(处理Event数据)4.实例化Disruptor,配置参数,绑定事件;5.建存放数据的核心 RingBuffer,生产的数据放入 RungBuffer。ringbuffer它...原创 2018-10-29 09:57:05 · 6423 阅读 · 0 评论 -
并发总纲
并发并发基础JMM线程通信消息传递AQSAbstractQueuedSynchronizer同步器用来构建锁或者其它同步组件的基础框架,使用int表示同步状态,通过内置的fifo队列完成资源获取线程的排队工作getstatesetstatecompareAndSetState实现同步队列双链表基于CAS死循环设置尾节点通过获取同步状态成功设置首节...原创 2018-10-17 10:49:16 · 149 阅读 · 0 评论 -
并发原子类,集合,工具类
其它原子操作基本类型AtomicIntegerAtomicLongAtomicBoolean数组AtomicIntegerArrayAtomicLongArrayAtomicReferenceArray引用类型AtomicReferenceAtomicReferenceFieldUpdater其它threadlocal对象为建,任意对象为值,结构被附...原创 2018-10-17 10:34:06 · 231 阅读 · 0 评论 -
java lock
locksynchronized(非公平锁)(隐式获取锁,取锁解锁过程固话)分类普通同步方法锁定当前实例对象静态同步方法锁定当前类同步代码块锁synchronize括号里面配置的对象原理 进入和退出monitor代码块 两者配对出现monitorenter 被持有后出于锁定状态,执行enter时,尝试获得monitor所有权每个对象有一个监视器...原创 2018-10-17 10:25:11 · 159 阅读 · 0 评论 -
内存模型
内存模型volatile保证所有线程看到值一致,对单个volatile变量读写具有原子性 volatile++不具备lock前缀当前处理器缓存行数据写会系统内存写回内存的操作会使其它CPU里缓存了该内存地址的数据无效多处理器的情况下,每个处理器通过嗅探在总线上传播的数据,检查自己的缓存是否过期总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线...原创 2018-10-17 10:22:57 · 208 阅读 · 0 评论 -
并发基础
并发基础JMM线程通信消息传递AQSAbstractQueuedSynchronizer同步器用来构建锁或者其它同步组件的基础框架,使用int表示同步状态,通过内置的fifo队列完成资源获取线程的排队工作getstatesetstatecompareAndSetState实现同步队列双链表基于CAS死循环设置尾节点通过获取同步状态成功设置首节点每个节...原创 2018-10-17 10:20:01 · 140 阅读 · 0 评论 -
java引用四种方式
引用方式强引用系统即使抛出OutOfMemoryError也不会进行垃圾回收弱引用系统只要进行垃圾收集就会将其使用的内存回收软引用系统只是在内存不够用的时候将其使用的内存回收虚引用"虚引用"顾名思义,就是形同虚设,与其他几种引用都不同,虚引用并不会决定对象的生命周期。如果一个对象仅持有虚引用,那么它就和没有任何引用一样,在 任何时候都可能被垃圾回收。 虚引用主要用来跟踪对象被垃圾...原创 2018-10-17 10:09:04 · 198 阅读 · 0 评论 -
netty简单使用和解析
Netty Mina高性能和高可伸缩性网络应用程序的网络应用框架传统io缺点NIO的类库和API还是有点复杂,比如Buffer的使用Selector编写复杂,如果对某个事件注册后,业务代码过于耦合需要了解很多多线程的知识,熟悉网络编程面对断连重连、保丢失、粘包等,处理复杂NIO存在BUG,根据网上言论说是selector空轮训导致CPU飙升创建步骤即包含一个接收连接的线程池...原创 2018-10-09 13:49:29 · 160 阅读 · 0 评论 -
io模型
原创 2018-10-09 09:25:40 · 144 阅读 · 0 评论 -
多线程测试
import org.junit.Test;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.test.context.ContextConfigurati原创 2017-11-07 10:39:12 · 274 阅读 · 0 评论 -
properties文件使用
resource 路径新建config。properties ,内容如下:#each 5 secondrepeat_time=0/5 * * * * ? spring中,注明扫描包,和资源引用:<context:component-scan base-package="com.sf.demo" /> <bean class="org.springframework.beans.factor原创 2017-09-01 17:04:19 · 233 阅读 · 0 评论 -
java编程面试——风口的猪-中国牛市
题目描述风口之下,猪都能飞。当今中国股市牛市,真可谓“错过等七年”。 给你一个回顾历史的机会,已知一支股票连续n天的价格走势,以长度为n的整数数组表示,数组中第i个元素(prices[i])代表该股票第i天的股价。 假设你一开始没有股票,但有至多两次买入1股而后卖出1股的机会,并且买入前一定要先保证手上没有股票。若两次交易机会都放弃,收益为0。 设计算法,计算你能获得的最大收益。 输入数值范围:2<原创 2016-08-12 11:57:22 · 409 阅读 · 0 评论 -
android面试编程——懂二进制java
题目描述世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么? 输入例子: 1999 2299输出例子: 7public class Solution { /** * 获得两个整形二进制表达位数不同的数量 * * @param m 整数m * @param n 整数n原创 2016-08-12 10:36:46 · 283 阅读 · 0 评论 -
java,calander,date时间常用方法
public static void main(String[] args) throws ParseException { // TODO Auto-generated method stub Calendar now = Calendar.getInstance(); int year=now.get(Calendar.YEAR);原创 2016-08-19 15:03:29 · 487 阅读 · 0 评论 -
Java设计模式——工厂模式,建造者模式
普通类继承相同接口或者继承相同类 工厂类继承相同工厂接口或者方法普通工厂模式:根据传入参数返回相应类,参数不对会报错,一个工厂,一个函数,多个返回情况 如:自助餐厅,根据小孩儿还是成人点餐,小孩儿去了就给小孩儿的菜 多个工厂方法模式:根据传入相关方法返回对应类,一个工厂,多种函数,一个函数一个返回情况 如:自助餐厅,分为小孩儿和成人区,成人小孩儿分别进自己的去吃饭 抽象工厂模式:根据建立的原创 2016-07-26 16:16:14 · 509 阅读 · 0 评论 -
Java设计模式—— 观察者模式
基本概念: 观察者模式属于行为型模式,其意图是定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 这一个模式的关键对象是目标(Subject)和观察者(Observer)。一个目标可以有任意数目的依赖它的观察者,一旦目标的状态发生改变,所有的观察者都得到通知,作为对这个通知的响应,每个观察者都将查询目标以使其状态与目标的状态同步。 适用场景原创 2016-07-26 15:59:53 · 228 阅读 · 0 评论 -
Java设计模式——外观模式
屏蔽细节 如,一个人上班要坐交通点A,B,C之后才能到公司,屏蔽细节后class D{run(){A.runTo(B);B.run(C);C.run(Company);}}上班就变成了D d=new D;d.run()原创 2016-07-26 15:41:14 · 214 阅读 · 0 评论 -
Java设计模式——适配器模式
(1) 适配器模式的意图是将一个已存在的类/接口进行复用,将其转换/具体化成客户希望的另外的一个类/接口。 (2) 如何实例复用: 将要进行复用的类,放到目标类的构造方法中,进行实例化,然后在目标类的相应方法中,进行调用,修改原来方法 中的参数,或添加相应的逻辑。即复用了已有类的原来方法。类A有方法C1,如果要请求方法C2但是只有方法C1,原来的类不够用,如果要复用A那么构建的适配器如下p原创 2016-07-26 15:34:00 · 204 阅读 · 0 评论 -
Java设计模式——代理模式
代理的好处: —>是可以在间接访问对象的同时,要其前或后,添加其它的逻辑代码. —>对原来逻辑进行添加其它逻辑,最终生成新的逻辑.即:对类的方法添加一些额外的逻辑,生成新的方法逻辑. 静态代理: –>一个原类与一个代理类要一一对应。 –>两者都实现共同的接口或继承相同的抽象类; –>只是在代理类中,实例化原类,在原类方法的前后添加新的逻辑。 接口A 方法M B 继承 A 重写方法M原创 2016-07-26 15:23:55 · 232 阅读 · 0 评论 -
java设计模式——享元模式,单例模式
单态模式与共享模式的区别: 单态模式与共享模式都是让类的实例是唯一的。 但单态模式的实现方式是: 在类的内部.即在构造方法中,或静态的getInstace方法中,进行判断,若实例存在,则直接返回,不进行创建; 共享模式的实现方式是: 每次要用到此实例时,先去此hashtable中获取,若获取为空,则生成实例,且将类的实例放在一人hashtable中,若获取不为空,则直接用此实例。转载 2016-07-26 15:06:45 · 572 阅读 · 0 评论 -
Java设计模式—— 职责链模式
为了避免请求的发送者和接收者之间的耦合关系,使多个接受对象都有机会处理请求。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。要沿着链转发请求,并保证接受者为隐式的,每个链上的对象都有一致的处理请求和访问链上后继者的接口。 请求的处理是链式的,如果被某环节接受了就不往下传,没有则传给下个接受者。 比如皇帝,将军,士兵一起去挑女孩子。皇帝不要就给将军,将军不要就给士兵,女孩子原创 2016-07-26 15:01:11 · 308 阅读 · 0 评论 -
java编程面试——二分查找
题目描述对于一个有序数组,我们通常采用二分查找的方式来定位某一元素,请编写二分查找的算法,在数组中查找指定元素。 给定一个整数数组A及它的大小n,同时给定要查找的元素val,请返回它在数组中的位置(从0开始),若不存在该元素,返回-1。若该元素出现多次,请返回第一次出现的位置。 测试样例: [1,3,5,7,9],5,3 返回:1import java.util.*;public class原创 2016-08-12 15:43:30 · 327 阅读 · 0 评论 -
笔试——首个重复字符
题目描述对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。 给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。 测试样例: “qywyer23tdd”,11 返回:y //基数排序思想import java.util.*;public class FirstRepeat { public ch原创 2016-08-14 14:12:36 · 347 阅读 · 0 评论 -
SPRING 定时
Spring配置文件xmlns加入 xmlns:task=”http://www.springframework.org/schema/task” xsi:schemaLocation中加入 http://www.springframework.org/schema/task http://www.springframework.org/schema/task/sprin转载 2017-09-01 16:58:59 · 152 阅读 · 0 评论 -
HTTP/1.1 415 Unsupported Media Type
httpPost.addHeader("encoding", "UTF-8"); httpPost.addHeader("content-type", "application/json; charset=utf-8");原创 2017-09-18 16:39:30 · 3576 阅读 · 0 评论 -
java微信公众号开发,认证,自定义菜单,消息推送,网页跳转
因为认证问题,所以就先用测试账号,点击开发者工具,进入公众平台测试帐号 域名验证: 1.服务器验证,修改接口配置信息: 注意,接口配置信息中,url为你服务器下验证token合法所在的地址的绝对路径,此处为hello/start在服务器下的绝对路径,token为一个约定的钥匙,服务器验证时,微信会用token加密一段字符串,它会把加密字符串用到的其它参数发送到服务器,用服务器定义的to原创 2017-09-08 16:23:08 · 13989 阅读 · 3 评论 -
设计模式装饰模式
设计模式6原则: 1、开闭原则(Open Close Principle) 开闭原则就是说对扩展开放,对修改关闭。 2、里氏代换原则(Liskov Substitution Principle) 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。 3、依赖倒转原则(Dependence Inversion Principle) 真对接口编程,依赖于抽象而不依赖于具体。 4原创 2017-09-07 11:07:00 · 244 阅读 · 0 评论