常用类:lang包不需要导入,其他的包都需要
1.Object:所有类的根类 *对象的标识:hashCode() 对象的信息:toString(),默认情况下返回 对象类型@地址信息
对象是否一样:equals,默认情况下根据地址比较相等。==比较的是对象的地址,而equals在语义上提供相等的含义
重写equals与toString方法,参照Money类
2.String:不可变字符串,类,继承Object
String重写toString,返回字符串的类容。重写了equals根据字符串的内容进行比较
字符串常量"1234"与new String("1234")。常量只有一个,new String()每new一次就一个新的对像\
字符串的不变性,字符串一旦创建,内容不能改变
(1)字符串的常用操作
字符串的长度:length
搜索一个字符串:indexOf()
字符串的字串:substring(3,8)
取得指定位置的字符:charAt(8);
判断字符串以什么开头(结尾):startsWith(),endWith()
改变字符串的大小写,toUpperCase(),toLowerCase()
去掉字符串两边的空格:trim()
替换字符串里面的某些内容:replace("")
(2)分割字符串:
StringBuffer:字符串缓冲,可变字符串,提供对字符串进行更改的方法(其他的方法基本与String类似)
从StringBuffer得到String
追加 append("abc");
在字符串中间插入insert(3,"插入的字符串')
删除字符串 delete(3,6);//不包括6
包装类:提供与字符串之间的转换。Integer是int类型的包装类
Math类:提供数学上的常用操作,注意:里面的方法都是静态的 Random:随即类,产生随机数,另外Math.random()也能产生0~1之间的随机数
日期:Date,SimpleDateFormat(日期格式化) ,日历Calendar
获得控制台输入: Scanner sc = new Scanner(System.in); String str = sc.next();
集合框架
集合框架:概念上分为:Set(数学集合),List(列表),Map(字典)
1.Collection接口,Iterator接口
Set,List继承Collection,采用Iterator进行迭代(参考testCollection)
2.Set:元素不能重复,没有顺序
HashSet:根据hashCode判断对象是否重复(重写equals和hashCode)
reeSet:里面的元素按顺序排列(元素必须实现Comparable接口)
3.List:元素能够重复,有顺序即索引位置,在Collection的基础上提供了按照索引位置进行操作的方法
ArrayList:内部使用数组实现list
LinkedList:在List的基础上提供了对首,尾元素进行操作的方法:入getLast(),addFirst(Object o)
数组,AarryList,LinkeList有区别
4.map:键值对的集合,key不能重复,value可以重复
两次put同一键,后面一个会覆盖前面一个
遍历map的方式:先取得keySet,或者entrySet,再用Set的方式(Iterator)进行遍历
5.泛型:List<Integer> list = new ArrayList<Integer>
存入的元素只能是指定类型,如:<Integer>
取出来不需要强制转换,自动是指定类型,如:<Integer>
List的常用操作类Collections,不同于Collection,提供对List的排序,随机排列,倒序的方法
Arrays使用在数组里面,提供对数组的常用操作,跟Collections有相似之处
Comparable接口 *compareTo()
如果需要进行排序(Collections.sort()),或者放到排序的集合里面(TreeSet,TreeMap), 必须实现Comparable接口
JDBC:java操作数据库的一组API(注意模仿)
1.JDBC驱动方式:
JDBC-ODBC桥驱动(必须先建立数据源,性能比较低,不推荐使用)
JDBC纯驱动:必须把JDBC的jar包加入到构建路径,一般使用JDBC纯驱动
2.JDBC操作数据库的流程
(1)使用Class.forName("")加载驱动程序
(2)使用DriverManager.getConnection()获得Connection(连接)\
(3)使用Connction 创建语句(语句有Statement,PreparedStatement)
(4)执行语句
(5)关闭Connection
3.执行数据库操作在JDBC分为两种
更改数据库:executeUpdate(),返回所影响的数据库的行数。包括insert ,update,delete
执行查询: executeQuery(),返回结果集ResultSet。包括select
4.ResultSet的常用操作:
(1)ResultSet代表查询出的结果集,并且包含游标的概念
(2)ResultSet.getMetaData可以取得每一列的元信息:列名,列的类型,列的长度
(3)rs.next()使得游标往下移一行,并且返回是否还有下一行的boolean值
(4)rs.getXXX可以取得游标当前所指向的行里面的信息
(5)在只进的ResultSet里,取数据不允许倒退
(6)常用遍历结果集的方式:while(rs.next()) { rs.getString(1) }
5.PreparedStatement
(1)可以对sql语句里的占位符进行设值setXXX
(2)执行executeUpdate()时不需要传sql语句,因为在创建 PreparedStatement的时候就指定了sql语句
(3)注意PreparedStatement与Statement
6.使用事务的方式
禁止自动提交:设置Connection.setAutoCommit(false);
在最后手动提交:Connection.commit();
可以在数据操作中捕获异常,一旦捕获异常,使用Connection.rollBack();
7.批处理sql
对于一个语句来将,可以使用addBatch()添加多个sql语句
可以使用executeBatch一次执行所有加入的sql语句
8.建议大家使用Dao这中方式访问数据库
实体类
实体类的DAO
9.建议大家使用DBUtil管理取得连接与关闭连接
1.Object:所有类的根类 *对象的标识:hashCode() 对象的信息:toString(),默认情况下返回 对象类型@地址信息
对象是否一样:equals,默认情况下根据地址比较相等。==比较的是对象的地址,而equals在语义上提供相等的含义
重写equals与toString方法,参照Money类
2.String:不可变字符串,类,继承Object
String重写toString,返回字符串的类容。重写了equals根据字符串的内容进行比较
字符串常量"1234"与new String("1234")。常量只有一个,new String()每new一次就一个新的对像\
字符串的不变性,字符串一旦创建,内容不能改变
(1)字符串的常用操作
字符串的长度:length
搜索一个字符串:indexOf()
字符串的字串:substring(3,8)
取得指定位置的字符:charAt(8);
判断字符串以什么开头(结尾):startsWith(),endWith()
改变字符串的大小写,toUpperCase(),toLowerCase()
去掉字符串两边的空格:trim()
替换字符串里面的某些内容:replace("")
(2)分割字符串:
StringBuffer:字符串缓冲,可变字符串,提供对字符串进行更改的方法(其他的方法基本与String类似)
从StringBuffer得到String
追加 append("abc");
在字符串中间插入insert(3,"插入的字符串')
删除字符串 delete(3,6);//不包括6
包装类:提供与字符串之间的转换。Integer是int类型的包装类
Math类:提供数学上的常用操作,注意:里面的方法都是静态的 Random:随即类,产生随机数,另外Math.random()也能产生0~1之间的随机数
日期:Date,SimpleDateFormat(日期格式化) ,日历Calendar
获得控制台输入: Scanner sc = new Scanner(System.in); String str = sc.next();
集合框架
集合框架:概念上分为:Set(数学集合),List(列表),Map(字典)
1.Collection接口,Iterator接口
Set,List继承Collection,采用Iterator进行迭代(参考testCollection)
2.Set:元素不能重复,没有顺序
HashSet:根据hashCode判断对象是否重复(重写equals和hashCode)
reeSet:里面的元素按顺序排列(元素必须实现Comparable接口)
3.List:元素能够重复,有顺序即索引位置,在Collection的基础上提供了按照索引位置进行操作的方法
ArrayList:内部使用数组实现list
LinkedList:在List的基础上提供了对首,尾元素进行操作的方法:入getLast(),addFirst(Object o)
数组,AarryList,LinkeList有区别
4.map:键值对的集合,key不能重复,value可以重复
两次put同一键,后面一个会覆盖前面一个
遍历map的方式:先取得keySet,或者entrySet,再用Set的方式(Iterator)进行遍历
5.泛型:List<Integer> list = new ArrayList<Integer>
存入的元素只能是指定类型,如:<Integer>
取出来不需要强制转换,自动是指定类型,如:<Integer>
List的常用操作类Collections,不同于Collection,提供对List的排序,随机排列,倒序的方法
Arrays使用在数组里面,提供对数组的常用操作,跟Collections有相似之处
Comparable接口 *compareTo()
如果需要进行排序(Collections.sort()),或者放到排序的集合里面(TreeSet,TreeMap), 必须实现Comparable接口
JDBC:java操作数据库的一组API(注意模仿)
1.JDBC驱动方式:
JDBC-ODBC桥驱动(必须先建立数据源,性能比较低,不推荐使用)
JDBC纯驱动:必须把JDBC的jar包加入到构建路径,一般使用JDBC纯驱动
2.JDBC操作数据库的流程
(1)使用Class.forName("")加载驱动程序
(2)使用DriverManager.getConnection()获得Connection(连接)\
(3)使用Connction 创建语句(语句有Statement,PreparedStatement)
(4)执行语句
(5)关闭Connection
3.执行数据库操作在JDBC分为两种
更改数据库:executeUpdate(),返回所影响的数据库的行数。包括insert ,update,delete
执行查询: executeQuery(),返回结果集ResultSet。包括select
4.ResultSet的常用操作:
(1)ResultSet代表查询出的结果集,并且包含游标的概念
(2)ResultSet.getMetaData可以取得每一列的元信息:列名,列的类型,列的长度
(3)rs.next()使得游标往下移一行,并且返回是否还有下一行的boolean值
(4)rs.getXXX可以取得游标当前所指向的行里面的信息
(5)在只进的ResultSet里,取数据不允许倒退
(6)常用遍历结果集的方式:while(rs.next()) { rs.getString(1) }
5.PreparedStatement
(1)可以对sql语句里的占位符进行设值setXXX
(2)执行executeUpdate()时不需要传sql语句,因为在创建 PreparedStatement的时候就指定了sql语句
(3)注意PreparedStatement与Statement
6.使用事务的方式
禁止自动提交:设置Connection.setAutoCommit(false);
在最后手动提交:Connection.commit();
可以在数据操作中捕获异常,一旦捕获异常,使用Connection.rollBack();
7.批处理sql
对于一个语句来将,可以使用addBatch()添加多个sql语句
可以使用executeBatch一次执行所有加入的sql语句
8.建议大家使用Dao这中方式访问数据库
实体类
实体类的DAO
9.建议大家使用DBUtil管理取得连接与关闭连接