- 博客(17)
- 收藏
- 关注
原创 springMVC在restful风格的性能优化
目前,restful的接口风格很流行,使用springMVC来搭配restful也是相得益彰。如下,使用@PathVariable注解便可以获取URL上的值。@RequestMapping(value = "restful/{name}", method = RequestMethod.GET) public String restful(@PathVariable String name)
2016-11-23 20:41:39 5998 2
原创 java并发包详解(jdk7)
在此对java并发包做一个大致总结,如有错误,请指正。 juc包的总体结构大致如下 外层框架主要有Lock(ReentrantLock、ReadWriteLock等)、同步器(semaphores等)、阻塞队列(BlockingQueue等)、Executor(线程池)、并发容器(ConcurrentHashMap等)、还有Fork/Join框架; 内层有AQS(AbstractQueue
2016-10-18 13:55:25 8022
原创 基于quartz的动态任务
quartz是一个提供定时任务的框架。任务可以直接配置在配置文件之中或者数据库里,这种无法修改的任务可以叫做静态任务,而这次写的是怎么创建动态任务,可以在项目运行中对定时任务进行创建、修改、删除等操作。 我这里是基于spring框架搭建的quartz系统。spring配置文件中配置了SchedulerFactoryBean工厂类,用于生成Scheduler对象。<bean id="schedule
2016-08-13 14:59:31 807
原创 Activemq学习
java消息服务(JMS)可以提供不同系统之间的消息传递,和rpc有相似之处。 不过rpc一般是进行阻塞调用,导致系统之间高度耦合,其中一个系统的失效会对其他系统造成立竿见影的弱化影响。如果系统间有很多垂直的模块集成在一起,那么模块间相互调用不仅数量众多,而且方向也是错综复杂的。 而消息传送系统规定应用程序之间采用异步通信方式,不需要立即从另一应用程序得到响应,不会出现阻塞现象。一旦消息被发送到
2016-08-13 14:07:59 309
原创 mybatis中configuration的配置问题
在自己的配置中发现,configuration中的配置参数必须遵循一定的顺序从上往下配置,顺序如下: (properties?,settings?,typeAliases?,typeHandlers?,objectFactory?,objectWrapperFactory?,plugins?,environments?,databaseIdProvider?,mappers?) 否则就会报错如下
2016-02-22 23:40:22 1792
原创 mybatis实体类字段名与数据库字段名不匹配问题
mybatis使用的时候如果实体类字段名与数据库字段名不匹配,不匹配的那些字段值将是null。 这个问题现在我所知道有两种解决方法, 1、在*Mapper.xml中修改sql<select id="queryUserById" parameterType="java.lang.Integer" resultType="shjh.springmvc.domain.User"> se
2016-02-21 23:16:19 5538
原创 XFire的webservice应用
XFire是很流行的webService框架和其他Web服务引擎相比,XFire的配置非常简单,可以非常容易地和Spring集成。XFire是codeHaus组织提供的一个开源框架,它构建了POJO和SOA之间的桥梁,主要特性就是支持将POJO通过非常简单的方式发布成Web服务,这种处理方式不仅充分发挥了POJO的作用,简化了Java应用转化为Web服务的步骤和过程,也直接降低了SOA的实现难度,为
2016-01-24 01:32:03 369
原创 quartz 2.x学习使用
Quartz APIQuartz API核心接口有: Scheduler – 与scheduler交互的主要API,是运行job的容器; Job – 你通过scheduler执行任务,你的任务类需要实现的接口; JobDetail – 定义Job的实例; Trigger – 触发Job的执行; JobBuilder – 定义和创建JobDetail实例的接口; TriggerBuilde
2016-01-22 15:41:57 484
原创 win下安装apache和tomcat集群
最近在学习tomcat的东西,源码调试啊,debug启动啊,http请求接收处理啊之类的。还有些改造、性能优化、功能扩展之类的比较复杂,我知道得一点一点来。 前两天网上查找学习终于在win下搭建完成了apache2.2+tomcat8.0.22的集群。 话不多说,记录一下,以后容易温故知新。apache只有处理静态事物的能力,而tomcat的强项就是处理动态的请求,所以apache和tomcat
2015-08-15 12:47:55 418
原创 ubuntu 14.04配置jdk1.7以及tomcat7
ubuntu 14.04界面很漂亮,最近在VMware虚拟机上安装了下,想自己搭建一个apache负载均衡的tomcat集群(集群还没搭建好),把过程和遇到的问题总结一下(很多是百度经验)。首先系统上面空空如也 一、先安装了ssh: 先在窗口中输入 sudo apt-get update,更新软件源,最后会读取软件包列表,键入Y。 Ubuntu缺省安装了openssh-client,所以只安装
2015-08-05 16:23:23 664
原创 偶遇感想
无意中在朋友圈看到朋友的转载,是对稳定话题的讨论。文中提到,作者和朋友A一起,都是军校学生,A毕业后,选择政府分配,领导说要去基层一年,可以留在北京,拥有一个看起来很稳定的稳定的工作,而作者很早就成了名自由职业者。当讨论到为什么非要去基层,留北京时,A说这份工作很稳定,每月都有固定的死工资,还有补贴,每天可以很安稳也有钱拿,而作者每天都需要很努力,一天不努力就没收入。而作者认为,人生,不就是奋斗的
2015-07-20 13:13:37 501
原创 多线程设计模式之Guarded Suspension模式
Guarded Suspension意为保护暂停,就是说把客户端的请求排队,由服务器程序一个一个处理。 当客户端的请求数量超过了服务线程的处理能力,在频繁的客户端请求中,RequestQueue充当了中间缓存,存放未处理的请求,保证了客户请求不丢失,同时也保护了服务线程不会受到大量并发的请求,而导致计算机资源不足。给出一个简单实现。1、请求类Requestpackage javacurrent.g
2015-07-07 19:46:33 499
原创 我的Lucene学习
最近打算学习一下java的开源搜索引擎Lucene,这一系列会记录下自己的学习过程,有不对的地方请多多指教。介绍(来自于百度百科) Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是
2015-06-25 15:46:58 432 1
原创 观察者模式
干完活抽点时间写一下第二个,观察者模式,定义如下:观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。这里用例子说话,某动物园里,饲养员给动物们提供了一份食物报刊,动物们感兴趣的可以自己订阅,订阅后有食物变动都会通知它们。 观察者模式中,被观察者需要实现一个主题抽象(模式中讲的抽象可以是抽象类或者接口),而这里的主题就是食物报刊;而观察者要实
2015-06-25 13:16:38 446 4
原创 策略模式
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-06-24 19:00:51 472 1
原创 设计模式的学习总结
最近好好学习了下设计模式,决定把自己的一些学习内容和心得整理一下。先针对模式本身宽泛的讲一讲,模式的定义:模式是在某情境下,针对某问题的某种解决方案。现在针对这个定义来谈谈吧。情境就是应用某个模式的情况。这种情况应该会是经常出现的,因为模式并不是什么有严格规定死的东西,它是人们开发经验的总结,针对一些经常出现的情况的解决方案。 -------------例如你拥有一个对象的集合
2015-06-24 16:36:47 412
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人