Java学习笔记(2)
来源:互联网 发布:苹果狙击镜软件 编辑:程序博客网 时间:2024/06/17 17:39
1.泛型
泛型两点: 1).解决元素存储的安全性问题 2).解决获取数据袁术时,需要强转的问题Map遍历: Map<Obejct a, Obejct b> map = new HashMap<Obejct a, Obejct b>(); Set<Map.Entry<a, b>> set = map.entrySet(); for(Map.Entry<a, b> o : set) o.getKey() + o.getValue();List遍历: List<Obejct a> list = new ArrayList()<>; Iterator<Obejct a> it = list.ierator(); while(it.hasNext()){ it.next(); }泛型方法: public <E> E getE(E e){ return e; }泛型类: public Class A<T>{ private T t; } 不可以在静态中声明泛型通配符:list<A>,list<B>是list<?>的子类,不可向通配符写入元素(null除外),但是可以读static: 在static不依赖对象就可被调用,不能有thisList<Map<String, Obejct>> list遍历: for(Map<String, Obejct> map : list) { for(Map.Entry<String, Obejct> o : map.entrySet()) { } }
2.ResultSetMetaData:在只有一个结果集但不知道有多少列时使用它
1).得到ResultSetMetaData对象: 调用ReultSet的getMetaData()方法2).getColumnCount()可以得到总共列数3).getColumnLabel(int column)获取指定的列的别名(记住是类的别名),索引从1开始 注:rs.next()是纵向,getClumn是横向
3.DAO:Data Access Obejct 数据访问对象
1).访问数据信息的类,包含了增删改查(CRUD)而不包括任何业务相关的信息2).实现了功能的模块化,更有利于代码的维护和升级3).DAO可以子类继承或适用
4.BeanUtils
1.BeanUtils.setProperty(Obejct obj, String name, Obejct value) 让obj的name属性的值设为value2.BeanUtils.getProperty(Obejct obj, String name) 返回obj对象中name属性的值,类型为Object3.环境搭建:logging beanutils4.适用于反射,注:要保证 id 的方法要为 getId 和 setId
5.元数据:描述数据的数据,主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。
DatabaseMetaData 描述数据库的元数据对象/了解
6.PreparedStatement(sql, flag) flag = Statement.RETURN_GENERATED_KEYS
PreparedStatement.getGeneratedKey() 获取新生成主键的对象
GENERATED_KEY 用于存放新生成的主键值
7.关于往数据库存入图片 LOB : 大对象 Large Obejcts
Oracle: 1. BLOB (二进制数据) 2. CLOB (单字节字符数据) 3. NCLOB(多字节字符数据)MySql: 1. TinyBlob 255(字节) 2. BLOB 65K 3. MediumBlob 16M 4. LongBlob 4G插入图片注意事项: 1.插入BLOB类型必须适用PreparedStatement 2.InputStream in = new FileInputStream("xxx"); 3.pre.setBlob(1, in);获取图片注意事项: 1.Blob pic = rs.getBlob(4); 2.InputStream in = pic.getBinaryStream(); 3.OutputStream out = new FileOutputStream("xxx"); 4.byte[] buffer = new byte[1024]; 5.int len = 0; 6.while((len = in.read(buffer)) != -1){ out.write(buffer, 0, len); }
阅读全文
0 0
- Java学习笔记2
- java学习笔记#2
- Java学习笔记2
- java学习笔记(2)
- java学习笔记2
- java学习笔记2
- Java学习笔记(2)
- java学习笔记2
- JAVA学习笔记2
- JAVA学习笔记2
- JAVA学习笔记2
- JAVA学习笔记2
- Java学习笔记2
- java学习笔记2
- java学习笔记2
- Java学习笔记2
- java学习笔记2
- java学习笔记(2)
- scrapy爬虫注意点(2)—— 根据page循环遍历页面参数问题
- unity5 GI全局光照 问题集锦解答
- 曹可爱之最可爱-Vue.js入门(三)模版语法
- 如何给bigdecimal保留小数位
- C#中关闭第一个Form窗口,打开另一个新窗口方法
- Java学习笔记(2)
- 阿里云ECS服务器CentOS7.2安装Python2.7.13
- Skyline 二次开发鼠标获取三维坐标
- 模块API之__module_address
- 剑指offer 变态跳台阶
- 带格式字符串反转
- 佛法解释抗日英雄杀敌之功
- 编程基础
- 线性插值算法