@2druid.properties。框架包和上面实现的内容是一样,这个架包提高了cpu的访问性能。
请看这个包的配置文件
driverClassName=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/studentdb?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBechavior=convertToNull&serverTimeZone=UTC"; username=root password=123456 initialSize=5 maxActive=10 maxWait=3000
package com.db.text; import java.io.IOException; import java.io.InputStream; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.Properties; import javax.sql.DataSource; import org.junit.Test; import com.alibaba.druid.pool.DruidDataSourceFactory; /** * druid框架:用于创建指定数量的连接池 * 加快cpu性能 * @author MZFAITHDREAM * */ public class DruidDemo { @Test public void test1() { //需要输入流 用文件用/ 号开始 InputStream is=DruidDemo.class .getClassLoader().getResourceAsStream("com/db/text/druid.properties"); //创建一个 Properties对象 将输入流的内容》》prProperties Properties properties =new Properties(); try { properties.load(is); DataSource ds=DruidDataSourceFactory.createDataSource(properties); Connection con=ds.getConnection(); if(con!=null) { String sql="insert into tb_students(name,age) VALUES(?,?)"; PreparedStatement ps=con.prepareStatement(sql); ps.setString(1, "你好 DruidDemo"); ps.setInt(2, 42); int count=ps.executeUpdate(); if (count>0) { System.out.println("添加成功"); } } //并不是断开连接,而是将用完的对象放入连接池 con.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
- 第四个构架包:JDBCTemplate数据库插件。
- 使用了四个架构包呢?
- 请看下面的代码。
第一步建立数据库的连接
static { //建立连接 InputStream is=DruidDemo.class .getClassLoader().getResourceAsStream("com/db/text/druid.properties"); Properties properties =new Properties(); try { properties.load(is); DataSource ds=DruidDataSourceFactory.createDataSource(properties); jt=new JdbcTemplate(ds); //并不是断开连接,而是将用完的对象放入连接池 } catch (Exception e) { e.printStackTrace(); } }
第二步对数据库进行
增加一条数据库中的记录
@Test public void test1() { //增加语句 String sql="insert into tb_students(name,age) VALUES(?,?)"; int i= jt.update(sql,"黄小年",45); if(i>0) { System.out.println("数据增加成功"); }
删除一条数据库中的记录
@Test public void text3() { String sql="DELETE FROM `studentdb`.`tb_student` WHERE ` id` = ?"; int i=jt.update(sql ,1); if(i>0) { System.out.println("数据删除成功"); }
修改一条数据库中的记录
@Test public void text2() { String sql="UPDATE `studentdb`.`tb_students` SET `name` = ?WHERE `id` = ?"; int i=jt.update(sql ,"你好二货",1001); if(i>0) { System.out.println("数据修改成功"); }
查询数据库中所有记录
@Test public void text4() { String sql="select *from tb_students where id=?"; Map<String, Object> map = (Map<String, Object>) jt.queryForMap(sql, 2); System.out.println(map); } @Test public void test5() { String sql="select *from tb_students"; List<java.util.Map<String, Object>> olList =jt.queryForList(sql); olList.forEach(map->System.out.println(map)); }
整个增删改查代码
package com.db.text; import java.io.InputStream; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.List; import java.util.Properties; import javax.sql.DataSource; import org.junit.Test; import org.springframework.jdbc.core.JdbcTemplate; import com.alibaba.druid.pool.DruidDataSourceFactory; import com.sun.javafx.collections.MappingChange.Map; public class JDBCTemplateDemo { public static JdbcTemplate jt =null; /** * sping框架 */ static { //建立连接 InputStream is=DruidDemo.class .getClassLoader().getResourceAsStream("com/db/text/druid.properties"); Properties properties =new Properties(); try { properties.load(is); DataSource ds=DruidDataSourceFactory.createDataSource(properties); jt=new JdbcTemplate(ds); //并不是断开连接,而是将用完的对象放入连接池 } catch (Exception e) { e.printStackTrace(); } } @Test public void test1() { //增加语句 String sql="insert into tb_students(name,age) VALUES(?,?)"; int i= jt.update(sql,"黄小年",45); if(i>0) { System.out.println("数据增加成功"); } } //修改数据 @Test public void text2() { String sql="update tb_students set age=? where id=?"; int i=jt.update(sql ,24,23); if(i>0) { System.out.println("数据修改成功"); } } @Test public void text3() { String sql="DELETE FROM `studentdb`.`tb_student` WHERE ` id` = ?"; int i=jt.update(sql ,1); if(i>0) { System.out.println("数据删除成功"); } } @Test public void text4() { String sql="select *from tb_students where id=?"; Map<String, Object> map = (Map<String, Object>) jt.queryForMap(sql, 2); System.out.println(map); } @Test public void test5() { String sql="select *from tb_students"; List<java.util.Map<String, Object>> olList =jt.queryForList(sql); olList.forEach(map->System.out.println(map)); } }
运行效果图展示页面