JDBC 实战应用

1、JDBC 的使用顺序为:

1)注册驱动 (只做一次)

2)建立连接(Connection)

3)创建执行SQL的语句(Statement)

4)处理执行结果(ResultSet)

5)释放资源

2、实战应用

1)封装数据库连接字符串

/**

* JDBC配置信息

*/

public class JdbcConfig {

private String driverName;

private String url;

private String userName;

private String password;

public String getDriverName() {

return driverName;

}

public void setDriverName(String driverName) {

this.driverName = driverName;

}

public String getUrl() {

return url;

}

public void setUrl(String url) {

this.url = url;

}

public String getUserName() {

return userName;

}

public void setUserName(String userName) {

this.userName = userName;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

}

2)封装数据库常用操作

public class DbUtil {

/**

* 取得Connection

* @return

*/

public static Connection getConnection(){

Connection conn=null;

try {

//通过读取配置文件获取数据库连接字符串

JdbcConfig jdbcConfig=XmlConfigReader.getInstance().getJdbcConfig();

//加载驱动

Class.forName(jdbcConfig.getDriverName());

String url=jdbcConfig.getUrl();

String userName=jdbcConfig.getUserName();

String password=jdbcConfig.getPassword();

//建立连接

conn = (Connection) DriverManager.getConnection(url, userName, password);

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

return conn;

}

}

3)完成用户的添加操作

public class UserManager {

/**

* 添加用户

*/

public void addUser(User user){

//创建SQL语句

String sql="insert into t_user(user_id,user_name,password,contact_tel,email,create_date)"+

" values(?,?,?,?,?,?)";

Connection conn=null;

PreparedStatement pstmt=null;

try{

//获取Connection

conn=DbUtil.getConnection();

pstmt=conn.prepareStatement(sql);

//设置参数(这种方式可防止sql注入)

pstmt.setString(1, user.getUserId());

pstmt.setString(2, user.getUserName());

pstmt.setString(3, user.getPassword());

pstmt.setString(4, user.getContactTel());

pstmt.setString(5, user.getEmail());

pstmt.setTimestamp(6, new Timestamp(System.currentTimeMillis()));

//执行用户添加操作

pstmt.executeUpdate();

}catch(SQLException e){

e.printStackTrace();

}finally{

DbUtil.close(pstmt);

DbUtil.close(conn);

}

}

}

时间: 2024-08-23 12:42:04

JDBC 实战应用的相关文章

【课程分享】基于plusgantt的项目管理系统实战开发(Spring3+JDBC+RMI的架构、自定义工作流)

课程讲师:张弘 课程分类:Java 适合人群:中级 课时数量:37课时 用到技术:Spring 3+JDBC+RMI的架构.jquery.工作流 涉及项目:项目管理系统 更新程度:完成 QQ  1269532055 本课程是某航空研究所的真正项目的缩影.实际项目价值217万,在课程中,将实际项目的业务进行了缩减,但是主要的技术点全部都讲解到了.课程内容虽然不多,但是麻雀虽小五脏俱全,通过学习本课程,可以掌握到企业信息化办公系统的主要开发方法和设计思路,并且学习强大的自定义工作流中间件的内容,掌握

基于Servlet+JDBC+Bootstrap+MySQL+AJAX权限管理系统项目实战教程

项目简介 权限系统一直以来是我们应用系统不可缺少的一个部分,若每个应用系统都重新对系统的权限进行设计,以满足不同系统用户的需求,将会浪费我们不少宝贵时间,所以花时间来设计一个相对通用的权限系统是很有意义的.     本系统的设计目标是对应用系统的所有资源进行权限控制,比如应用系统的功能菜单.各个界面等进行权限的操控.技术介绍 · Servlet3.0 Servlet 3.0 作为JavaEE6 规范体系中一员,随着JavaEE6规范一起发布.该版本在前一版本(Servlet2.5)的基础上提供了

【Spring实战】—— 16 基于JDBC持久化的事务管理

前面讲解了基于JDBC驱动的Spring的持久化管理,本篇开始则着重介绍下与事务相关的操作. 通过本文你可以了解到: 1 Spring 事务管理的机制 2 基于JDBC持久化的事务管理 首先看一下Spring的事务管理的机制 Spring本身并不提供事务管理,它只是把事务管理提交给事务管理器,而事务管理器则有多种实现,常见的就是基于JDBC的.Hibernate的.JPA以及JTA的. 操作流程可以参考下面的图片: 其实还有好多种类的事务管理器,这里就不一一列举了. 下面看一下在基于JDBC持久

【Spring实战】—— 14 传统的JDBC实现的DAO插入和读取

从这篇开始学习Spring的JDBC,为了了解Spring对于JDBC的作用,先通过JDBC传统的流程,实现一个数据库的插入和读取. 从这篇你可以了解到: 1 传统的JDBC插入和读取的过程. 2 如何通过JDBC连接Mysql 如何通过JDBC连接mysql 首先看一下下面这张图: 应用程序需要通过mysql的驱动程序,才能与数据连接. 驱动程序下载地址:mysql-connector-java-5.1.13-bin.jar 在设计程序的时候,应该采用接口编程的方式,这样能够减小数据操作与应用

【Spring实战】—— 15 Spring JDBC模板使用

前一篇通过对传统的JDBC的使用操作,可以体会到使用的繁琐与复杂,套句话说,是用了20%作了真正的工作,80%作了重复的工作. 那么通过本篇,可以了解如下的内容: 1 如何配置数据源 2 如何在spring中使用模板 3 如何建立数据源的统一的基类 首先看一下如何配置数据源 我们可以使用3种方式配置数据源: 1 JNDI配置数据源 这种做法我是没用过,感觉每次都要去修改配置Tomcat之类的web容器,很是麻烦. 2 使用DBCP数据源连接池 一般情况下都是采用这种方式,对于连接池的实现,也有很

SpringBoot实战(四)之使用JDBC和Spring访问数据库

这里演示的是h2databse示例,所以简单的介绍普及下h2database相关知识 H2数据库是一个开源的关系型数据库. H2是一个嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提供了一个十分方便的web控制台用于操作和管理数据库内容.它还提供兼容模式,可以兼容一些主流的数据库,因此采用H2作为开发期的数据库非常方便. H2数据库特点: 短小精干. Java编写,可使用GCJ和IKVM.NET编译. 同时支持网络版和嵌入式版本,另外还提供了内存版. 有比较好的兼容性,支持相当

MyBatis实战

MyBatis简介 MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录. MyBatis快速上手 开发环境准备 说明,本系列教程所有的代码均是在Intellij Idea 16.02版本的IDE上编写的.

Spring Boot实战与原理分析

1:Spring Boot概述与课程概要介绍 2:Spring4 快速入门 3:Spring4 扩展分析(一) 4:Spring4 扩展分析(二) 5:Spring Boot 快速入门 6:Spring Boot 配置分析(一) 7:Spring Boot 配置分析(二) 8:Spring Boot 自动配置 9:Spring Boot @Enable*注解的工作原理 10:Spring Boot @EnableAutoConfiguration深入分析 11:Spring Boot 事件监听

SaltStack远程控制、配置管理与实战介绍

说明:      本文档仅写了一些基础的SaltStack操作命令,但这些命令也是工作中经常会用到的,像grains.pillar.jinja2功能更强大,但如果不是大批量升级改造的话一般不需用到.更高级的操作请参阅书籍. 1.salt常用命令 salt-key –L 或 salt-key:列出各minion的授权状态 salt 'minion-25.180' sys.doc test.echo: sys.doc用来获取模块的用处和示例用法 salt 'minion-25.180' test.p