Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之03.JDBC Statement(2)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介:
• Update
TestStatement.java
package com.michael.jdbc;    

import java.sql.Connection;    
import java.sql.SQLException;    
import java.sql.Statement;    

public  class TestStatement {    
         public  static  void getStatement(){    
                Connection conn =  new ConnectionUtil().openConnection();    
                 try {    
                        Statement stmt = conn.createStatement();    
                        System.out.println(stmt);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                }    
        }    
         public  static  void createTable(){    
                 //DDL数据定义语句    
                Connection conn =  new ConnectionUtil().openConnection();    
                String sql =  "create table CustomerTbl(id int primary key auto_increment,name varchar(20),email varchar(20))";    
                 try {    
                        Statement stmt = conn.createStatement();    
                         //执行SQL语句    
                        stmt.execute(sql);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                } finally{    
                         if(conn!= null)    
                                 try {    
                                        conn.close();    
                                }  catch (SQLException e) {    
                                        conn =  null;    
                                        e.printStackTrace();    
                                }    
                }    
        }    
         //DML数据操作语句--CRUD:create、retrive、update、delete    
         public  static  void testUpdate(){    
                 //DDL数据定义语句    
                Connection conn =  new ConnectionUtil().openConnection();    
                String sql =  "update CustomerTbl set name='Redking' where id=1";    
                 try {    
                        Statement stmt = conn.createStatement();    
                         //执行SQL语句    
                        stmt.executeUpdate(sql);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                } finally{    
                         if(conn!= null)    
                                 try {    
                                        conn.close();    
                                }  catch (SQLException e) {    
                                        conn =  null;    
                                        e.printStackTrace();    
                                }    
                }    
        }    

image
Main.java
package com.michael.main;    

import com.michael.jdbc.ConnectionUtil;    
import com.michael.jdbc.TestStatement;    

public  class Main {    

         /**    
         * @param args    
         */
    
         public  static  void main(String[] args) {    
                ConnectionUtil cu =  new ConnectionUtil();    
                 //第一种方法    
                System.out.println( "第一种方法:"+cu.getConnection());    
                 //第二种方法    
                System.out.println( "第二种方法:"+cu.getConnection( "com.mysql.jdbc.Driver", "jdbc:mysql://localhost:3306/jdbc_db","root","mysqladmin"));    
                //第三种方法    
                System.out.println("第三种方法:"+cu.openConnection());    
                TestStatement.getStatement();    
                //TestStatement.createTable();    
                TestStatement.testUpdate();    
        }    


image
测试结果:
image 
• delete
TestStatement.java
package com.michael.jdbc;    

import java.sql.Connection;    
import java.sql.SQLException;    
import java.sql.Statement;    

public  class TestStatement {    
         public  static  void getStatement(){    
                Connection conn =  new ConnectionUtil().openConnection();    
                 try {    
                        Statement stmt = conn.createStatement();    
                        System.out.println(stmt);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                }    
        }    
         public  static  void createTable(){    
                 //DDL数据定义语句    
                Connection conn =  new ConnectionUtil().openConnection();    
                String sql =  "create table CustomerTbl(id int primary key auto_increment,name varchar(20),email varchar(20))";    
                 try {    
                        Statement stmt = conn.createStatement();    
                         //执行SQL语句    
                        stmt.execute(sql);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                } finally{    
                         if(conn!= null)    
                                 try {    
                                        conn.close();    
                                }  catch (SQLException e) {    
                                        conn =  null;    
                                        e.printStackTrace();    
                                }    
                }    
        }    
         //DML数据操作语句--CRUD:create、retrive、update、delete    
         public  static  void testDelete(){    
                 //DDL数据定义语句    
                Connection conn =  new ConnectionUtil().openConnection();    
                String sql =  "delete from CustomerTbl";    
                 try {    
                        Statement stmt = conn.createStatement();    
                         //执行SQL语句    
                        stmt.executeUpdate(sql);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                } finally{    
                         if(conn!= null)    
                                 try {    
                                        conn.close();    
                                }  catch (SQLException e) {    
                                        conn =  null;    
                                        e.printStackTrace();    
                                }    
                }    
        }    

image
Main.java
package com.michael.main;    

import com.michael.jdbc.ConnectionUtil;    
import com.michael.jdbc.TestStatement;    

public  class Main {    

