JAVA
blacksoil55
这个作者很懒,什么都没留下…
展开
-
SpringMVC 错误分析:@Autowi…
在开发SpringMVC中碰到了组件不能@Autowired的错误,以前好像也碰到过,怎么解决的忘记了,今天记在这里。可供碰到同样问题的朋友参考。下面是Controller组件:@Controllerpublic class ManageUserController { privateUserService userService; @Autowired /原创 2015-10-04 23:13:35 · 405 阅读 · 0 评论 -
JAVA悲观锁和乐观锁
锁(locking)业务逻辑的实现过程中,往往需要保证数据访问的排他性。如在金融系统的日终结算处理中,我们希望针对某个cut-off时间点的数据进行处理,而不希望在结算进行过程中(可能是几秒种,也可能是几个小时),数据再发生变化。此时,我们就需要通过一些机制来保证这些数据在某个操作过程中不会被外界修改,这样的机制,在这里,也就是所谓的“锁”,即给我们选定的目标数据上锁,使其无法被其他程序修改。转载 2015-10-27 15:42:37 · 253 阅读 · 0 评论 -
java lock
import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Future;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.Re转载 2015-12-19 15:28:03 · 301 阅读 · 0 评论 -
GSON对java对象的相互转换
简述:testJson_1中 将不同的Java对象转换为json格式文件(String), testJson_2中传入testJson_1中生成的JSON String 参数,反向返回各种Java的对象包括:java的String、List、HashMap、JavaBean, 以及对象内包含list成员的对象转为Json String 并且 Json转回转载 2016-11-14 19:07:59 · 642 阅读 · 0 评论 -
互联网下的分布式事务
由于数据量的巨大,大部分Web应用都需要部署很多个数据库实例。这样,有些用户操作就可能需要去修改多个数据库实例中的数据。传统的解决方法是使用分布式事务保证数据的全局一致性,经典的方法是使用两阶段提交协议。长期以来,分布式事务提供的优雅的全局ACID保证麻醉了应用开发者的心灵,很多人都不敢越雷池一步,想像没有分布式事务的世界会是怎样。如今就如MySQL和PostgreSQL这类面向低端用户的转载 2016-11-26 14:17:36 · 289 阅读 · 0 评论 -
TProfiler 进行jvm调优
JVM 性能调优实战之:使用阿里开源工具 TProfiler 在海量业务代码中精确定位性能代码本文是《JVM 性能调优实战之:一次系统性能瓶颈的寻找过程》 的后续篇,该篇介绍了如何使用 JDK 自身提供的工具进行 JVM 调优将 TPS 由 2.5 提升到 20 (提升了 7 倍),并准确定位系统瓶颈:我们应用里静态对象不是太多、有大量的业务线程在频繁创建一些生命周转载 2016-12-08 17:46:36 · 750 阅读 · 0 评论 -
透彻Linux(Unix)五种IO模型
IO模型用一幅图表示所支持的I/O模型纵向维度是“阻塞(Blocking)”、“非阻塞(Non-blocking)”;横向维度是“同步”、“异步”。总结起来是四种模型同步阻塞、同步非阻塞;异步阻塞、异步非阻塞。《Unix网络编程》中划分出了“第五种”模型——“信号驱动式IO”其实属于异步阻塞类型,这种模型的通知方式有多种多样后面展开说明。同步/异步、阻塞转载 2017-02-03 17:47:23 · 282 阅读 · 0 评论 -
URL编码
本文首先阐述了人们关于统一资源定位符(URL)编码的普遍的误读,其后通过阐明HTTP场景下的URL encoding 来引出我们经常遇到的问题及其解决方案。本文并不特定于某类编程语言,我们在Java环境下阐释问题,最后从Web应用的多个层次描述如何解决URL编码的问题来结尾。 简介 当我们每天上网冲浪时,有一些技术我们无时无刻不在面对。有数据本身(网页),数据的格式转载 2017-02-03 17:48:26 · 308 阅读 · 0 评论 -
上传附件的限制
1. nginx中增加消息体的大小限制[nginx@wgq_idc_web_1_21 logs]$ vim /usr/local/nginx/conf/nginx.confhttp { include mime.types; server_tokens off; sendfile on; tcp_no原创 2017-03-18 16:50:20 · 336 阅读 · 0 评论 -
开发一个SSO服务器
转自:http://www.imooc.com/article/3564本篇我们按照这个思路,亲自动手实现一个轻量级的SSO认证中心。除了认证中心,我们还要改造系统应用的登录登出部分,使之与认证中心交互,共同完成SSO。因此我们的实现分成两大部分,一个是SSO Server,代表认证中心,另一个是SSO Client,代表使用SSO系统应用的登录登出组件。我们给我们实现的这个S原创 2017-07-10 16:31:51 · 1181 阅读 · 0 评论 -
CAS服务集成
转:CAS原理和我们前面自己开发的Nebula基本一致,所有的系统应用都会引导到CAS Server认证中心去登录。登录成功后,认证中心会产生一个票据叫TGT(Ticket Granting Ticket),TGT即代表了用户与认证中心直接的全局会话。TGT存在,表明该用户处于登录状态。TGT并没有放在Session中,也就是说,CAS全局会话的实现并没有直接使用Session机制转载 2017-07-10 16:34:40 · 2041 阅读 · 0 评论 -
OAuth原理
转:http://hzy0769.iteye.com/blog/22969971、OAuth的简述OAuth(Open Authorization,开放授权)是为用户资源的授权定义了一个安全、开放及简单的标准,第三方无需知道用户的账号及密码,就可获取到用户的授权信息,并且这是安全的。 2、名称定义在详细讲解OAuth 2.0之前,需要了解几个专用名词。它们对读懂后面转载 2017-07-12 13:46:04 · 321 阅读 · 0 评论 -
JAVA8 Function及Stream编程
JAVA8引入函数式编程后,增加了灵活性,原来需要通过ScriptEngine调用脚本语言,现在通过Function接口即可。方便了编码,代码也比较简洁些。1. Function 函数式编程的格式如下集中方式: a. 标准方式 (Type1 param1, Type2 param2, ..., TypeN paramN) -> { statment1原创 2017-10-26 21:37:01 · 6239 阅读 · 0 评论 -
Log4j的常规应用
Log4j项目中一直在用,但是由于太基本的一个功能了,有时不太关注而导致一些错误或紊乱,本文通过一个例子说明Log4j的常规用法。1. 新建1个gradle项目,在build.gradle中配置依赖项: compile 'org.slf4j:slf4j-api:1.7.25' compile group: 'org.slf4j', name: 'slf4j-log4j12', ve...原创 2018-02-26 12:22:36 · 230 阅读 · 0 评论 -
GIT常用操作
Git常用场景下的操作原创 2018-08-29 14:47:05 · 156 阅读 · 0 评论 -
Mybatis FoeEach用法
foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。foreach元素的属性主要有 item,index,collection,open,separator,close。item表示集合中每一个元素进行迭代时的别名index指 定一个名字,用于表示在迭代过程中,每次迭代到的位置open表示该语句以什么开始separator表示在每次进行迭代之间以什么符号作为分...原创 2018-11-20 09:43:21 · 250 阅读 · 0 评论 -
软件架构设计模式
软件体系结构通常被称为架构,指可以预制和可重构的软件框架结构。架构尚处在发展期,对于其定义,学术界尚未形成一个统一的意见,而不同角度的视点也会造成软件体系结构的不同理解,以下是一些主流的标准观点。组成派 Mary Shaw在《软件体系结构:一门初露端倪学科的展望》中为“软件架构”给出了非常简明的定义:软件系统的架构将系统描述为计算机组件及组件之间的交互(The architect转载 2015-10-27 15:53:11 · 616 阅读 · 0 评论 -
基于Flash Player插件的在线…
原文地址:Player插件的在线文档浏览原理与实现">基于Flash Player插件的在线文档浏览原理与实现作者:宝码原创文章,转截请注明出处:http://www.5ishare.com 平时上网接触得最多的文档就是HTML了,在这个网页里嵌入的其它文档类型就多不胜数了,比如多媒体类型的文件就不说了,就拿那些直接扔在网上的doc,xls,ppt,rtf,pdf等类型的文档,要正常浏览这转载 2015-10-04 23:12:45 · 304 阅读 · 0 评论 -
Android后台进程与UI进程的交互
当一个程序第一次启动时,Android会同时启动一个对应的主线程(MainThread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处理。所以主线程通常又被叫做UI线程。 比如说从网上获取一个图片,在一个ImageView中将其显示出来,这种涉及到网络操作的程序一般都是需要开一个线程完成网络访问,但是在获得图片原创 2015-10-04 23:13:51 · 748 阅读 · 0 评论 -
Eclipse 字符编码设置。
1、windows->Preferences...打开"首选项"对话框,左侧导航树,导航到general->Workspace,右侧Text file encoding,选择Other,改变为 utf-8(必须小写),以后新建立工程其属性对话框中的Text fileencoding即为UTF-8。 2、windows->Preferences...打开"首选项"对话框,左侧导航树,原创 2015-10-04 23:13:46 · 441 阅读 · 0 评论 -
jsp/servlet session
一,会话跟踪(sessiontracking)技术 会话是客户端发送请求,服务器返回响应的连接时间段。 HTTP是无状态协议:每次都是单独连接,不能维持客户的上下文信息。 会话跟踪技术是用于维持客户端和服务器端通信信息的技术。 三种典型客户端会话跟踪解决方案: 1,Cookie; 2,URL重写; 3,隐藏表单域;二,会话Cookie 用于会话跟踪的Cookie叫做会原创 2015-10-04 23:12:38 · 269 阅读 · 0 评论 -
Hibernate错误分析:update
开发中碰到的一个问题,此处体现了对于Hibernate对象update操作的理解。对于一个object的更新,代码如下: @RequestMapping(value="/{userid}/edit",method=RequestMethod.GET) //@RequiresPermissions("user:edit") publicString editUser原创 2015-10-04 23:13:37 · 341 阅读 · 0 评论 -
Integrate the Shiro&nb…
SpringMVC+Hibernate+Shiro:there is 5 steps to integrate the Shiro framework into theSpringMVC.1. add the jar package: <!-- Shiro--> org.apache.shiro shiro-cor原创 2015-10-04 23:13:41 · 299 阅读 · 0 评论 -
java的几种对象(PO,VO,DAO,BO,POJO…
这篇文章是在浏览网页时不经意间发先的,觉得有是对JAVAdesign的一些概念总结。后来重新搜了一下,发先居然有N多这个文章的链接,所以就随意写一个出处。note:一个原文java的几种对象(PO,VO,DAO,BO,POJO)解释一、PO:persistant object持久对象,可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记原创 2015-10-04 23:11:40 · 280 阅读 · 0 评论 -
Hibernate的一个注释 @Transient
@Transient表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性.如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient,否则,ORM框架默认其注解为@Basic 示例: //根据birth计算出age属性 @Transient public intgetAge() { returngetYear(new Date原创 2015-10-04 23:13:39 · 230 阅读 · 0 评论 -
EalsticSearch相关概念
Elasticsearch有几个核心概念。从一开始理解这些概念会对整个学习过程有莫大的帮助。 接近实时(NRT) Elasticsearch是一个接近实时的搜索平台。这意味着,从索引一个文档直到这个文档能够被搜索到有一个轻微的延迟(通常是1秒)。 集群(cluster) 一个集群就是由一个或多个节点组织在一原创 2015-10-04 23:15:35 · 727 阅读 · 0 评论 -
Eclispe 插件的安装
目前Eclipse已经成为程序员中主流的开发环境,而且数量众多的插件也使得Eclipse的功能变的非常强大和灵活。为Eclipse安装插件有两种方式,自动安装和手工安装。自动安装在菜单 Help-Software update-Find and install 打开插件安装对话框, 选额 Search fornew features to install在对话框就可以选择New Rem原创 2015-10-04 23:11:46 · 277 阅读 · 0 评论 -
Image 加载图像
Image类使用静态方法createImage加载图像,如:Imagezhaoyun=Image.createImage("/zhaoyun.png");此处需要注意的是图像文件的路径。项目的文件目录如下:HelloJAVAME/.......... src/ com/ wushi/ Hello原创 2015-10-04 23:11:51 · 404 阅读 · 0 评论 -
2009年05月27日
一,servlet容器如何同时处理多个请求。Servlet采用多线程来处理多个请求同时访问,Servelet容器维护了一个线程池来服务请求。线程池实际上是等待执行代码的一组线程叫做工作者线程(WorkerThread),Servlet容器使用一个调度线程来管理工作者线程(Dispatcher Thread)。当容器收到一个访问Servlet的请求,调度者线程从线程池中选出一个工作者线程,原创 2015-10-04 23:12:35 · 227 阅读 · 0 评论 -
sun.misc.BASE64Encoder找不…
很好的小技巧原文地址:sun.misc.BASE64Encoder找不到jar包的解决方法(超简单,详解)作者:太空守望者1.右键项目-》属性-》java bulid path-》jreSystem Library-》access rules-》resolution选择accessible,下面填上**点击确定即可!!!一般此方法就可以解决问题!2.在MyEclipse中编写Java转载 2015-10-04 23:13:44 · 220 阅读 · 0 评论 -
Android文件写入的实现
转自:http://hi.baidu.com/yy_danmei/item/56f37d059eaad419ebfe3850首先给大家介绍使用文件如何对数据进行存储,Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的。public void save() { try {原创 2015-10-04 23:13:48 · 1257 阅读 · 0 评论 -
EalsticSearch的head插件
测试二:curl -XPUT 'http://localhost:9200/dept/employee/32' -d '{ "empname": "emp32"}'dept是一个索引并且索引类型是雇员,此时我们正在输入这个索引类型的第31个id。head插件:在浏览器中输入:http://localhost:9200/_plugin/head/ 这里是有关原创 2015-10-04 23:15:38 · 571 阅读 · 0 评论 -
Maven 安装Tomcat插件与Jeety插件
======================================Tomcat通过安装Tomcat插件,可以通过maven自动发布到Tomcat上。 org.codehaus.mojo tomcat-maven-plugin 1.0-beta-1原创 2015-10-04 23:12:57 · 247 阅读 · 0 评论 -
ActiveMq1: Run Stand Alone.
In this scenario, User could send Message in the html page, and thebackend thread would receive the message and do some businesslogic.1. the pom for the ActiveMq jar libs and SpringMVC:原创 2015-10-04 23:13:53 · 279 阅读 · 0 评论 -
Eclipse常用快捷键
Eclipse中10个最有用的快捷键组合<传:http://www.open-open.com/bbs/view/1320934157953>一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合。通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升。 1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间的了。这原创 2015-10-04 23:12:59 · 193 阅读 · 0 评论 -
MAVEN命令行运行方式
Maven命令行的运行方式命令行执行exec指令mvn clean compile 先编译代码mvn exec:java -Dexec.mainClass="com.wushi.MainClass" 通过exec指令执行mainClass#需要传递参数的话,通过-D指令mvn exec:java -Dexec.mainClass="com.wushi.MainClass" -D...原创 2018-12-07 10:21:57 · 6421 阅读 · 0 评论