自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 Mybatis之逆向工程

需要导入的jar包核心类package springmvc_mybatis;import java.io.File;import java.util.ArrayList;import java.util.List;import org.mybatis.generator.api.MyBatisGenerator;import org.mybatis.generator

2016-09-24 19:14:54 355

原创 Mybatis之Parameters参数

参数(Parameters)前面的所有语句中你所见到的都是简单参数的例子,实际上参数是 MyBatis 非常强大的元素,对于简单的做法,大概 90% 的情况参数都很少,比如:  select id, username, password from users where id = #{id}上面的这个示例说明了一个非常简单的命名参数映射。参数类型被设置为 int,这样

2016-09-21 23:27:59 742

原创 Mybatis之sql元素

sql这个元素可以被用来定义可重用的 SQL 代码段,可以包含在其他语句中。它可以被静态地(在加载参数) 参数化. 不同的属性值通过包含的实例变化. 比如:  ${alias}.id,${alias}.username,${alias}.password 这个 SQL 片段可以被包含在其他语句中,例如: select , from some_table

2016-09-21 23:20:53 1062

原创 Mjybatis之update,delete,insert

insert,update和delete数据变更语句 insert,update 和 delete 的实现非常接近:<insert id="insertAuthor" parameterType="domain.blog.Author" flushCache="true" statementType="PREPARED" keyProperty="" keyCo

2016-09-21 23:18:49 316

原创 Mybatis之select元素

select查询语句是 MyBatis 中最常用的元素之一,光能把数据存到数据库中价值并不大,如果还能重新取出来才有用,多数应用也都是查询 比修改要频繁。对每个插入、更新或删除操作,通常对应多个查询操作。这是 MyBatis 的基本原则之一,也是将焦点和努力放到查询 和结果映射的原因。简单查询的 select 元素是非常简单的。比如:   SELECT * FROM PERSON WH

2016-09-21 23:05:00 2860

原创 Mybatis之映射器(mappers)