         /**    
         * @param args    
         */
    
         public  static  void main(String[] args) {    
                ConnectionUtil cu =  new ConnectionUtil();    
                 //第一种方法    
                System.out.println( "第一种方法:"+cu.getConnection());    
                 //第二种方法    
                System.out.println( "第二种方法:"+cu.getConnection( "com.mysql.jdbc.Driver", "jdbc:mysql://localhost:3306/jdbc_db","root","mysqladmin"));    
                //第三种方法    
                System.out.println("第三种方法:"+cu.openConnection());    
                TestStatement.getStatement();    
                //TestStatement.createTable();    
                //TestStatement.testInsert();    
                //TestStatement.testUpdate();    
                TestStatement.testDelete();    
        }    


image
测试结果:
image
增删改三个操作都是使用的executeUpdate()方法
• 使用Statement 执行DML 
–查询 
TestStatement.java
package com.michael.jdbc;    

import java.sql.Connection;    
import java.sql.ResultSet;    
import java.sql.SQLException;    
import java.sql.Statement;    

public  class TestStatement {    
         public  static  void getStatement(){    
                Connection conn =  new ConnectionUtil().openConnection();    
                 try {    
                        Statement stmt = conn.createStatement();    
                        System.out.println(stmt);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                }    
        }    
         public  static  void createTable(){    
                 //DDL数据定义语句    
                Connection conn =  new ConnectionUtil().openConnection();    
                String sql =  "create table CustomerTbl(id int primary key auto_increment,name varchar(20),email varchar(20))";    
                 try {    
                        Statement stmt = conn.createStatement();    
                         //执行SQL语句    
                        stmt.execute(sql);    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                } finally{    
                         if(conn!= null)    
                                 try {    
                                        conn.close();    
                                }  catch (SQLException e) {    
                                        conn =  null;    
                                        e.printStackTrace();    
                                }    
                }    
        }    
         //DML数据操作语句--CRUD:create、retrive、update、delete    
         public  static  void testQuery(){    
                 //DDL数据定义语句    
                Connection conn =  new ConnectionUtil().openConnection();    
                String sql =  "select * from CustomerTbl";    
                 try {    
                        Statement stmt = conn.createStatement();    
                         //执行SQL语句    
                        ResultSet rs = stmt.executeQuery(sql);    
                         while(rs.next()){    
                                 //可以通过列索引    
                                 int id = rs.getInt(1);    
                                 //可以通过列名称    
                                String name = rs.getString( "name");    
                                String email = rs.getString(3);    
                                System.out.println(id+ ":"+name+ ":"+email);    
                        }    
                }  catch (SQLException e) {    
                         // TODO Auto-generated catch block    
                        e.printStackTrace();    
                } finally{    
                         if(conn!= null)    
                                 try {    
                                        conn.close();    
                                }  catch (SQLException e) {    
                                        conn =  null;    
                                        e.printStackTrace();    
                                }    
                }    
        }    

image
Main.java 
package com.michael.main;    

import com.michael.jdbc.ConnectionUtil;    
import com.michael.jdbc.TestStatement;    

public  class Main {    

         /**    
         * @param args    
         */
    
