- 博客(107)
- 收藏
- 关注
原创 java操作cookie
java Cookie操作创建Cookie// new一个Cookie对象,键值对为参数 Cookie cookie = new Cookie("key", "cookie的value值"); // 如果cookie的值中含有中文时,需要对cookie进行编码,不然会产生乱码,使用URLEncoder.encode("cookie的value值","utf-8");...
2015-06-09 08:45:27 189
原创 https之SSL/TLS协议分析
https就是在http上面加了一层SSL/TLS协议,在http站点上部署SSL/TLS数字证书就变成了https。 信任主机的问题采用https的服务器必须从CA申请一个用于证明服务器用途类型的证书。该证书只有用于对应的服务器的时候,客户端才信任此主机。所以所有的银行系统网站,关键部分应用都是https的。客户通过信任该证书,从而信任了该主机。 不使用SSL/TLS...
2015-05-29 10:22:58 596
eclipse中使用Maven的Jetty进行Debug
有两种方式debug 1、直接点debug ->mvn jetty:run,rpc层的变量无法查看。如果不需要debug rpc层,可以使用该方式debug。 2、使用远程debug,可以查看rpc层的变量值。...
2015-05-27 17:25:47 273
原创 钓鱼基本概念
风线:杆梢到入水的那段水线: 钩子到浮标的那段 半水调镖:双钩离底,调镖。 调目:双钩离底的情况下,铅坠和浮标浮力平衡时,露出的目数。钓目:实际垂钓时,露出水面的那一目。(饵料重量,鱼饵是否触底都会影响到钓目) 记住,浮标是很精确的东西。浮标一有信号,立马提杆刺鱼。 调灵:平目是最灵敏的调钝:目数露出的越多越钝。 台钓:双钩到底,铅坠不到底 ...
2015-05-18 00:14:40 227
原创 solrconfig.xml配置详解
solrconfig.xml配置文件主要定义了solr的一些处理规则,包括索引数据的存放位置,更新,删除,查询的一些规则配置。 1.datadir节点<dataDir>${solr.data.dir:d:/Server/Solr/data}</dataDir>定义了索引数据和日志文件的存放位置 2.luceneMatchVersion...
2015-05-11 15:46:33 270
原创 solr-schema配置详解
schema.xml文件中各个节点的配置极其作用。schema.xml配置文件是用于定义index索引库的结构,有点类似于数据表表的定义。schema.xml文件里面主要定义了索引数据类型,索引字段等信息。主要包括了以下节点1.fieldtype节点fieldtype节点主要用来定义数据类型。<fieldType name="string" sortMissing...
2015-05-11 14:05:42 156
原创 lucene原理介绍
全文检索:是指以文本作为检索对象,找出含有指定词汇的文本。 全文检索功能的开发,要做的有两个方面:1、索引库管理(维护索引库中的数据)2、索引库中进行搜索。而Lucene就是操作索引库的工具。 使用lucene的API操作索引库对索引库的操作可以分为两种:管理与查询。管理索引库使用IndexWriter,从索引库中查询使用IndexSearcher。Luc...
2015-05-08 15:09:38 189
原创 spring声明式事务详解
class A { public void addA() { // something... } public void addB() { // something... } public void addAll() { addA(); addB(); }...
2015-04-21 10:42:47 165
原创 java的json处理器-fastjson
fastjson是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2....
2015-04-16 14:09:56 201
原创 java泛型
推荐命名类型参数K —— 键,比如映射的键。 V —— 值,比如 List 和 Set 的内容,或者 Map 中的值。 E —— 异常类。 T —— 泛型。 泛型不是协变的List<Object> 不是 List<String> 的父类型。对于数组,如果 A 扩展 B,那么 A 的数组也是 B 的数组,并且完全可以在需要 B[] 的地方使用...
2015-04-16 13:10:47 122
原创 Mybatis类型转换javaType jdbcType
java有java的数据类型,数据库有数据库的数据类型,那么在往数据库中插入数据的时候是如何把java类型当做数据库类型插入数据库?在从数据库读取数据的时候又是如何把数据库类型当做java类型来处理呢? mybatis中jdbcType时间类型jdbcType = DATE , 只传入年月日 (数据库中的时间为yyyy-MM-dd)jdbcType = TIME , 只...
2015-04-08 23:22:01 472
原创 springMVC异常处理机制
无论做什么项目,进行异常处理都是非常有必要的,而且你不能把一些只有程序员才能看懂的错误代码抛给用户去看,所以这时候进行统一的异常处理,展现一个比较友好的错误页面就显得很有必要了。 Spring3.0对异常的处理通过HandlerExceptionResolver来实现。HandlerExceptionResolver有4个实现类DefaultHandlerExceptionReso...
2015-04-04 13:50:38 282
原创 web.xml中servlet和filter的url-pattern映射规则
web.xml中url-pattern的3种写法 1、精确匹配:/directory/file1.jsp/directory/file2.jsp/directory/file3.jsp 2、目录匹配:/directory/* 3、扩展匹配:*.jsp 注意:下面的不支持:<url-pattern>/direcotry/*.jsp&...
2015-03-30 22:53:38 396
原创 spring-mvc值传递
在controller中有两种方式,获取前台页面传来的参数页面表单: <form action="user.do" method="post"> 用户名:<input type="text" name="name"/><br/> 年龄:<input type="text" na
2015-03-29 23:04:24 108
原创 springMVC使用jQuery的Ajax
使用@RequestBody 接收前台传递的json 集合数据。首先:从spring3.1开始只要配置了<mvc:annotation-driven /> 就不用再配置其他转换器了。在前台js中创建JSON字符串。如[{name:'11',age:12},{name:'222',age:15}],一定使用JSON.stringify将该json对象转换为json字符串,因...
2015-03-27 16:58:33 166
原创 spring-mvc框架搭建
<servlet> <servlet-name>springMvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-...
2015-03-27 14:41:02 140
原创 velocity布局layout
从VelocityViewServlet到VelocityLayoutServlet 使用Velocity开发web应用时,需要在web.xml中配置一个Velocity提供的VelocityViewServlet接受处理对velocity模板(即vm文件)的forward访问。(MVC,view只是做展示,通过control,转发到view)VelocityViewServlet负责...
2015-03-27 11:06:11 208
原创 unitils使用DatabaseModule和DbUnitModule的数据库测试
通过DbUnit来管理测试数据 @DataSetpublic class UserDAOTest extends UnitilsJUnit4 { @Test public void testFindByName() { User result = userDao.findByName("doe", "john"); asser...
2015-03-26 11:11:15 360
原创 mybatis整合spring
Mybatis 整合Spring根据官方的说法,在ibatis3,也就是Mybatis3问世之前,Spring3的开发工作就已经完成了,所以Spring3中还是没有对Mybatis3的支持。因此由Mybatis社区自己开发了一个Mybatis-Spring用来满足Mybatis用户整合Spring的需求。 通过Mybatis-Spring整合Mybatis跟SpringMa...
2015-03-26 00:19:41 171
原创 用Maven插件生成Mybatis代码
在pom.xml增加以下插件:<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version>
2015-03-24 22:53:56 119
原创 maven私服仓库配置
搭建自己的maven私服,原因有三个:1、maven自己的中央库访问速度比较慢,伟大的墙再一闹腾,会时断时续。2、有些jar包由于版权原因,maven中央仓库没有,比如oracle JDBC驱动。另外也会有一些项目中用到的比较老的开源jar包, 中央仓库也没用。这种情况我们需要把jar包手动上传到私服。3、公司自己开发的jar包并不开源,不能上传到maven中央仓库,只能部署到私服...
2015-03-22 20:35:46 299
原创 Maven插件配置与解析
插件配置就是绑定插件,指定其预定义的参数值,来进一步调整插件目标所执行的任务。可以通过命令行和POM中插件全局配置的形式来配置,不是所有的插件配置都可以通过命令行配置的。 1、命令行插件配置如maven-surefire-plugin插件提供一个maven.test.skip参数、当值为true时会跳过执行测试、命令行执行方式:mvn install –Dmaven.test...
2015-03-22 14:28:40 332
原创 nexus私服搭建
如何建立Nexus私人仓库去nexus的bin目录,安装下nexus install。 然后确认服务是否已经安装完成。http://localhost:8081/nexus/index.html#welcome在浏览器里输入这个连接 帐号是admin密码是admin123 repository的类型:hosted,本地仓库,通常我们会部署自己的构件到这一类型的仓库。...
2015-03-22 12:45:27 101
原创 maven插件使用
用户可以通过两种方式调用Maven插件目标。 maven命令中,带冒号的方式是指定要执行的插件目标。不带冒号的方式是执行生命周期。 第一种方式是将插件目标与生命周期阶段(lifecycle phase)绑定这样用户在命令行只是输入生命周期阶段而已。例如:Maven默认将maven-compiler-plugin插件的compile目标与compile生命周期阶段绑定,...
2015-03-19 16:33:18 370
原创 maven项目继承
项目继承:项目继承是指在pom.xml中设置parent,如下: 这样项目就会从父pom中继承相关的配置,主要有以下配置:properties:自定义属性,后面会讲到dependencies:依赖,在父pom中配置的依赖会被子模块继承。developers and contributors:开发人员信息plugin lists:plugin 列表,包括各个plugin 的...
2015-03-19 15:09:08 275
原创 maven依赖管理
项目的依赖还有一个特性就是依赖管理(Dependency Management)如果我们有一个项目,包含多个子模块,而这些子模块可能都需要用到共同的依赖,如果将这些依赖都放置在项目的pom.xml 中,在遇到依赖升级的时候,我们调整一下项目的pom.xml 里的依赖版本号,就可以让子模块自动升级依赖。依赖管理很简单,就是在dependencis 元素上包一层dependencyMan...
2015-03-19 14:37:23 263
原创 maven传递依赖
Maven传递依赖依赖的传递性。通过依赖设置解决了项目的CLASSPATH 问题,实际情况是我们依赖的项目其本身也是依赖其他的项目的,如我依赖commons-email,而commons-email 需要依赖JavaMail 和JAF,这个时候,Maven 会自动处理这个依赖传递,会将JavaMail 和JAF 也会加入到CLASSPATH 中,通过这种传递地址,可以确保依赖的完整性,...
2015-03-19 14:05:22 150
原创 Ant风格路径表达式
Ant path 匹配原则路径匹配原则(Path Matching) Spring MVC中的路径匹配要比标准的web.xml要灵活的多。默认的策略实现了 org.springframework.util.AntPathMatcher,就像名字提示的那样,路径模式是使用了Apache Ant的样式路径,Apache Ant样式的路径有三种通配符匹配方法(在下面的表格中列出)这些...
2015-03-19 12:58:02 705
原创 系统分层设计
分层开发遵守的原则: 在action中调用多个service好,还是调用一个集成的service好呢? 解决方案:应该是尽量调用一个service,设计业务逻辑组件时你应该对外提供一个完整的服务,比如要注册一个用户,外对应该只提供一个方法,那么验证你注册用户是否存在的逻辑应该在这个服务中去判断,而不应该你在action中先去调用判断用户是否存在的服务,不存在再去调用注册的...
2015-03-14 21:27:13 548
原创 注解-自定义注解原理
注解是代码的附属信息,它遵循一个基本原则:注解不能直接干扰程序代码的运行,无论增加或删除注解,代码都能够正常运行。Java语言解释器会忽略这些注解,而由第三方工具负责对注解进行处理。第三方工具可以利用代码中的注解间接控制程序代码的运行,它们通过Java反射机制读取注解的信息,并根据这些信息更改目标程序的逻辑,而这正是Spring AOP对@AspectJ提供支持所采取的方法。 注解...
2015-03-04 00:32:00 194
原创 正则表达式
正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。 元字符^匹配你要用来查找的字符串的开头,$匹配结尾。这两个代码在验证输入的内容时非常有用,比如一个网站如果要求你填写的QQ号必须为5位到12位数字时,可以使用:^\d{5,12}$。如果不使用^和$的话,对于\d{5,12}而言,使用...
2015-03-03 23:30:47 77
原创 单元测试-原理
单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能把一个很大的值放入一个有序list 中去,然后确认该值出现在list 的尾部。执行单元测试,就是为了证明这段代码的行为和我们期望的一致。 1、它是一种验证行为。程序中的每一项功能都是测...
2015-03-01 00:55:16 1468
原创 java BigDecimal详解
BigDecimal aDouble =new BigDecimal(1.22);System.out.println("construct with a double value: " + aDouble);BigDecimal aString = new BigDecimal("1.22");System.out.println("construct with a String...
2015-02-28 16:58:26 289
原创 Oracle trunc()函数的用法
Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2011-3-18 今天的日期为2011-3-182.select trunc(sysdate, 'mm') from dual --2011-3-1 返回当月第一天.3.se...
2015-02-28 15:52:53 95
原创 java I/O原理详解
计算机外部设备在计算机系统中,除了CPU和内存储,所有的设备和装置称为计算机外部设备(外围设备、I/O设备) 存储设备:用来存放各种信息的设备称为存储设备,例如,软盘、硬盘、光盘和磁带等;I/O设备:用来向计算机输入和输出信息的设备,如键盘、鼠标、显示器、打印机等。 在现在计算机系统中,有些设备既可以做存储设备,也可以做I/O设备,例如,软盘、硬盘等。 I/O管理...
2015-02-28 14:30:31 218
原创 java注释规范
在eclipse中,TODO、FIXME和XXX都会被eclipse的task视图所收集。在项目发布前,检查一下task视图是一个很好的习惯。Window -->Show View --> Tasks TODO: + 说明:如果代码中有该标识,说明在标识处有功能代码待编写,待实现的功能在说明中会简略说明。 FIXME: + 说明:如果代码中有该标识,说明标...
2015-02-27 13:30:04 103
原创 java异常处理设计
如果一个方法throws一个非运行时异常,调用该方法,编译器会要求你强制捕获异常。运行时异常,编译器不强制程序员一定要捕获异常。可以这么记忆:编译器在编译期间无法确定,所以编译器无法给予强制提示。总结:非运行时异常,编译器都会要求强制捕获异常,或者向上抛出异常。 Throwable 是所有 Java 程序中错误处理的父类 ,有两种子类: Error 和 Exception 。...
2015-02-13 15:47:03 115
原创 diamond阿里持久配置
diamond为应用系统提供了获取配置的服务,应用不仅可以在启动时从diamond获取相关的配置,而且可以在运行中对配置数据的变化进行感知并获取变化后的配置数据。 持久配置是指配置数据会持久化到磁盘和数据库中。 易用:客户端使用只需要两行代码,暴露的接口都非常简单,易于理解。1、server的搭建2、发布数据3、diamond发布数据通过手工的方式进行。 ...
2015-02-11 00:38:18 272
原创 spring事务---事务传播属性
手工控制事务Hibernate的事务操作: public void save(){ Session session = sessionFactory.getCurrentSession(); session.beginTransaction(); Info info = new Info("ezbcw"); info.setContent("ezbcw");...
2015-02-06 11:02:54 108
原创 java基本类型二进制详解
public static void main( String[] args ) { // byte System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE); System.out.println("包装类:java.lang.Byte"); System...
2015-02-05 23:53:23 215
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人