java基础之JDBC四:事务简单示例】的更多相关文章

/** * 事务 */ public class Test { public static void main(String[] args) { Connection conn = null; PreparedStatement ps = null; try { //直接用上一篇文章内写好的工具类创建conn conn = JDBCSimpleUtils.getConnection(); String sql1 = "UPDATE users SET psw = ? WHERE uid = ?…
简单工具类: public class JDBCSimpleUtils { /** * 私有构造方法 */ private JDBCSimpleUtils() { } /** * 驱动 */ public static String driver = null; /** * 连接字符串 */ public static String url = null; /** * 用户名 */ public static String user = null; /** * 密码 */ public stat…
多线程案例: 有一个包包的数量为100个,分别从实体店和官网进行售卖.使用多线程的方式,分别打印实体店和官网卖出包包的信息.分别统计官网和实体店各卖出了多少个包包 第一种方法 继承Thread类: public static void main(String[] args) { //两个线程 分别为官网和实体店 MyThread mt1 = new MyThread("官网"); MyThread mt2 = new MyThread("实体店"); mt1.sta…
以下展示的为JAVA使用jdbc连接MYSQL简单示例: import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import com.mysql.jdbc.Connection; import com.mysql.jdbc.Statement; public class MysqlDBManager { // 驱动程序名 private static String DBDRI…
java基础(11) -JDBC jdbc 1.装载驱动 载入跟数据库建立连接的驱动 /* sql server: String className ="com.microsoft.sqlserver.jdbc.SQLServerDriver"; mysql: String className = "com.mysql.jdbc.Driver"; */ Class.forName(className); 2.获取连接 获取数据库服务器的一个开放连接集 /* sql…
java基础解析系列(四)---LinkedHashMap的原理及LRU算法的实现 java基础解析系列(一)---String.StringBuffer.StringBuilder java基础解析系列(二)---Integer java基础解析系列(三)---HashMap 这是我的博客目录,欢迎阅读 实验 遍历HashMap public static void main(String[] args) { Map<String, String> map=new HashMap<St…
自己写一个简单的Map 清浅池塘 程序员,专栏:Java那些事儿唯一作者,咨询前请先点详细资料   130 人赞同了该文章 许多许多年以前,在自学Java的时候,笔者曾经写过一个简单的Map,当年很有成就感,拿出来博大家一笑. Map的实现其实很简单,一个key对应一个value就行 定义一个MyMap类 声明一个Node数组用来存放元素,一个size来记录Map的逻辑长度,看一下Node类,Node类位于MyMap类的内部 该类为内部静态类,只能在MyMap类里访问,定义了一个key,一个va…
前言:记录Java基础知识点,方便熟悉与掌握. 1.面向对象的"六原则一法则" “六原则一法则”:单一职责原则.开闭原则.依赖倒转原则.里氏替换原则.接口隔离原则.合成聚合复用原则和迪米特法则. 参考: https://www.cnblogs.com/qifengshi/p/5709594.html https://blog.csdn.net/sinat_26342009/article/details/46419873 2.使用普通for循环遍历LinkedList速度慢 原因:Li…
一.Sql * plus 常用命令 1.关于登录,连接的几个命令 1) conn[nect] //例  conn system/manager 用法 conn 用户名/密码 @网络服务名 (as sysdba/sysoper) 当特权用户登录的时候,必须带上 as sysdba/sysope 比如 sys用户登录,就必须这么写 conn  sys/aaaaaaa as sysdba 2) show user //当显示当前登录的用户是哪一个 3) disc[onnect] 断开连接 4) exi…
一.final关键字 为什么要使用 final 关键字? 通过继承我们知道,子类可以重写父类的成员变量和方法.final 关键字可以用于修饰父类,父类成员变量和方法,使其内容不可以被更改. 1.被修饰的类,不能被继承.但是其成员变量和方法如果未被final修饰,仍然可以被修改. //final修饰类 final class Finally1 { private int a = 1; public int getA(){ return this.a; } public int setA(int a…
/** * 批处理 * 批处理跟事务不同 只是把一批sql放到一起执行 2条sql是可以一条执行成功 一条执行失败 是不可逆的 */ public class Test { public static void main(String[] args) { Connection conn = null; PreparedStatement ps = null; try { conn = JDBCSimpleUtils.getConnection(); ps = conn.prepareStatem…
目录 1. 常用类 2. JDBC编程步骤 3. 事务处理 4. 数据库连接池 5. JDBC列子代码 6. 使用Apache的JDBC工具类 虽然在平时的开发过程中我们不会直接使JDBC的API来操作数据库,但是JDBC是大多数ORM框架的基础.只有掌握了JDBC的使用才能更好的掌握ORM框架.本篇博客就对JDBC做下介绍,以及使用JDBC操作数据库的一般流程. JDBC(Java数据库连接)是Sun公司提供的一组操作数据库的接口.各个数据库厂商提供具体的数据库驱动实现类.开发者就可以通过统一…
---恢复内容开始--- 一.for循环的掌握  语法格式: for( 初始化语句A   ;  条件判断B  ;  循环后功能语句C){ //循环体D } for的执行流程:   整个for循环结构中的  A 只会执行一次   循环第一次:Aà B(true)àDàC 第二次:      B(true)àDàC 第三次:      B(true)àDàC … 第n次:        B(false)  结束整个循环 举个例子演示一下,for 打印 1-10 1) 回顾下学过的while循环示例…
一.直接使用JDBC开发的问题 1.当表中的列很多时,需要写很长的SQL语句 还需要写大量 setXXX() 设置参数语句 读取数据时还需要写大量setXXXX()设置属性语句 2.非常容易出错,而且不方便修改 如:某个字段需要去掉,就需要调整后续序号 大量时间都花在"搬砖"上面 而且很容易埋下bug,后期测试和修复时间大大增加!!! 3.效率很差,质量不高 解决方法:将容易出错,大量繁琐的代码封装起来. 给程序员提供更加高级API(Application Programming In…
1.前言 Java8之前处理日期一直是Java程序员比较头疼的问题,从Java 8之后,Java里面添加了许多的新特性,其中一个最常见也是最实用的便是日期处理的类——LocalDate.LocalDate是一种更为高效的日期类,比起Date的复杂具有相当高的简洁性,吸取了企业级别的joda.time时间处理的优点,避免了传统的Date和Calendar复合起来计算的难处. 新增的日期常用的用这三个: java.time.LocalDate:只对年月日做出处理 java.time.LocalTim…
Java内存管理:深入Java内存区域 上面的文章对于java的内存管理机制讲的非常细致,在这里我们只是为了便于后面内容的理解,对java内存机制做一个简单的梳理. 程序计数器:当前线程所执行的字节码的行号指示器,虚拟机下一条需要执行的字节码指令,分支.循环.跳转.异常处理.线程恢复等基础功能都需要依赖改变这个计数器的值来完成. 栈:保存局部变量.引用,方法调用结束即被释放.每个方法被执行的时候都会同时创建一个栈帧(Stack Frame)用于存储局部变量表.操作栈.动态链接.方法出口 等信息.…
控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心. 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找.依赖注入应用比较广泛,我们这里只介绍依赖注入. 一.IOC简介 控制反转IOC,它最主要反映的是与传统面向对象(OO)编程的不同.通常我们编程实现某种功能都需要几个对象相互作用,从编程的角度出发,也就是一个主对象要保存其他类型对象的引…
一.下载相应数据库驱动jar包,添加到项目中 二.注册驱动,数据库驱动只加入到classpath中是还不行的,还要在使用的时候注册一下,就像安装驱动软件,只拷贝到硬盘还不行,需要安装一下 DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //其他注册方式,System.setProperty("jdbc.drivers","com.mysql.jdbc.Driver");如果同时注册多个用冒号(:)…
Spring 对 JPA 的支持已经非常强大,开发者只需关心核心业务逻辑的实现代码,无需过多关注 EntityManager 的创建.事务处理等 JPA 相关的处理.Spring Data JPA更是能够根据方法名字自动实现持久层. 目标 这次我们的目标还是实现前面几节的功能,即对Category的数据层操作.完整和的代码结构: 首先添加实体类Category.java Entity @Table(name = "Category") public class Category imp…
接口 一.接口的基本概念 关键字为:Interface,在JAVA编程语言中是一个抽象类型,是抽象方法的集合.也是使用.java文件编写.   二.接口声明 命名规范:与类名的命名规范相同,通常情况下以大写字母 I 开头,与类作于区分.接口的访问修饰符只能使用public或者缺省修饰,不能使用protected和private修饰.   接口中的所有属性只能是公开的静态的常量: public static final 数据类型 属性名 :(public/static/final可以省略)   接…
本文知识点(目录): 1.什么是jdbc     2.jdbc接口的核心API     3.使用JDBC技术连接MySQL数据库的方法    4.使用Statement执行sql语句(DDL.DML.DQL)    5.使用PreparedStatement执行sql语句    6.使用callablestaement执行sql语句,调用存储过程 7.附录(jdbc连接数据库 实操) 1.什么是jdbc 简单的讲就是:使用java代码(程序)发送sql语句的技术,称为jdbc技术. 2.jdbc…
1. JDBC的简介 概述: 就是Java用来操作不同数据库(DBMS)的类库(技术), 本质就是一些类和接口. /* 类: DriverManager 接口: Driver, Connection, Statement, PreparedStatement, ResultSet */ //Java Data Base Connectivity, Java数据库连接(技术). /* 集合: 就是Java用来存储不同类型数据的容器, 本质就是一些类和接口. 接口: Collection, Set,…
1.正则表达式的概述和简单使用 * A:正则表达式(一个字符串,是规则)     * 是指一个用来描述或者匹配一系列符合某个语法规则的字符串的单个字符串.其实就是一种规则.有自己特殊的应用. * B:案例演示     * 需求:校验qq号码.         * 1:要求必须是5-15位数字         * 2:0不能开头         * 3:必须都是数字     * a:非正则表达式实现         * 困难重重      * b:正则表达式实现         * String…
一.maven项目里pom添加jsoup依赖 <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.10.2</version> </dependency> 以抓取CSDN主页的右侧导航栏为例 代码示例: package com.oukele.csdn_demo; import org.jsoup.…
流程控制 /* 控制流程语句之---if 判断语句 格式一: 只适用于一种情况下去使用. if(判断条件){ 符合条件执行的代码; } 格式二:适用于两种情况下去使用 if(判断条件){ 符合条件执行的代码 }else{ 不符合条件执行 的 代码 } ] 格式3: 适用于多种情况使用的 if(判断条件1){ 符合条件1执行的 语句; }else if(判断条件2){ 符合条件2执行 的语句; }else if(判断条件3){ 符合条件3执行 的语句; }else if(判断条件4){ 符合条件4…
序,类的设计是JAVA操作的核心,面对对象思想中一切皆对象. 一.类定义中的变量 静态成员变量,为类所有,称为类变量:只有一份,编译时即分配值,使用关键字static声明. 非静态成员变量,每个实例一份.称为实例变量. 二.类定义中的方法 与变量类似,方法也分为类方法和实例方法. 类方法,拥有关键字static声明,即类还没有实例化之前就可以执行. 实例方法,必须类实例化之后才能使用该方法. 三.如何将实参的值传递给方法 通过使用值传递的机制将所有实参的值传递给方法,具体来说,对于基本类型(in…
四.String public final class String extends Object implements Serializable, Comparable<String>, CharSequence String 类是final类,不能被继承. String 类代表字符串.Java程序中的所有字符串字面值(如“abc”)都作为此类的实例实现. 字符串是常量:它们的值在创建之后不能更改.字符串缓冲区支持可变的字符串.因为 String 对象是不可变的,所以可以共享. public…
1.Runnable对象 启动线程:(new Thread(new MyRunnable()).start() 2.jsp中<%@ page language="java" import="java.util.*" errorPage="error.jsp" isErrorPage="false" %>  改页面不能使用exception对象 3.枚举 enum AccountType { SAVING, FIXE…
数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻烦. 数组的概述 数组是指一组数据的集合,数组中的每个数据被称作元素.在数组中可以存放任意类型的元素,但同一个数组里存放的元素类型必须一致. 数组的定义 格式: 数据类型[] 数组名 = new 数据类型[元素个数或数组长度]; 举例:int[] x = new int[100]; 要点说明 数据类…
一.Java 泛型: Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型. 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数. 假定我们有这样一个需求:写一个排序方法,能够对整型数组.字符串数组甚至其他任何类型的数组进行排序,该如何实现?答案是可以使用 Java 泛型. 使用 Java 泛型的概念,我们可以写一个泛型方法来对一个对象数组排序.然后,调用该泛型方法来对整型数组.浮点数数组…