-
Hibernate入门(二)
hibernate持久化类的编写规则hibernate是持久层的的ORM映射框架,专注数据的持久化工作。所谓的持久化就是将内存中的数据永久存储到关系数据库中。持久化类就是指一个Java类与数据库表建立了映射关系,那么这个类称为是持久化类。注意事项 持久化提供无参数构造 成员变量私有,提供公用的get/set方法访问,需要提供属性 持久化类中的属性,应该尽量使用包装类。 持久化类需提供oid与数据库中的主键列对应 不要使用final类修饰class主键生成策略主键的类型自然主键:把...…
-
Hibernate入门
概述什么是hibernate?Hibernate框架是当今主流的Java持久化框架之一,由于具有简单易学、灵活性强、扩展性强等特点,能够大大地简化程序地代码量,提高工作效率。hibernate是一个开放源代码地ORM框架,它对JDBC进行了轻量级地对象封装,使得Java开发人员可以使用面向对象地编程思想来操作数据库。ORM:Object Relational Mapping对象关系映射特点所谓地ORM就是利用描述对象和数据库表之间映射地元数据,自动把Java应用程序中地对象,持久化到关系型...…
-
File类
概述 File类是文件和目录路径名的抽象表示形式 java中把文件或者目录(文件夹)都封装成File对象 我们要去操作硬盘上的文件,或者文件夹只要找到File这个类即可File类的静态成员变量 pathSeparator:与系统有关的路径分隔符。。是一个分号,目录的分割(window中环境变量配置各个路径用分号分割,表示一个完整的路径结束) Linux中是冒号 : separator:与系统有关的默认名称分隔符向右 \ 目录名称分割 Linux /File类的构造函数 F...…
-
JSP
概述jsp全名是 java server pages,他是建立在servlet规范之上的动态网页开发技术。在jsp文件中,html代码与Java代码共同存在,其中,html代码用来实现网页中静态内容的展示,java代码用来实现网页中动态内容的显示,扩展名为.jsp。jsp技术所开发的web应用程序是基于Java的,他可以用一种简捷的方法从Java程序生成web页面,特征如下: 跨平台 业务代码分离 组件重用 预编译运行原理jsp的工作模式是请求/响应模式,客户端手心啊发出http请...…
-
Servlet
Servlet的概述servlet是运行在服务端的Java小程序,是sun公司一套规范,用来处理客户端请求,响应给浏览器的动态资源。Servlet是java web三大组件之一(Servlet、Filter、Listener),且最重要。作用用来处理从客户端发送过来的请求,并对该请求做出响应servlet的任务有: 获取请求数据 处理请求 完成响应实现步骤:1)创建类实现Servlet接口2)覆盖尚未实现的方法—service方法3)在web.xml进行servlet的配置但在实际开...…
-
HTTP协议详解
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的主要特点可概括如下:1.支持客户/服务器模式。2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POS...…
-
JDBC连接池
概述用池来管理connection,这样可以重复使用connection。可以通过池来获取connection对象,使用完connection之后,调用close方法,“归还”给池。方便下次调用。规范常见的连接池:DBCP、C3P0DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar由于...…
-
集合
[TOC]Arraylist集合是Java中提供的一种容器,可以用来存储多个数据。底层采用的数组结构 ArrayList al=new ArrayList();//创建了一个长度为0的Object类型数组 al.add("abc");//底层会创建一个长度为10的Object数组 Object[] obj=new Object[10]//obj[0]="abc"//如果添加的元素的超过10个,底层会开辟一个1.5*10的长度的新数组//把原数组中的元素拷贝到新数组,再把最后一个元素添加到新...…
-
异常
异常Java代码在运行时期发生的问题就是异常。在Java中,把异常信息封装成了一个类。当出现了问题时,就会创建异常类对象并抛出异常相关的信息(如异常出现的位置、原因等)。异常的继承体系Throwable: 它是所有错误与异常的超类(祖宗类) |- Error 错误 |- Exception 编译期异常,进行编译JAVA程序时出现的问题 |- RuntimeException 运行期异常, JAVA程序运行过程中出现的问题运行时期异常的特点: 方法中抛出运行时期异常,方法定义中无需throw...…
-
装饰者模式
装饰者模式定义:动态的将责任附加到对象身上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。 装饰者和被装饰者有相同的超类型 可以用一个或者多个装饰者包装一个对象 在任何需要原始对象(被包装的)的场合,可以用装饰过的对象代替它 装饰者可以在所委托被装饰者的行为之前/之后,加上自己的行为,以达到特定的目的 对象可以在任何时候被装饰,所以可以运行时动态的、不限量地用你喜欢地装饰者来装饰对象涉及设计原则开闭原则:类应该对扩展开放,对修改关闭例子购买饮料时可以添加不同的配料原始代码:...…
-
观察者模式
观察者模式定义定义了对象之间的一对多依赖,这样一来,当一个对象状态改变时,它的所有依赖者都会收到通知并自动更新。观察者依赖于主题,只要主题变化观察者就会被通知。认识观察者模式 报社的业务就是出版报纸 向某家报社订阅包至,只要他们有新报纸出版,就会给你送来。只要你是他们的用户,你就会一直收到新报纸 当你不想看报纸的时候,取消订阅,他们就不会在送新报纸来 只要报社还在运营,就会一直有人向他们订阅或者取消订阅例子:比如有个“天气中心”的具体目标A,专门监听天气变化,而有个显示天气的界面的...…
-
策略模式
策略模式定义定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。使用鸭子的故事为例当设计维护时,为了复用而使用继承结局并不完美,会导致代码在多个子类中重复,运行时的行为不易改变;很难知道所有鸭子的全部行为;改变会牵一发动全身,造成其他鸭子不想要的改变设计原则 找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起 针对接口编程而不是针对实现编程 多用组合,少用继承思考方式把会变化的部分提取出并封装起来,以便以后可以轻易地...…
-
构造方法和this
介绍定义:在创建对象时需要执行的方法。格式:修饰符 构造方法名(参数列表){}体现: 构造方法没有返回值类型。也不需要写返回值。因为它是为创建对象的,对象创建完方法就执行结束 构造方法名称必须和类名称保持一致 构造方法没有具体的返回值默认构造方法每个类会有默认无参的构造方法 一个类中可以有多个构造方法,多个构造方法是以重载的形式存在的 构造方法可以被private修饰,但其他程序就无法创建该类的对象构造方法和一般方法的区别构造方法是在对象创建时就执行了,而且只执行一次;一般方法是...…
-
函数
[TOC]python内置函数range()函数描述:可创建一个整数列表,一般用在 for 循环中语法: range(start, stop[, step])参数说明: start:计数从start开始。默认是从0开始,例如:xrange(5) 等价于 xrange(0, 5) stop:计数到stop结束,但不包括stop。例如:xrange(0, 5) 是 [0, 1, 2, 3, 4] 没有 5 step:步长,默认为1。例如:xrange(0, 5) 等价于 xrange(...…
-
Single Node Setup
Single Node Setup官网地址1. 本地模式2.伪分布式模式********* 本地模式 ********** . grep input output ‘dfs[a-z.]+’ 运行mapreduce的例子,input是当前目录下的文件夹;output是运行输出结果储存的地方,并且在当前目录下没有。’dfs[a-z.]+’是检索的参数 可以看到运行成功后,目录中出现了output。output中有_success文件说明成功。运算结果在part-r-0000...…
-
大数据Hadoop2.x
大数据Hadoop2.x hadoop用来分析存储网路数据 MapReduce:对海量数据的处理、分布式。 思想————> 分而治之,大数据集分为小的数据集,每个数据集进行逻辑业务处理合并统计数据结果(reduce) 运行模式:本地模式和yarn模式 input——>map——>shuffle——>reduce——>output shuffle:将结果进行排序HDFS:存储海量数据 ### 分布式 数据安全性——>副本数据(一般保存3...…
-
list and dictionary
### list 1. 定义:python中的集合是一种容器,可以存储任何数据(在js中一个python的list就是一个array) 2. 例如: 一个空的集合:empty = [ ] 数字集合:nums = [10, 20, 30, 40.4] 字符串集合:str = [‘w’, ‘o’, ‘r’, ‘d’] 混合类型的集合:anything = [10, ‘hi’, ‘python’, 12.4] 一个list的索引就是它的位置,通常索引是以0开...…
-
什么是硬分叉,什么是软分叉,什么是共识?
什么是硬分叉,什么是软分叉,什么是共识? 第0章 引言 比特币是一套软件,对软件代码进行修改升级就经常会涉及到两个概念,一个叫硬分叉,一个叫软分叉。这到底是什么意思呢?社区里最常见的定义说是对共识的修改。但“共识”具体指的是什么,很难理解。我们还是多实际的修改代码层面来看下它们的定义吧。 第1章 比特币的交易格式和交易历史记录 在理解什么是硬分叉和软分叉之前,我们先要知道这两者要修改的东西是什么。比特币交易...…
-
条件判断
条件判断 if 语法: if 条件 : 执行语句1 执行语句2 ........ if,then 语法: if 条件 : 执行语句1 执行语句2 ........(以上代码为if的代码块如果if条件不满足则直接执行下面的代码)执行语句 if,else 语法: if 条件 : 执行语句1 执行语句2 ........else: 执行语句 elif 语法: if 条件 : 执行语句1 ........elif 条件: ...…
-
什么是‘对用户友好’
什么是对用户友好?我们可以把机器和人看作同一个系统: 这个系统有多个模块,包括机器模块和人类模块。 机器模块之间的界面使用通常的程序接口。 人机交互的界面就是机器模块和人类模块之间的接口。 每个界面必须提供一定的抽象,用于防止使用者得到它不该知道的细节。这个使用者可能是机器模块,也可能是人类模块。 抽象使得系统具有可扩展性。因为只要界面不变,模块改动之后,它的使用者完全不用修改。在机器的各个模块间,抽象表现为函数或者方法的类型(type),程序的模块(module)定义,操作系统...…