ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

“21天好习惯”第一期-5

2021-10-27 21:30:54  阅读:161  来源: 互联网

标签:天好 String bookname writer id 第一期 import public 21


JdbcTemplate的配置及使用(c3p0)

 

1.c3p0配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
   <!--  默认配置  -->
   <default-config>
      <!--   连接参数  -->
      <property name="driverClass">com.mysql.jdbc.Driver</property>
      <property name="jdbcUrl">jdbc:mysql://localhost:3308/sakila?serverTimezone=UTC</property>
      <property name="user">root</property>
      <property name="password">123456</property>
      <!--  连接池参数  -->
      <!-- 初始化申请的连接数量 -->
      <property name="initialPoolSize">5</property>
      <!-- 最大的连接数量 -->
      <property name="maxPoolSize">10</property>
      <!-- 超时时间 -->
      <property name="checkoutTimeout">3000</property>
   </default-config>
   <!--c3p0配置1-->
   <named-config name="c3p0">
      <!--   连接参数  -->
      <property name="driverClass">com.mysql.jdbc.Driver</property>
      <property name="jdbcUrl">jdbc:mysql://localhost:3308/sakila?serverTimezone=UTC</property>
      <property name="user">root</property>
      <property name="password">2524151826</property>
      <!--  连接池参数  -->
      <property name="initialPoolSize">5</property>
      <property name="maxPoolSize">8</property>
      <property name="checkoutTimeout">1000</property>
   </named-config>
</c3p0-config>

2.jdbcUtils:

package utils;

import com.mchange.v2.c3p0.ComboPooledDataSource;

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

public class JdbcUtils {
    static ComboPooledDataSource cpds = new ComboPooledDataSource();

    public static Connection getConnection() throws SQLException{
        return cpds.getConnection();
    }

    //关闭操作
    public static void closeConnection(Connection con) throws SQLException{
        if(con!=null){
            con.close();
        }
    }
    public static void closeStatement(Statement st) throws SQLException{
        if(st!=null){
            st.close();
        }
    }
}
public class JDBCutils2 {
    public static DataSource source=new ComboPooledDataSource();

    public static DataSource getSource(){
        return source;
    }
}

3.BookDomain

package cn.edu.jdbctest;


public class BookDomain {
    private String id;
    private String bookname;
    private String writer;
    private int price;

    public BookDomain() {
    }

    public BookDomain(String id, String bookname, String writer, int price) {
        this.id = id;
        this.bookname = bookname;
        this.writer = writer;
        this.price = price;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getBookname() {
        return bookname;
    }

    public void setBookname(String bookname) {
        this.bookname = bookname;
    }

    public String getWriter() {
        return writer;
    }

    public void setWriter(String writer) {
        this.writer = writer;
    }

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "bookDomain{" +
                "id='" + id + '\'' +
                ", bookname='" + bookname + '\'' +
                ", writer='" + writer + '\'' +
                ", price=" + price +
                '}';
    }
}

4.Testdemo1:

package cn.edu.jdbctest;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
 import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.jdbc.core.RowMapper;
 import utils.JDBCutils2;

 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;

public class Demoq {
     static JdbcTemplate jdbcTemplate;

     @BeforeAll
     public static void init(){
         jdbcTemplate =new JdbcTemplate(JDBCutils2.getSource());
     }
     @Test
     public void add(){
         String sql="insert into book(id,bookname,writer,price)\n" +
                 "values('1002','三国演义','不知道','34')";
         jdbcTemplate.update(sql);
     }

     @Test
    public  void add1(){
         Date date=new Date();
         SimpleDateFormat sdf=new SimpleDateFormat("YYYY-MM-dd hh:mm:ss");
         System.out.println(sdf.format(date));
     }

     @Test
    public void selectForMap(){
         String sql="select * from book where id=?";
         Map<String,Object> map=null;

         map=jdbcTemplate.queryForMap(sql,"1000");
         System.out.println(map);
     }
     @Test
    public void queryListBean(){
         String sql="select * from book";
         List<cn.edu.jdbctest.BookDomain> list=null;
         list=jdbcTemplate.query(sql,new BookDomain());
         System.out.println(list);
     }



    public class BookDomain implements RowMapper<cn.edu.jdbctest.BookDomain> {


        @Override
        public cn.edu.jdbctest.BookDomain mapRow(ResultSet rs, int rowNum) throws SQLException {
            BookDomain bookDomain=new BookDomain();
            cn.edu.jdbctest.BookDomain bookDomain1=new cn.edu.jdbctest.BookDomain();
            bookDomain1.setId(rs.getString("id"));
            bookDomain1.setBookname(rs.getString("bookname"));
            return bookDomain1;
        }
    }


}

标签:天好,String,bookname,writer,id,第一期,import,public,21
来源: https://blog.csdn.net/xzyYYDS/article/details/121002390

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有