JDBC应用实例
来源:互联网 发布:mac系统使用视频教程 编辑:程序博客网 时间:2024/06/05 01:10
本次实例使用SQLite3数据库,JDBC驱动是sqlite-jdbc-3.14.2.jar
创建数据库StudentManageSystem.db,创建表Student
创建Student类
package cjx913;public class Student {private int id;private String name;public Student() {super();}public Student(int id, String name) {super();this.id = id;this.name = name;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "Student [id=" + id + ", name=" + name + "]";}}
创建test类
package cjx913;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;import java.util.List;public class test {/** * 使用SQLite数据库 */private static String sqlDriver = "org.sqlite.JDBC" ;private static Connection conn = null;private static String url = "jdbc:sqlite:E:/SQLite3/StudentManageSystem.db";/** * 使用Oracle数据库 * String sqlDriver = "oracle.jdbc.driver.OracleDriver" ;// 加载Oracle驱动程序 * String url = "jdbc:oracle:thin:@" + "host:port:databaseName"; // 连接使用的url * String user = "your database userName"; // 数据库用户名 * String password = "your database password"; // 密码 * conn = DriverManager.getConnection(url, user, password);// 获取连接 * *//** * 使用MySQL数据库 * String sqlDriver = "com.mysql.jdbc.Driver" ; * String url = "jdbc:mysql://host:port:databaseName"; * String username = "your database userName"; * String password = "your database password"; */public static void main(String[] args) {List<Student> list = fetchData();for(Student e:list){System.out.println(e);}Student stu = login(2,"b");if(stu!=null){System.out.println("logined succeed"+"\n当前登录的用户是:"+stu.getName());}else{System.out.println("logined failed");}//System.out.println(stu);//register(6, "f");//register(7, "g");}public static void register(int id,String name){try {Class.forName(sqlDriver);conn = DriverManager.getConnection(url);//用Oracle数据库和MySQL数据库有用户和密码要输入PreparedStatement ps = conn.prepareStatement("INSERT INTO Student VALUES(?,?)");ps.setInt(1, id);ps.setString(2, name);ps.executeUpdate();} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}finally{if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}}public static Student login(int id,String name){Student student = null;try {Class.forName(sqlDriver);conn = DriverManager.getConnection(url);PreparedStatement ps = conn.prepareStatement("SELECT * FROM Student WHERE id=? AND name=?");ps.setInt(1, id);ps.setString(2, name);ResultSet rs = ps.executeQuery();if(rs.next()){student = new Student(rs.getInt(1), rs.getString(2));}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}finally{if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}return student;}public static List<Student> fetchData() {List<Student> list = new ArrayList<Student>();Student student = null;try {Class.forName(sqlDriver);conn = DriverManager.getConnection(url);Statement sm = conn.createStatement();String sel = "SELECT * FROM Student";ResultSet rs = sm.executeQuery(sel);while (rs.next()) {student = new Student(rs.getInt(1), rs.getString(2));list.add(student);}} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} finally {if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}return list;}}
sqlite-jdbc-3.14.2.jar导入到工程库中
最终运行结果
阅读全文
0 0
- jdbc 应用实例
- JDBC应用实例
- JDBC初级应用实例(一)
- JDBC初级应用实例(二)
- JDBC初级应用实例(一)
- JDBC初级应用实例(二)
- 新手上路:JDBC初级应用实例(二)
- 新手上路:JDBC初级应用实例(一)
- 新手上路:JDBC初级应用实例(一)
- JDBC通用查询经典实例(应用)
- Spring JDBC原理与应用实例讲解
- jdbc实例
- JDBC实例
- JDBC接入ACCESS实例
- Jdbc 连接数据库 实例
- JDBC 配置连接实例
- JDBC实例详解
- JDBC编程步骤实例
- JavaScript&&PHP常用函数对比
- 从Paxos到ZooKeeper-分布式架构
- 贪心:普里姆算法(最小生成树)
- Java IO
- Regularization(正则化)与Dropout
- JDBC应用实例
- 自学git 常用git(一)
- 如何在 Azure 中的经典 Windows 虚拟机上设置终结点
- 商品列表页面(模板)
- Leetcode题解-24. Swap Nodes in Pairs
- 解决nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
- 283. Move Zeroes
- Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: "/data/app/com.google.android.webview-2/li
- Linux安装配置memcached