既然 MyBatis 的行为已经由上述元素配置完了,我们现在就要定义 SQL 映射语句了。但是首先我们需要告诉 MyBatis 到哪里去找到这些语句。 Java 在自动查找这方面没有提供一个很好的方法,所以最佳的方式是告诉 MyBatis 到哪里去找映射文件。你可以使用相对于类路径的资源引用, 或完全限定资源定位符(包括file:/// 的 URL),或类名和包名等。例如:

2016-09-21 21:08:02 1362

原创 Mybatis之typeAliases

类型别名是为 Java 类型设置一个短的名字。它只和 XML 配置有关,存在的意义仅在于用来减少类完全限定名的冗余。例如: 当这样配置时,Blog可以用在任何使用domain.blog.Blog的地方。也可以指定一个包名,MyBatis 会在包名下面搜索需要的 Java Bean,比如:  每一个在包 domain.blog 中的 Java B

2016-09-21 21:04:49 713

原创 Mybatis之properties属性

这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递。例如: 其中的属性就可以在整个配置文件中使用来替换需要动态配置的属性值。比如: 这个例子中的 username 和 password 将会由 properties 元素中设置的相应值来替换。 driver 和 url 属

2016-09-21 21:01:39 1396

原创 Mybatis之mapper代理方法

开发规范:在mapper.xml中namespace等于mapper接口地址mapper.java接口中的方法名和mapper.xml中statement的id一致mapper.java接口中的方法输入参数类型和mapper.xml中statement的parameterType指定的类型一致。mapper.java接口中的方法返回值类型和mapper.xml中statem

2016-09-21 20:00:50 307

原创 mybatis之dao的开发

DAO接口:package com.itachi.mybatis.dao;import java.util.List;import com.itachi.mybatis.bean.User;public interface UserDao { public abstract User findUserById(int id) throws Exception; publi

2016-09-21 19:55:40 291

原创 Myabtis的CRUD操作

pojo类package com.itachi.mybatis.bean;import java.util.Date;public class User { private int id; private String u

2016-09-21 16:57:39 252

原创 初识Mybatis

原始jdbc存在的问题:数据库连接,使用时就创建,不使用时立即释放,对数据库进行频繁连接和关闭,造成数据库资源浪费,影响数据库性能设想:使用数据库连接池管理数据库连接将sql语句硬编码到java代码中,如果sql语句修改,需要重新编译java代码,不利于系统维护设想:将sql语句配置在xml配置文件中,即使sql语句变化,也不需要对java代码进行重新编译向preparedStatem

2016-09-21 11:37:12 182

原创 java.lang.IllegalArgumentException: node to traverse cannot be null!

发生java.lang.IllegalArgumentException: node to traverse cannot be null!是因为HQL语句出错

2016-09-11 12:56:14 209

原创 Unable to instantiate Action, departmentAction, defined for 'department_list' in namespace '/'depart

Spring和Struts2发生Unable to instantiate Action, departmentAction, defined for 'department_list' in namespace '/'departmentAction此异常,我的情况是因为HQL语句写错了,请检查 HQL语句是否出错

2016-09-11 12:55:34 1753

原创 使用xml实现studentCRUD的小案例

环境:myeclipse 10window 10导入包:dom4j-1.6.1.jarjaxen-1.1-beta-6.jar代码实现: 100 张三 20 101 李四 30 package com.java.xml;import java.io.FileNo

2016-09-09 11:10:36 259

原创 Xpath的使用

使用dom4j支持xpath的操作,可以直接获取到某个元素第一种形式:/AAA/DDD/BBB: 表示一层一层的,AAA下面 DDD下面的BBB第二种形式://BBB: 表示和这个名称相同,表示只要名称是BBB,都得到第三种形式:/*: 所有元素第四种形式:BBB[1]:表示第一个BBB元素 BBB[last()]:表示最后一个BBB元素第五种形式://BBB[@id]

2016-09-09 10:04:51 248

原创 xml的解析三

使用dom4j查询xml dom4j,是一个组织,针对xml解析,提供解析器 dom4jdom4j不是javase的一部分,需要导入dom4j提供jar包案例: 张三 20 李四 30 王五 40 赵六 50

2016-09-09 09:38:42 185

原创 xml的解析二

使用jaxp的sax方式解析xmlsax方式不能实现增删改操作,只能做查询操作 打印出整个文档执行parse方法,第一个参数xml路径,第二个参数是 事件处理器创建一个类,继承事件处理器的类,重写里面的三个方法获取到所有的name元素的值定义一个成员变量 flag= false判断开始方法是否是name元素,如果是name元素,把flag值设

2016-09-08 22:47:09 172

原创 xml的解析一

jaxp是javase的一部分jaxp解析器在jdk的javax.xml.parsers包里面四个类:分别是针对dom和sax解析使用的类dom:DocumentBuilder  : 解析器类这个类是一个抽象类,不能new,此类的实例可以从 DocumentBuilderFactory.newDocumentBuilder() 方法获取一个方法,可以解析

2016-09-08 22:11:13 169

原创 XML的解析

xml是标记型文档xml的解析方式(技术):dom 和 saxdom解析和sax解析区别:dom方式解析根据xml的层级结构在内存中分配一个树形结构,把xml的标签,属性和文本都封装成对象缺点:如果文件过大,造成内存溢出优点:很方便实现增删改操作sax方式解析采用事件驱动,边读边解析,从上到下,一行一行的解析,解析到某一个对象,返

2016-09-08 20:01:25 176

原创 进制转换算法

问题:设计算法,将一个十进制整数转换成二进制输出问题描述:对于任意整数,可以将其分成两个整数之和。第一个整数是能够被除数整除的部分,第二个整数是余数,即number=(number/divisor)*divisor+number mod divisor。先得到的余数是低位的,需要后输出;后得到的余数是高位的,需要先输出。这正好符合了栈结构。代码实现:package com.ja

2016-09-07 22:19:55 225

原创 折半查找

问题解析:折半查找算法要求元素有序(通常是升序)并使用顺序存储。其核心思想是将查找区分成两部分,每次与中间码进行比较,如果等于则直接返回;如果大于则查找右半部分;如果小于则查找左半部分。一次重复这个过程,直到查找成功或失败。代码实现:package com.java.test;import java.util.Arrays;public class Demo10 { pub

2016-09-07 22:15:35 339

原创 水仙花数

问题解析:所谓水仙花数就是一个数等于组成该数各个位的立方和,例如370=3^3+7^3。由于计算量比较小,可以使用简单的循环语句来完成。对于不同位数的数字,可以进行分段讨论。代码实现:package com.java.test;public class Demo9 { public static void main(String[] args) { //计算0~9中的水仙花

2016-09-07 21:42:47 176

原创 百钱百鸡问题

问题描述:假设公鸡5元一只,母鸡3元一只,小鸡一元3只,要求使用100元买100只鸡问题解析:假设购买公鸡x只,母鸡y只,小鸡z只,则存在如下关系x+y+z=100;5x+3y+z/3=100;由此得到y=25-7x/4;z=75+3x/4。因为x,y,z必须是整数,因此x必须能够被4整除。由于y不能是负数,因此x的范围在0~12之间,包括端点代码实现:package com.

2016-09-07 21:28:02 330

原创 韩信点兵问题算法

问题描述:韩信带兵不足百人,3人一行排列多一人,5人一行排列正好,7人一行排列少两人,求士兵的人数?问题解析:假设士兵的人数为x人,则需要(x-1)/3是整数,x/5是整数,(x+2)/7是整数。代码实现如下:package com.java.test;public class Demo7 { public static void main(String[] args)

2016-09-07 21:17:22 8960

原创 Java的for循环应用

编写一个程序输出如下:实现代码:package com.java.demo;public class Demo009 { public static void main(String[] args) { for (int i = 0; i < 6; i++) { for (int j = 0; j <= i; j++) { System.out.print(i

2016-09-07 16:43:21 292

原创 加密算法之MD5与SAH-1

示例代码:package com.java.test;import java.security.MessageDigest;public class Demo3 { public static void main(String[] args) { Demo3 demo = new Demo3(); System.out.println(demo.digestString("

2016-09-07 10:57:57 584

原创 快速排序

算法介绍:设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。值得注意的是,快速排序不是一种稳定的排序算法,也就是说,多个相同的值的相对位置也许会在算法结束时产生变动。一趟快速排序的算法是:设置两个变量i、j,排序开始的时候:i=0,

2016-09-07 07:54:36 175

原创 插入排序

插入排序的基本思路:将要排序的数组分成两部分,每次从后面的数组部分中取出索引最小的数组元素,插入到前面数组部分的适当位置中。通常在开始排序时,将数组的第一个元素作为一组,后面的所有元素被当成另一组。代码实现: public int[] insertionSort(int[] array) { //把第一个元素看做一部分,第二个元素看做另一部分 //从第二部分中依次取出元素插入到第一

2016-09-06 23:44:36 151

原创 选择排序

n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果:①初始状态:无序区为R[1..n],有序区为空。②第1趟排序在无序区R[1..n]中选出关键字最小的记录R[k],将它与无序区的第1个记录R[1]交换,使R[1..1]和R[2..n]分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。......③第i趟排序第i趟排序开始时,当前有序区

2016-09-06 23:31:12 159

原创 冒泡排序

冒泡排序算法的运作如下:(从后往前)比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。代码实现:public int[] bubbleSort(in

2016-09-06 23:12:26 152

原创 使用ajax校验用户是否存在

页面: My JSP 'ajax3.jsp' starting page <!-- -->//创建异步对象function createXMLHttpRequest() { try { return new XMLHttpRequest();//大多数浏览器 } catch (e) { try { ret

2016-09-04 22:09:13 216

原创 用ajax实现省市联动

页面:Insert title here function createXMLHttpRequest() { try { return new XMLHttpRequest(); } catch (e) { alert("您的浏览器不支持"); throw e; } } window.onload = function() { //

2016-09-04 22:07:12 588

原创 ajax发送异步请求的步骤

第一步:得到XMLHttpRequest得到XMLHttpRequest,编写创建XMLHttpRequest对象的函数 function createXMLHttpRequest() { try { return new XMLHttpRequest(); } catch (e) { alert("您的浏览器不支持"); throw e; } }

2016-09-04 21:39:35 1140

原创 Ajax概述

什么是AJAX?AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML)。AJAX还有一个最大的特点就是,当服务器响应时,不用刷新整个浏览器页面,而是可以局部刷新。这一特点给用户的感受是在不知不觉中完成请求和响应过程

2016-09-04 21:34:08 228

转载 equals()和hashCode()区别?

equals():反映的是对象或变量具体的值,即两个对象里面包含的值--可能是对象的引用,也可能是值类型的值。hashCode():计算出对象实例的哈希码,并返回哈希码,又称为散列函数。根类Object的hashCode()方法的计算依赖于对象实例的D(内存地址),故每个Object对象的hashCode都是唯一的;当然,当对象所对应的类重写了hashCode()方法时,结果就截然不同

2016-08-28 23:19:30 327

原创 Caught exception while loading file com/crud/action/LoginAction-validation.xml

Caught exception while loading file com/crud/action/LoginAction-validation.xmlConnection timed out: connect - [unknown location] at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:115)

2016-08-24 22:03:55 1615 2

转载 spring,hiberante之*** is not valid without active transaction

对于提示*** is not valid without active transaction 的错误可以在Hibernate的配置文件中做如下修改org.springframework.orm.hibernate4.SpringSessionContext(Hibernate4)对于Hibernate3.x,可以直接把上述设置删除,就不会报错了,具体原因尚不清

2016-08-24 01:01:38 175

原创 013——struts2的文件上传

struts.xml<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> /success.jsp 上传的Acti

2016-08-08 08:54:29 204

原创 012——Struts2的自定义类型转换器

自定义类型转换器要继承StrutsTypeConverter抽象类,实现如下两个方法(1)public Object converFromString(Map context, String[] values. Class toClass)实现字符串向对象的转换context:转换上下文,可以在里面引用各种对象values:用户输入的字符串toClass:将要被转换成的对象类型

2016-08-07 23:30:53 319 3

编译系统词法分析

编译系统词法分析源代码,滤去注释,代码简洁易懂。

2015-12-13

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除