- 浏览: 462398 次
- 性别:
- 来自: 天津
博客专栏
-
Java基础笔记
浏览量:270718
最新评论
-
谁说我不是会员:
602165057 写道Collection<Objec ...
JAVA基础 之 Collection -
谁说我不是会员:
ljy520zhiyong 写道不是用stringbuilde ...
JAVA基础 之 StringBuffer -
DARKER_ye:
居然还能评论
Java基础 之 File -
DARKER_ye:
DARKER_ye 写道
Java基础 之 File -
DARKER_ye:
Java基础 之 File
文章列表
前言:在写《来!认识一下强大的Annotation》的时候我说大家喜欢我就再写一篇详细介绍和一篇实例文章。
现在我兑现了我的承诺,并且写了2篇实例文章,感谢大家的支持和关注~
阅读此文前建议先看《来!认识一下强大的Annotation》、《Annotation详细介绍》两篇文章。
另一篇实例文章《model自动生成对应crud sql》
1.本例能干什么?
一个通用的将任何类型的object和数据库进行交互
注意是任何类型的object哦,所以是通用型。
保证通用的前提是您的model必须使用DbInfo、Id、columns 三个annotation进行标记
...
前言:在写《来!认识一下强大的Annotation》的时候我说大家喜欢我就再写一篇详细介绍和一篇实例文章。
现在我兑现了我的承诺,并且写了2篇实例文章,感谢大家的支持和关注~
阅读此文前建议先看《来!认识一下强大的Annotation》、《Annotation详细介绍》两篇文章。
另一篇实例《annotation实现数据映射》
1.本例我们做了生么?
根据model的相关信息生成增删改查的sql语句(通用型的哦~)
保证通用的前提是您的model必须使用DbInfo、Id、columns 三个annotation进行标记
2.步骤:
创建三个annotation( ...
本文是答疑文章
有朋友提出 为什么java建立连接 必须要指定数据库?不能像PHP那样连接数据库后再选择数据库吗?
答案是肯定的 能!
下面的例子 我建立连接的时候我并没有指定数据库,之后我使用“use db”选择了数据库,执行一样成功。
package com.cxy.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import javax.sql.rowset.JdbcRowSet;
import com.sun.rowset.JdbcRowSetImpl;
/**
* @aut ...
1.annotation类型(叫法有很多种,官方API这样定义:Annotation Types)
@Documented:被这个类型标识(修饰)的annotation 将会被javadoc或其他文档工具提取
@Inherited:表示具有继承性,被这个类型标识(修饰)的annotation 它的子类将会自动被它标识(修 ...
1.annotation是什么?
注释:存在与否都不会影响程序的运行,当然这个是指不涉及APT(Annotation Processing Tool)的情况下
标记:可以标记类、方法、成员变量(java 8开始可以标记类型)
补充信息:可以具体描述被标记内容的相关信息,提 ...
概述:
1.本文为了代码结构清晰 采用的是try-with-resource结构,请在java7下使用(或者自己改成普通模式)
2.预编译的sql语句存储在PreparedStatement对象中,所以PreparedStatement的执行效率要高于Statement
3.使用占位符(?)的方式,使得重复的结构重复的语句不用重复的编写
例如:Statement下如果我想插入两条记录
stmt.addBatch("insert into t_student values ('11','小明','男')") ...
用腻了SSH了么?回来看看Java基础吧,我将和您一同回顾那些“童年”的基础知识。
一直想弄一个引导页文章将相关的知识搜集到一起,昨天申请专栏成功了,达成心愿。感谢管理员的批准~
欢迎大家访问~
来个大传送门
传送门
Java基础专栏上线啦~ 传送门
概述:
1.DatabaseMetaData:连接对应的数据库信息对象
2.通过con.getMetaData();方法来获得
3.不多说看例子
package com.cxy.jdbc;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
...
注意:
1.本例建议在Java 7 下使用(尽管RowSet从1.4就出现过)
2.由于很多人看到长代码就产生抵触情绪,本例将部分代码截段,使用时直接粘贴到主程序即可
概述:
1.RowSet继承自ResultSet,但是它默认就是可 ...
概述:
1.当一个逻辑执行单元执行一系列的操作时,要么全部执行,要么全部不执行。
不能出现执行一半的情况。例如:取款机吐钱要做的操作:修改卡数据-吐钱
但是 在修改卡数据的时候 取款机故障了~,卡里的钱是扣了 但是没有吐出RMB,这就出大麻烦了
所以修改卡数据和吐钱 要么全执行,要么全不执行,上面的那种情况,取款机需要回滚,将执行过的修改卡数据的操作回到原来的状态。
2.4个特性 ACID(原子性、一致性、隔离性和持久性)
3.jdbc中的事务,只要设置是否自动提交即可
关闭自动提交,开启事务
...
概述:
1.ResultSet:代表查询结果对象
2.类型:
ResultSet.TYPE_FORWARD_ONLY:记录指针只能向前移动
ResultSet.TYPE_SCROLL_INSENSITIVE:记录指针自有移动,数据库数据变动不在ResultSet体现
ResultSet.TYPE_SCROLL_SENSITIVE:记录指针自有移动,数据库数据变动会影响到ResultSet的内容
ResultSet.CONCUR_READ_ONLY:只读的并发模式
ResultSet.CON ...
概述:
1.ResultSetMetaData包含了查询后的结果集的相关信息
2.通过rs.getMetaData();来创建
3.可以写出通用型遍历结果集程序(不知道结果集结构情况下)
步骤:
1.先获得结果集字段或者字段别名
2.遍历封装结果集(可以根据字段自行选择封装哪些数据)
package com.cxy.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedSta ...
概述:
1.用于处理调用存储过程的类
2.它继承自PreparedStatement
3.创建:con.prepareCall("{call 存储过程名(?,?)}");
4.执行:cs.execute();
5.这里只是说明jdbc如何去执行存储过程,关于存储过程相关知识请自己百度
package com.cxy.jdbc;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverMan ...
Statement:执行sql语句的工具接口
概述:
1.本文为了代码结构清晰 采用的是try-with-resource结构,请在java7下使用(或者自己改成传统模式)
2.sql大体的分类
a.查询(select)
b.DDL—数据定义语言(create,alter,drop)
c.DML—数据操纵语言(delete,update,insert)
d.DCL—数据控制语言(grant,revoke)
e.事务控制(commit,rollback)
这是详细 ...
提示:阅读本文之前您至少具备:
1.sql基础知识
2.Java面向对象编程
3.异常的相关知识
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API
学习JDBC必须知道的几个接口和类:
DriverManager:管理jdbc驱动的服务类(官网api解释)
Connection:代表每一次数据库连接
Statement:执行sql语句的工具接口
PreparedStatement:一个预编译的SQL Statement
Re ...