         public  static  void main(String[] args) {    
                ConnectionUtil cu =  new ConnectionUtil();    
                 //第一种方法    
                System.out.println( "第一种方法:"+cu.getConnection());    
                 //第二种方法    
                System.out.println( "第二种方法:"+cu.getConnection( "com.mysql.jdbc.Driver", "jdbc:mysql://localhost:3306/jdbc_db","root","mysqladmin"));    
                //第三种方法    
                System.out.println("第三种方法:"+cu.openConnection());    
                TestStatement.getStatement();    
                //TestStatement.createTable();    
                //TestStatement.testInsert();    
                //TestStatement.testUpdate();    
                //TestStatement.testDelete();    
                TestStatement.testQuery();    
        }    


image 
测试结果:
先在数据库中添加几个数据,我们只测试下查询效果哈~
image
image
#################Michael分割线#########################
Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发技术讨论技术圈: [url]http://g.51cto.com/itedu[/url]
#################Michael分割线#########################








本文转自redking51CTO博客,原文链接:http://blog.51cto.com/redking/151714,如需转载请自行联系原作者

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
2月前
|
安全 Java API
Java SE 与 Java EE 区别解析及应用场景对比
在Java编程世界中,Java SE(Java Standard Edition)和Java EE(Java Enterprise Edition)是两个重要的平台版本,它们各自有着独特的定位和应用场景。理解它们之间的差异,对于开发者选择合适的技术栈进行项目开发至关重要。
239 1
|
5月前
|
设计模式 算法 Java
Java SE 与 Java EE 组件封装使用方法及实践指南
本指南详细介绍了Java SE与Java EE的核心技术使用方法及组件封装策略。涵盖集合框架、文件操作、Servlet、JPA、EJB和RESTful API的使用示例,提供通用工具类与基础组件封装建议,如集合工具类、文件工具类、基础Servlet、实体基类和服务基类等。同时,通过分层架构集成示例展示Servlet、EJB和JPA的协同工作,并总结组件封装的最佳实践,包括单一职责原则、接口抽象、依赖注入、事务管理和异常处理等。适合希望提升代码可维护性和扩展性的开发者参考。
150 0
|
12月前
|
前端开发 Java 数据库连接
你不可不知道的JAVA EE 框架有哪些?
本文介绍了框架的基本概念及其在编程领域的应用,强调了软件框架作为通用、可复用的软件环境的重要性。文章分析了早期Java EE开发中使用JSP+Servlet技术的弊端,包括可维护性差和代码重用性低等问题,并阐述了使用框架的优势,如提高开发效率、增强代码规范性和可维护性及提升软件性能。最后,文中详细描述了几种主流的Java EE框架,包括Spring、Spring MVC、MyBatis、Hibernate和Struts 2,这些框架通过提供强大的功能和支持,显著提升了Java EE应用的开发效率和稳定性。
640 1
|
11月前
|
存储 缓存 前端开发
JavaEE初阶——初识EE(Java诞生背景,CPU详解)
带你从零入门JAVAEE初阶,Java的发展历程认识什么是cpu,cpu的工作原理,cpu是如何进行计算的,cpu的架构,指令集,cpu的核心,如何提升cpu的算力,cpu的指令,,cup的缓存,cpu的流水线
|
12月前
|
Java 数据库连接 API
Spring 框架的介绍(Java EE 学习笔记02)
Spring是一个由Rod Johnson开发的轻量级Java SE/EE一站式开源框架,旨在解决Java EE应用中的多种问题。它采用非侵入式设计,通过IoC和AOP技术简化了Java应用的开发流程,降低了组件间的耦合度,支持事务管理和多种框架的无缝集成,极大提升了开发效率和代码质量。Spring 5引入了响应式编程等新特性,进一步增强了框架的功能性和灵活性。
199 0
|
12月前
|
SQL XML 缓存
java中jsp详解!!!
JSP(Java Server Pages)是一种动态网页技术标准,允许在HTML页面中嵌入Java代码,实现网页逻辑与设计分离。JSP本质上是Servlet的简化,支持跨平台运行。JSP通过内置对象(如request、response、session等)和指令(如page、include、taglib)提供强大的功能,同时利用EL表达式和JSTL标签库简化页面开发。JSP的核心优势在于快速开发和维护Web应用。
467 0
|
缓存 安全 Java
Java服务器端技术:Servlet与JSP的集成与扩展
Java服务器端技术:Servlet与JSP的集成与扩展
149 3
|
存储 缓存 前端开发
Servlet与JSP在Java Web应用中的性能调优策略
Servlet与JSP在Java Web应用中的性能调优策略
173 1
|
前端开发 安全 Java
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
在Java服务器端开发的浩瀚宇宙中,Servlet与JSP犹如两颗璀璨的明星,它们联袂登场,共同编织出动态网站的绚丽篇章。
127 1
|
存储 Java 关系型数据库
基于Servlet和JSP的Java Web应用开发指南
基于Servlet和JSP的Java Web应用开发指南
376 0
下一篇
开通oss服务